diff --git a/restconf/bin/bin b/restconf/bin/bin
new file mode 100755
index 0000000000000000000000000000000000000000..ad8555abadb6dd565b0933b721f90361748f1989
Binary files /dev/null and b/restconf/bin/bin differ
diff --git a/tapi/resources/MCP-Swagger-4.0.json b/tapi/resources/MCP-Swagger-4.0.json
deleted file mode 100644
index 0ce658c19adbd54a192e1bd826806229c2ad7b60..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP-Swagger-4.0.json
+++ /dev/null
@@ -1 +0,0 @@
-[{"value": "MCP_4.0.0_alarms.json", "label": "Alarms"}, {"value": "MCP_4.0.0_api_authorization..json", "label": "API authorization."}, {"value": "MCP_4.0.0_asset_manager.json", "label": "Asset manager"}, {"value": "MCP_4.0.0_backup_service.json", "label": "Backup Service"}, {"value": "MCP_4.0.0_blueplanet_upgrade_service_rest_api.json", "label": "BluePlanet Upgrade Service REST API"}, {"value": "MCP_4.0.0_commissioning.json", "label": "Commissioning"}, {"value": "MCP_4.0.0_configure_equipment_planning_and_provisioning_properties.json", "label": "Configure Equipment Planning and Provisioning Properties"}, {"value": "MCP_4.0.0_correlator_engine.json", "label": "Correlator Engine"}, {"value": "MCP_4.0.0_device_cut-through.json", "label": "Device Cut-Through"}, {"value": "MCP_4.0.0_equipment.json", "label": "Equipment"}, {"value": "MCP_4.0.0_equipment_and_topology_planning.json", "label": "Equipment and Topology Planning"}, {"value": "MCP_4.0.0_equipment_groups.json", "label": "Equipment groups"}, {"value": "MCP_4.0.0_equipment_holders.json", "label": "Equipment holders"}, {"value": "MCP_4.0.0_equipment_planning_and_provisioning.json", "label": "Equipment planning and provisioning"}, {"value": "MCP_4.0.0_geographic_redundancy.json", "label": "Geographic Redundancy"}, {"value": "MCP_4.0.0_global_config_service.json", "label": "Global Config Service"}, {"value": "MCP_4.0.0_groups.json", "label": "Groups"}, {"value": "MCP_4.0.0_inventory_search.json", "label": "Inventory Search"}, {"value": "MCP_4.0.0_market.json", "label": "Market"}, {"value": "MCP_4.0.0_network_element_configuration.json", "label": "Network element configuration"}, {"value": "MCP_4.0.0_network_element_connection_profiles.json", "label": "Network element connection profiles"}, {"value": "MCP_4.0.0_network_element_enrollment_(management_sessions).json", "label": "Network element enrollment (management sessions)"}, {"value": "MCP_4.0.0_network_elements_(constructs).json", "label": "Network elements (constructs)"}, {"value": "MCP_4.0.0_network_elements_location_(physical).json", "label": "Network elements location (physical)"}, {"value": "MCP_4.0.0_open_roadm_nbi.json", "label": "Open ROADM NBI"}, {"value": "MCP_4.0.0_otdr.json", "label": "OTDR"}, {"value": "MCP_4.0.0_performance_gauge.json", "label": "Performance Gauge"}, {"value": "MCP_4.0.0_performance_metrics.json", "label": "Performance metrics"}, {"value": "MCP_4.0.0_pm_processor.json", "label": "PM Processor"}, {"value": "MCP_4.0.0_policy_manager.json", "label": "Policy manager"}, {"value": "MCP_4.0.0_port_inventory_(tpes).json", "label": "Port inventory (TPEs)"}, {"value": "MCP_4.0.0_project_management.json", "label": "Project Management"}, {"value": "MCP_4.0.0_reporting.json", "label": "Reporting"}, {"value": "MCP_4.0.0_resiliency_controller.json", "label": "Resiliency Controller"}, {"value": "MCP_4.0.0_resource_adapter_controller_interfaces_(ractrl).json", "label": "Resource Adapter Controller Interfaces (ractrl)"}, {"value": "MCP_4.0.0_service_provisioning_(cd_fixed).json", "label": "Service provisioning (CD fixed)"}, {"value": "MCP_4.0.0_service_provisioning_(flex).json", "label": "Service provisioning (flex)"}, {"value": "MCP_4.0.0_service_topology_(servicetrails).json", "label": "Service Topology (ServiceTrails)"}, {"value": "MCP_4.0.0_service_topology_(tapi).json", "label": "Service Topology (TAPI)"}, {"value": "MCP_4.0.0_services_inventory_(fres).json", "label": "Services inventory (FREs)"}, {"value": "MCP_4.0.0_sftp_service.json", "label": "Sftp Service"}, {"value": "MCP_4.0.0_shelf_level_view.json", "label": "Shelf level view"}, {"value": "MCP_4.0.0_srlg.json", "label": "SRLG"}, {"value": "MCP_4.0.0_submarine.json", "label": "Submarine"}, {"value": "MCP_4.0.0_test_and_diagnostics.json", "label": "Test and diagnostics"}, {"value": "MCP_4.0.0_topic_management.json", "label": "Topic Management"}, {"value": "MCP_4.0.0_viability.json", "label": "Viability"}, {"value": "MCP_4.0.0_watcher.json", "label": "Watcher"}]
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_alarms.json b/tapi/resources/MCP_4.0.0_alarms.json
deleted file mode 100644
index dae5fdab2f2ad67f643d085b0a930029a57399cf..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_alarms.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Specification for retrieving and modifying Alarms", "title": "Alarms"}, "paths": {"/nsa/api/v1/alarms/filter/activeAlarms": {"get": {"responses": {"200": {"description": "Successfully retrieved filtered list of alarms", "schema": {"$ref": "#/definitions/ActiveAlarms"}}, "500": {"description": "Search on alarms failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of active Alarms returned in JSON format.", "parameters": [{"description": "Severity values as a comma separated list. Example: CRITICAL, MAJOR, MINOR, WARNING", "required": false, "type": "string", "name": "severity", "in": "query"}, {"description": "Service Affecting values as a comma separated list. Example: SERVICE_AFFECTING, NON_SERVICE_AFFECTING", "required": false, "type": "string", "name": "serviceAffecting", "in": "query"}, {"description": "Device type values as a comma separated list. Example: OPENSTACK, CN6500, NUAGE", "required": false, "type": "string", "name": "deviceType", "in": "query"}, {"description": "Acknowledgment state values as a comma separated list.Example: ACKNOWLEDGED, NOT_ACKNOWLEDGED", "required": false, "type": "string", "name": "acknowledgeState", "in": "query"}, {"description": "Key text to be present in the supported alarm fields. Supported fields include: condition-severity, node-name, resource, acknowledge-state, native-condition-type, and additional-text. Several operators are available including '+' (AND), '|' (OR), '-' (negate).", "required": false, "type": "string", "name": "keytext", "in": "query"}, {"description": "Comma separated last raised time range in format: yyyy-MM-ddTHH:mm:ss.SSS. Example: 1900-01-01T00:00:00.000,2999-12-31T23:59:59.999", "required": false, "type": "string", "name": "range", "in": "query"}, {"description": "Alarm attribute that the response will be sorted on, such as raiseTime, either in ascending or descending order. Example: last-raise-time:DESC", "required": false, "type": "string", "name": "sorting", "in": "query"}, {"description": "Offset for the next page of results. Example: 50", "default": "0", "required": false, "in": "query", "type": "string", "name": "offset"}, {"description": "Limit of the number of alarms present in a page.", "default": "500", "required": false, "in": "query", "type": "string", "name": "pageSize"}], "produces": ["application/json"], "deprecated": true, "tags": ["Search and filter alarms (version 1)"], "summary": "Search/Filter active Alarms on the system.", "operationId": "searchActiveAlarms"}}, "/nsa/api/v2_0/alarms/{Id}/force-clear/{sequenceId}": {"post": {"responses": {"404": {"description": "Alarm not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully force cleared alarm"}, "500": {"description": "Clearing a specific active alarm failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Never use this REST API unless you have no other option.", "parameters": [{"description": "Identifier of the alarm to be marked as _cleared_.", "required": true, "type": "string", "name": "Id", "in": "path"}, {"description": "The alarm's last raise time in milliseconds.", "required": true, "type": "string", "name": "sequenceId", "in": "path"}], "produces": ["application/json"], "tags": ["Retrieve and modify alarms (version 2)"], "summary": "Force clear an active alarm based on its identifier (irrespective of its clearable flag).", "operationId": "forceClearAlarm"}}, "/nsa/api/v1/alarms/{Id}/unacknowledge": {"post": {"responses": {"404": {"description": "Alarm not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully un-acknowledged alarm"}, "500": {"description": "Un-acknowledging a specific active alarm failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Only active Alarms can be unacknowledged.", "parameters": [{"description": "Identifier of the alarm to be marked as _unacknowledged_.", "required": true, "type": "string", "name": "Id", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["Retrieve and modify alarms (version 1)"], "summary": "Unacknowledge an active Alarm based on its identifier.", "operationId": "unacknowledgeAlarmV1"}}, "/nsa/api/v1/alarms/historicalDataRetentionDays": {"get": {"responses": {"200": {"description": "Successfully return the configured historical data retention days", "schema": {"$ref": "#/definitions/RetentionDaysRO"}}, "500": {"description": "Failed to get the historical data retention days (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "deprecated": true, "description": "", "tags": ["Retrieve and modify alarms (version 1)"], "summary": "Get configuration of historical data retention days.", "operationId": "getHistoricalDataRetentionDays"}}, "/nsa/api/v1/alarms/{Id}/acknowledge": {"post": {"responses": {"404": {"description": "Alarm not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully acknowledged alarm"}, "500": {"description": "Acknowledging a specific active alarm failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Only active Alarms can be acknowledged.", "parameters": [{"description": "Identifier of the alarm to be marked as _acknowledged_.", "required": true, "type": "string", "name": "Id", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["Retrieve and modify alarms (version 1)"], "summary": "Acknowledge an active Alarm based on its identifier.", "operationId": "acknowledgeAlarmV1"}}, "/nsa/api/v2_0/alarms/filter/getCorrelatedAlarmsByService": {"get": {"responses": {"200": {"description": "Successfully retrieved filtered list of correlated alarms", "schema": {"$ref": "#/definitions/FilteredAlarms"}}, "500": {"description": "Search on alarms failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of filtered correlated alarms returned in JSON format.", "parameters": [{"description": "service Id", "required": true, "type": "string", "name": "serviceId", "in": "query"}, {"description": "Severity values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _CRITICAL, MAJOR, MINOR, WARNING_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[severity][]"}, {"description": "Service affecting values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _SERVICE_AFFECTING, NON_SERVICE_AFFECTING_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[serviceAffecting][]"}, {"description": "Device type values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _6500, OPENSTACK, NUAGE_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[deviceType][]"}, {"description": "Acknowledgment state values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _ACKNOWLEDGED, NOT_ACKNOWLEDGED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[acknowledgeState][]"}, {"description": "Device id values as a comma separated list.<p>**Example**: _ID1, ID2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[deviceId][]"}, {"description": "Case sensitive device name values as a comma separated list.<p>**Example**: _NAME1, NAME2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[deviceName][]"}, {"description": "IP address values as a comma separated list.<p>**Example**: _192.168.42.2, 192.168.42.3_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[ipAddress][]"}, {"description": "Case sensitive MAC address values as a comma separated list.<p>**Example**: _00-04-DC-01-02-03, 00-04-DC-01-02-04_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[macAddress][]"}, {"description": "Additional text values as a comma separated list.<p>**Example**: _TEXT1, TEXT2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[additionalText][]"}, {"description": "Native condition type values as a comma separated list.<p>**Example**: _TYPE1, TYPE2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[nativeConditionType][]"}, {"description": "Resource values as a comma separated list.<p>**Example**: _RESOURCE1, RESOURCE2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[resource][]"}, {"description": "Resource ID values as a comma separated list.<p>**Example**: _RESOURCEID1, RESOURCEID2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[resourceId][]"}, {"description": "Case sensitive subnet name values as a comma separated list.<p>**Example**: _SUBNET01, SUBNET02_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[subnetName][]"}, {"description": "Card type values as a comma separated list.<p>**Example**: _SP-2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[cardType][]"}, {"description": "CLFI values as a comma separated list.<p>**Example**: _CLFI01, CLFI02_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[clfi][]"}, {"description": "FIC values as a comma separated list.<p>**Example**: _FIC01, FIC02_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[fic][]"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated last raised time range in the format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTime]", "in": "query"}, {"description": "Last raised time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTimeFrom]", "in": "query"}, {"description": "Last raised time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTimeTo]", "in": "query"}, {"description": "Comma separated clear time range in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T0:0:0.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTime]", "in": "query"}, {"description": "Last clear time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[clearTimeFrom]", "in": "query"}, {"description": "Last clear time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTimeTo]", "in": "query"}, {"description": "Alarm attribute that the response will be sorted on such as _raiseTime_, either in ascending (ASC) or descending (DESC) order.<p>Values can be provided as a comma separated list or in new lines.</p><p>The latter translates to _sort[]=value1&sort[]=value2&_ ...</p><p>**Example**: _last-raise-time:DESC_</p><p>The JSON API standard is also accepted: _-last-raise-time_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "sort[]"}, {"description": "Refined raised time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[refinedRaisedTimeFrom]", "in": "query"}, {"description": "Refined raised time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[refinedRaisedTimeTo]", "in": "query"}, {"description": "Refined cleared time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[refinedClearTimeFrom]", "in": "query"}, {"description": "Refined clear time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[refinedClearTimeTo]", "in": "query"}, {"description": "Offset for the next page of results.<p>**Example**: _50_</p>", "default": "0", "required": false, "in": "query", "type": "string", "name": "offset"}, {"description": "Limit of the number of alarms present in a page.", "default": "500", "required": false, "in": "query", "type": "string", "name": "pageSize"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Search/Filter all correlated alarms on the system.", "operationId": "searchCorrelatedAlarms"}}, "/nsa/api/v1/alarms/historicalAlarms/{retentionDate}": {"delete": {"responses": {"204": {"description": "Successfully removed historical alarms"}, "500": {"description": "Removing historical alarms failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Use with caution!", "parameters": [{"description": "Removed date in _yyyymmdd_ format", "required": true, "type": "string", "name": "retentionDate", "in": "path"}], "produces": ["application/json"], "tags": ["Retrieve and modify alarms (version 1)"], "summary": "Remove historical alarms of the day specified in yyyymmdd format.", "operationId": "removeOldHistoricalAlarms"}}, "/nsa/api/v2_0/alarms/filter/filteredAlarms": {"get": {"responses": {"200": {"description": "Successfully retrieved filtered list of alarms", "schema": {"$ref": "#/definitions/FilteredAlarms"}}, "500": {"description": "Search on alarms failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of filtered Alarms returned in JSON format.", "parameters": [{"description": "Alarm id values as a comma separated list.<p>**Example**: _ID1, ID2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[alarmId][]"}, {"description": "State values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _ACTIVE, CLEARED, SUPERSEDED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[state][]"}, {"description": "State values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _ACTIVE, CLEARED, SUPERSEDED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[contextState][]"}, {"description": "Severity values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _CRITICAL, MAJOR, MINOR, WARNING_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[severity][]"}, {"description": "Service affecting values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _SERVICE_AFFECTING, NON_SERVICE_AFFECTING_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[serviceAffecting][]"}, {"description": "Device type values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _6500, OPENSTACK, NUAGE_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[deviceType][]"}, {"description": "Acknowledgment state values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _ACKNOWLEDGED, NOT_ACKNOWLEDGED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[acknowledgeState][]"}, {"description": "Device id values as a comma separated list.<p>**Example**: _ID1, ID2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[deviceId][]"}, {"description": "Case sensitive device name values as a comma separated list.<p>**Example**: _NAME1, NAME2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[deviceName][]"}, {"description": "IP address values as a comma separated list.<p>**Example**: _192.168.42.2, 192.168.42.3_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[ipAddress][]"}, {"description": "Case sensitive MAC address values as a comma separated list.<p>**Example**: _00-04-DC-01-02-03, 00-04-DC-01-02-04_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[macAddress][]"}, {"description": "Additional text values as a comma separated list.<p>**Example**: _TEXT1, TEXT2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[additionalText][]"}, {"description": "Native condition type values as a comma separated list.<p>**Example**: _TYPE1, TYPE2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[nativeConditionType][]"}, {"description": "Resource values as a comma separated list.<p>**Example**: _RESOURCE1, RESOURCE2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[resource][]"}, {"description": "Resource ID values as a comma separated list.<p>**Example**: _RESOURCEID1, RESOURCEID2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[resourceId][]"}, {"description": "Case sensitive subnet name values as a comma separated list.<p>**Example**: _SUBNET01, SUBNET02_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[subnetName][]"}, {"description": "Card type values as a comma separated list.<p>**Example**: _SP-2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[cardType][]"}, {"description": "CLFI values as a comma separated list.<p>**Example**: _CLFI01, CLFI02_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[clfi][]"}, {"description": "FIC values as a comma separated list.<p>**Example**: _FIC01, FIC02_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[fic][]"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated last raised time range in the format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTime]", "in": "query"}, {"description": "Last raised time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTimeFrom]", "in": "query"}, {"description": "Last raised time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTimeTo]", "in": "query"}, {"description": "Comma separated clear time range in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T0:0:0.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTime]", "in": "query"}, {"description": "Last clear time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[clearTimeFrom]", "in": "query"}, {"description": "Last clear time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTimeTo]", "in": "query"}, {"description": "Alarm attribute that the response will be sorted on such as _raiseTime_, either in ascending (ASC) or descending (DESC) order.<p>Values can be provided as a comma separated list or in new lines.</p><p>The latter translates to _sort[]=value1&sort[]=value2&_ ...</p><p>**Example**: _last-raise-time:DESC_</p><p>The JSON API standard is also accepted: _-last-raise-time_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "sort[]"}, {"description": "Refined raised time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[refinedRaisedTimeFrom]", "in": "query"}, {"description": "Refined raised time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[refinedRaisedTimeTo]", "in": "query"}, {"description": "Refined cleared time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[refinedClearTimeFrom]", "in": "query"}, {"description": "Refined clear time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[refinedClearTimeTo]", "in": "query"}, {"description": "Offset for the next page of results.<p>**Example**: _50_</p>", "default": "0", "required": false, "in": "query", "type": "string", "name": "offset"}, {"description": "Limit of the number of alarms present in a page.", "default": "500", "required": false, "in": "query", "type": "string", "name": "pageSize"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Search/Filter all Alarms on the system.", "operationId": "searchFilteredAlarms"}}, "/nsa/api/v2_0/alarms/filter/activeAlarms": {"get": {"responses": {"200": {"description": "Successfully retrieved filtered list of alarms", "schema": {"$ref": "#/definitions/FilteredAlarms"}}, "500": {"description": "Search on alarms failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of active Alarms returned in JSON format.", "parameters": [{"description": "Severity values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _CRITICAL, MAJOR, MINOR, WARNING_</p>", "required": false, "type": "string", "name": "filter[severity]", "in": "query"}, {"description": "Service affecting values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _SERVICE_AFFECTING, NON_SERVICE_AFFECTING_</p>", "required": false, "type": "string", "name": "filter[serviceAffecting]", "in": "query"}, {"description": "Device type values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _6500, OPENSTACK, NUAGE_</p>", "required": false, "type": "string", "name": "filter[deviceType]", "in": "query"}, {"description": "Acknowledgment state values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _ACKNOWLEDGED, NOT_ACKNOWLEDGED_</p>", "required": false, "type": "string", "name": "filter[acknowledgeState]", "in": "query"}, {"description": "Device id values as a comma separated list.<p>**Example**: _ID1, ID2_</p>", "required": false, "type": "string", "name": "filter[deviceId]", "in": "query"}, {"description": "Case sensitive device name values as a comma separated list.<p>**Example**: _NAME1, NAME2_</p>", "required": false, "type": "string", "name": "filter[deviceName]", "in": "query"}, {"description": "IP address values as a comma separated list.<p>**Example**: _192.168.42.2, 192.168.42.3_</p>", "required": false, "type": "string", "name": "filter[ipAddress]", "in": "query"}, {"description": "Case sensitive MAC address values as a comma separated list.<p>**Example**: _00-04-DC-01-02-03, 00-04-DC-01-02-04_</p>", "required": false, "type": "string", "name": "filter[macAddress]", "in": "query"}, {"description": "Additional text values as a comma separated list.<p>**Example**: _TEXT1, TEXT2_</p>", "required": false, "type": "string", "name": "filter[additionalText]", "in": "query"}, {"description": "Native condition type values as a comma separated list.<p>**Example**: _TYPE1, TYPE2_</p>", "required": false, "type": "string", "name": "filter[nativeConditionType]", "in": "query"}, {"description": "Resource values as a comma separated list.<p>**Example**: _RESOURCE1, RESOURCE2_</p>", "required": false, "type": "string", "name": "filter[resource]", "in": "query"}, {"description": "Case sensitive subnet name values as a comma separated list.<p>**Example**: _SUBNET01, SUBNET02_</p>", "required": false, "type": "string", "name": "filter[subnetName]", "in": "query"}, {"description": "Card type values as a comma separated list.<p>**Example**: _SP-2_</p>", "required": false, "type": "string", "name": "filter[cardType]", "in": "query"}, {"description": "CLFI values as a comma separated list.<p>**Example**: _CLFI01, CLFI02_</p>", "required": false, "type": "string", "name": "filter[clfi]", "in": "query"}, {"description": "FIC values as a comma separated list.<p>**Example**: _FIC01, FIC02_</p>", "required": false, "type": "string", "name": "filter[fic]", "in": "query"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated last raised time range in the format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTime]", "in": "query"}, {"description": "Alarm attribute that the response will be sorted on such as _raiseTime_, either in ascending (ASC) or descending (DESC) order.<p>Values can be provided as a comma separated list or in new lines.</p><p>The latter translates to _sort[]=value1&sort[]=value2&_ ...</p><p>**Example**: _last-raise-time:DESC_</p><p>The JSON API standard is also accepted: _-last-raise-time_</p>", "required": false, "type": "string", "name": "sorting", "in": "query"}, {"description": "Offset for the next page of results.<p>**Example**: _50_</p>", "default": "0", "required": false, "in": "query", "type": "string", "name": "offset"}, {"description": "Limit of the number of alarms present in a page.", "default": "500", "required": false, "in": "query", "type": "string", "name": "pageSize"}], "produces": ["application/json"], "deprecated": true, "tags": ["Search and filter alarms (version 2)"], "summary": "Search/Filter active Alarms on the system.", "operationId": "searchActiveAlarmsV2"}}, "/nsa/api/v1/alarms/deviceAttributes/{Id}": {"get": {"responses": {"200": {"description": "Successfully retrieved device attributes by device session id", "schema": {"$ref": "#/definitions/DeviceAttributesRO"}}, "404": {"description": "Device attributes not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Device attributes request failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Device specific attributes returned in JSON format.", "parameters": [{"description": "Requested node Identifier.", "required": true, "type": "string", "name": "Id", "in": "path"}], "produces": ["application/json"], "tags": ["Retrieve and modify alarms (version 1)"], "summary": "Get the device specific attributes for a device session id.", "operationId": "getDeviceAttributes"}}, "/nsa/api/v2_0/alarms/{Id}/manual-clear/{sequenceId}": {"post": {"responses": {"404": {"description": "Alarm not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully manually cleared alarm"}, "500": {"description": "Clearing a specific active alarm failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Only manually clearable alarms can be cleared.", "parameters": [{"description": "Identifier of the alarm to be marked as _cleared_.", "required": true, "type": "string", "name": "Id", "in": "path"}, {"description": "The alarm's last raise time in milliseconds.", "required": true, "type": "string", "name": "sequenceId", "in": "path"}], "produces": ["application/json"], "tags": ["Retrieve and modify alarms (version 2)"], "summary": "Manually clear an active alarm based on its identifier.", "operationId": "manualClearAlarm"}}, "/nsa/api/v2_0/alarms/{Id}/unacknowledge/{sequenceId}": {"post": {"responses": {"404": {"description": "Alarm not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully un-acknowledged alarm"}, "500": {"description": "Un-acknowledging a specific active alarm failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Only active Alarms can be unacknowledged.", "parameters": [{"description": "Identifier of the alarm to be marked as _unacknowledged_.", "required": true, "type": "string", "name": "Id", "in": "path"}, {"description": "The alarm's last raise time in milliseconds.", "required": true, "type": "string", "name": "sequenceId", "in": "path"}], "produces": ["application/json"], "tags": ["Retrieve and modify alarms (version 2)"], "summary": "Unacknowledge an active alarm based on its identifier.", "operationId": "unacknowledgeAlarm"}}, "/nsa/api/v2_0/alarms/{Id}/acknowledge/{sequenceId}": {"post": {"responses": {"404": {"description": "Alarm not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully acknowledged alarm"}, "500": {"description": "Acknowledging a specific active alarm failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Only active Alarms can be acknowledged.", "parameters": [{"description": "Identifier of the alarm to be marked as _acknowledged_.", "required": true, "type": "string", "name": "Id", "in": "path"}, {"description": "The alarm's last raise time in milliseconds.", "required": true, "type": "string", "name": "sequenceId", "in": "path"}], "produces": ["application/json"], "tags": ["Retrieve and modify alarms (version 2)"], "summary": "Acknowledge an active alarm based on its identifier.", "operationId": "acknowledgeAlarm"}}, "/nsa/api/v1/alarms/{Id}/force-clear": {"post": {"responses": {"404": {"description": "Alarm not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully force cleared alarm"}, "500": {"description": "Clearing a specific active alarm failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Never use this REST API unless you have no other option.", "parameters": [{"description": "Identifier of the alarm to be marked as _cleared_.", "required": true, "type": "string", "name": "Id", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["Retrieve and modify alarms (version 1)"], "summary": "Force clear an active Alarm based on its identifier (irrespective of its clearable flag).", "operationId": "forceClearAlarmV1"}}, "/nsa/api/v2_0/alarms/filter/resourceAggregations": {"get": {"responses": {"200": {"description": "Successfully retrieved resources", "schema": {"$ref": "#/definitions/ResourcesAggregation"}}, "500": {"description": "Resources retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Returned in JSON format.", "parameters": [{"description": "Partial resource filter value with a minimum of 1 character.<p>**Example**: _RES_</p>", "required": false, "type": "string", "name": "filter[resource]", "in": "query"}, {"description": "Resource values as a comma separated list.<p>**Example**: _RESOURCE1, RESOURCE2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "selected[resource][]"}, {"description": "State values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _ACTIVE, CLEARED, SUPERSEDED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[contextState][]"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated last raised time range in the format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTime]", "in": "query"}, {"description": "Comma separated clear time range in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T0:0:0.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTime]", "in": "query"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Query for resources in context. Returns a subset of the total resources in the system.", "operationId": "getResources"}}, "/nsa/api/v2_0/alarms/filter/startScrollFilteredAlarms": {"post": {"responses": {"201": {"description": "Successfully started a scroll filter search of alarms", "schema": {"$ref": "#/definitions/FilteredAlarmsByScroll"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/FilteredAlarmsByScroll"}}, "500": {"description": "Scroll filter search of alarms failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of filtered Alarms returned in JSON format and scroll id", "parameters": [{"description": "Alarm id values as a comma separated list.<p>**Example**: _ID1, ID2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[alarmId][]"}, {"description": "State values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _ACTIVE, CLEARED, SUPERSEDED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[state][]"}, {"description": "Severity values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _CRITICAL, MAJOR, MINOR, WARNING_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[severity][]"}, {"description": "Service affecting values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _SERVICE_AFFECTING, NON_SERVICE_AFFECTING_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[serviceAffecting][]"}, {"description": "Device type values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _6500, OPENSTACK, NUAGE_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[deviceType][]"}, {"description": "Acknowledgment state values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _ACKNOWLEDGED, NOT_ACKNOWLEDGED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[acknowledgeState][]"}, {"description": "Device id values as a comma separated list.<p>**Example**: _ID1, ID2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[deviceId][]"}, {"description": "Case sensitive device name values as a comma separated list.<p>**Example**: _NAME1, NAME2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[deviceName][]"}, {"description": "IP address values as a comma separated list.<p>**Example**: _192.168.42.2, 192.168.42.3_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[ipAddress][]"}, {"description": "Case sensitive MAC address values as a comma separated list.<p>**Example**: _00-04-DC-01-02-03, 00-04-DC-01-02-04_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[macAddress][]"}, {"description": "Additional text values as a comma separated list.<p>**Example**: _TEXT1, TEXT2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[additionalText][]"}, {"description": "Native condition type values as a comma separated list.<p>**Example**: _TYPE1, TYPE2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[nativeConditionType][]"}, {"description": "Resource values as a comma separated list.<p>**Example**: _RESOURCE1, RESOURCE2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[resource][]"}, {"description": "Resource ID values as a comma separated list.<p>**Example**: _RESOURCEID1, RESOURCEID2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[resourceId][]"}, {"description": "Case sensitive subnet name values as a comma separated list.<p>**Example**: _SUBNET01, SUBNET02_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[subnetName][]"}, {"description": "Card type values as a comma separated list.<p>**Example**: _SP-2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[cardType][]"}, {"description": "CLFI values as a comma separated list.<p>**Example**: _CLFI01, CLFI02_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[clfi][]"}, {"description": "FIC values as a comma separated list.<p>**Example**: _FIC01, FIC02_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[fic][]"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated last raised time range in the format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTime]", "in": "query"}, {"description": "Last raised time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTimeFrom]", "in": "query"}, {"description": "Last raised time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTimeTo]", "in": "query"}, {"description": "Comma separated clear time range in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T0:0:0.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTime]", "in": "query"}, {"description": "Last clear time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[clearTimeFrom]", "in": "query"}, {"description": "Last clear time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTimeTo]", "in": "query"}, {"description": "Refined raised time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[refinedRaisedTimeFrom]", "in": "query"}, {"description": "Refined raised time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[refinedRaisedTimeTo]", "in": "query"}, {"description": "Refined cleared time to be searched after in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _1900-01-01T00:00:00.000_</p>", "required": false, "type": "string", "name": "filter[refinedClearTimeFrom]", "in": "query"}, {"description": "Refined clear time to be searched before in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>**Example**: _2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[refinedClearTimeTo]", "in": "query"}, {"description": "Timeout of scroll in second. If the next scroll search is not issued in time, the scroll will expire.", "default": "300", "required": false, "in": "query", "type": "string", "name": "scrollTimeout"}, {"description": "Limit of the number of alarms returned per scroll search. Only specify in the first scroll call.", "default": "500", "required": false, "in": "query", "type": "string", "name": "scrollSize"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Start a scroll search/Filter all Alarms on the system.", "operationId": "scrollSearchFilteredAlarms"}}, "/nsa/api/v2_0/alarms/filter/historicalAlarms": {"get": {"responses": {"200": {"description": "Successfully retrieved filtered list of alarms", "schema": {"$ref": "#/definitions/FilteredAlarms"}}, "500": {"description": "Search on alarms failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of historical cleared Alarms returned in JSON format.", "parameters": [{"description": "Severity values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _CRITICAL, MAJOR, MINOR, WARNING_</p>", "required": false, "type": "string", "name": "filter[severity]", "in": "query"}, {"description": "Service affecting values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _SERVICE_AFFECTING, NON_SERVICE_AFFECTING_</p>", "required": false, "type": "string", "name": "filter[serviceAffecting]", "in": "query"}, {"description": "Device type values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>**Example**: _6500, OPENSTACK, NUAGE_</p>", "required": false, "type": "string", "name": "filter[deviceType]", "in": "query"}, {"description": "Device id values as a comma separated list.<p>**Example**: _ID1, ID2_</p>", "required": false, "type": "string", "name": "filter[deviceId]", "in": "query"}, {"description": "Case sensitive device name values as a comma separated list.<p>**Example**: _NAME1, NAME2_</p>", "required": false, "type": "string", "name": "filter[deviceName]", "in": "query"}, {"description": "IP address values as a comma separated list.<p>**Example**: _192.168.42.2, 192.168.42.3_</p>", "required": false, "type": "string", "name": "filter[ipAddress]", "in": "query"}, {"description": "Case sensitive MAC address values as a comma separated list.<p>**Example**: _00-04-DC-01-02-03, 00-04-DC-01-02-04_</p>", "required": false, "type": "string", "name": "filter[macAddress]", "in": "query"}, {"description": "Additional text values as a comma separated list.<p>**Example**: _TEXT1, TEXT2_</p>", "required": false, "type": "string", "name": "filter[additionalText]", "in": "query"}, {"description": "Native condition type values as a comma separated list.<p>**Example**: _TYPE1, TYPE2_</p>", "required": false, "type": "string", "name": "filter[nativeConditionType]", "in": "query"}, {"description": "Resource values as a comma separated list.<p>**Example**: _RESOURCE1, RESOURCE2_</p>", "required": false, "type": "string", "name": "filter[resource]", "in": "query"}, {"description": "Case sensitive subnet name values as a comma separated list.<p>**Example**: _SUBNET01, SUBNET02_</p>", "required": false, "type": "string", "name": "filter[subnetName]", "in": "query"}, {"description": "Card type values as a comma separated list.<p>**Example**: _SP-2_</p>", "required": false, "type": "string", "name": "filter[cardType]", "in": "query"}, {"description": "CLFI values as a comma separated list.<p>**Example**: _CLFI01, CLFI02_</p>", "required": false, "type": "string", "name": "filter[clfi]", "in": "query"}, {"description": "FIC values as a comma separated list.<p>**Example**: _FIC01, FIC02_</p>", "required": false, "type": "string", "name": "filter[fic]", "in": "query"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated clear time range in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T0:0:0.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTime]", "in": "query"}, {"description": "Alarm attribute that the response will be sorted on such as _raiseTime_, either in ascending (ASC) or descending (DESC) order.<p>Values can be provided as a comma separated list or in new lines.</p><p>The latter translates to _sort[]=value1&sort[]=value2&_ ...</p><p>**Example**: _last-raise-time:DESC_</p><p>The JSON API standard is also accepted: _-last-raise-time_</p>", "required": false, "type": "string", "name": "sorting", "in": "query"}, {"description": "Offset for the next page of results.<p>**Example**: _50_</p>", "default": "0", "required": false, "in": "query", "type": "string", "name": "offset"}, {"description": "Limit of the number of alarms present in a page.", "default": "500", "required": false, "in": "query", "type": "string", "name": "pageSize"}], "produces": ["application/json"], "deprecated": true, "tags": ["Search and filter alarms (version 2)"], "summary": "Search/Filter historical cleared Alarms on the system.", "operationId": "searchHistoricalAlarmsV2"}}, "/nsa/api/v1/alarms/historicalDataRetentionDays/{retentionDays}": {"put": {"responses": {"200": {"description": "Successfully set the new historical data retention days"}, "500": {"description": "Set the new historical data retention days failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Use with caution! The expired data based on the new retention day will be deleted.", "parameters": [{"description": "Number of historical data retention days. Must be between 1 - 365", "format": "int32", "required": true, "in": "path", "type": "integer", "name": "retentionDays"}], "produces": ["application/json"], "deprecated": true, "tags": ["Retrieve and modify alarms (version 1)"], "summary": "Set configuration of historical data retention days.", "operationId": "setHistoricalDataRetentionDays"}}, "/nsa/api/v2_0/alarms/filter/{channel}": {"delete": {"responses": {"404": {"description": "Alarm filter not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully deleted alarm filter"}, "500": {"description": "Alarm filter deletion failed", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Use caution when using this REST API. Active subscribers will no longer receive alarm notifications for their filter and may begin receiving notifications for a new filter.", "parameters": [{"description": "The channel attribute of the filter to delete", "required": true, "type": "string", "name": "channel", "in": "path"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Manually delete an alarm filter from the system by filter channel.", "operationId": "deleteFilter"}}, "/nsa/api/v2_0/alarms/alarm-sync-states": {"post": {"responses": {"200": {"description": "Successfully retrieved alarm sync states", "schema": {"$ref": "#/definitions/NodeAlarmStateRO"}}, "500": {"description": "Internal error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/AlarmQueryList"}, "description": "Alarm query list", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Retrieve and modify alarms (version 2)"], "summary": "Get a collection of alarm sync states of given nodes", "operationId": "getAlarmSyncStates"}}, "/nsa/api/v2_0/alarms/filter/activeAlarmCounts": {"get": {"responses": {"200": {"description": "Successfully retrieved alarm counts", "schema": {"$ref": "#/definitions/FilteredAlarms"}}, "500": {"description": "Alarm counts retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "", "tags": ["Search and filter alarms (version 2)"], "summary": "Query active alarm counts of severity CRITICAL, MAJOR, MINOR and WARNING.", "operationId": "getActiveAlarmCounts"}}, "/nsa/api/v1/alarms/alarmRecordsCounts": {"get": {"responses": {"200": {"description": "Successfully retrieved the total number of alarm records", "schema": {"$ref": "#/definitions/TotalAlarmRecordsCount"}}, "500": {"description": "Request failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "Alarm record counts returned in JSON format.", "tags": ["Retrieve and modify alarms (version 1)"], "summary": "Get the total number of Alarm records in the system.", "operationId": "getTotalRecordsCount"}}, "/nsa/api/v2_0/alarms/filter/filteredAlarms/{Id}": {"get": {"responses": {"200": {"description": "Successfully retrieved alarm by ID", "schema": {"$ref": "#/definitions/FilteredAlarm"}}, "404": {"description": "Alarm not found", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "A specific active alarm retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Alarm returned in JSON format.", "parameters": [{"description": "Requested alarm identifier.", "required": true, "type": "string", "name": "Id", "in": "path"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Get an Alarm based on its identifier.", "operationId": "getFilteredAlarm"}}, "/nsa/api/v2_0/alarms/filter/ipAddressesAggregations": {"get": {"responses": {"200": {"description": "Successfully retrieved IP addresses", "schema": {"$ref": "#/definitions/IpAddressesAggregation"}}, "500": {"description": "IP addresses retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Returned in JSON format.", "parameters": [{"description": "Partial IP address filter value with a minimum of 3 characters.<p>**Example**: _192.168_</p>", "required": false, "type": "string", "name": "filter[ipAddress]", "in": "query"}, {"description": "IP address values as a comma separated list.<p>**Example**: _192.168.42.2, 192.168.42.3_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "selected[ipAddress][]"}, {"description": "State values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _ACTIVE, CLEARED, SUPERSEDED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[contextState][]"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated last raised time range in the format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTime]", "in": "query"}, {"description": "Comma separated clear time range in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T0:0:0.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTime]", "in": "query"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Query for IP addresses in context. Returns a subset of the total IP addresses in the system.", "operationId": "getIpAddresses"}}, "/nsa/api/v2_0/alarms/filter": {"post": {"responses": {"201": {"description": "Filter successfully created", "schema": {"$ref": "#/definitions/Filter"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/Filter"}}, "403": {"description": "Forbidden", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Filter creation failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/Filter"}, "description": "Alarm filter", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Create a unique Alarm filter.", "consumes": ["application/json"], "operationId": "createFilter"}, "get": {"responses": {"200": {"description": "Successfully retrieved alarm filters", "schema": {"$ref": "#/definitions/Filters"}}, "500": {"description": "Filter creation failed", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "", "tags": ["Search and filter alarms (version 2)"], "summary": "Get all alarm filters active on the system.", "operationId": "getAllFilters"}}, "/nsa/api/v2_0/alarms/filter/nativeConditionTypeAggregations": {"get": {"responses": {"200": {"description": "Successfully retrieved additional texts", "schema": {"$ref": "#/definitions/NativeConditionTypesAggregation"}}, "500": {"description": "Native condition types retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Returned in JSON format.", "parameters": [{"description": "Partial native condition type filter value with a minimum of 3 characters.<p>**Example**: _TEX_</p>", "required": false, "type": "string", "name": "filter[nativeConditionType]", "in": "query"}, {"description": "Native condition type values as a comma separated list.<p>**Example**: _TYPE1, TYPE2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "selected[nativeConditionType][]"}, {"description": "State values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _ACTIVE, CLEARED, SUPERSEDED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[contextState][]"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated last raised time range in the format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTime]", "in": "query"}, {"description": "Comma separated clear time range in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T0:0:0.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTime]", "in": "query"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Query for native condition types in context. Returns a subset of the total native condition types in the system.", "operationId": "getNativeConditionTypes"}}, "/nsa/api/v2_0/alarms/resetRequestId/{serverId}": {"post": {"responses": {"204": {"description": "Successfully reset request IDs"}, "500": {"description": "Failed to reset request IDs (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Reset request IDs for all alarms/events for this server ID to zero in order to recover from an early request ID roll over", "parameters": [{"description": "Requested node Identifier.", "required": true, "type": "string", "name": "serverId", "in": "path"}], "produces": ["application/json"], "tags": ["Retrieve and modify alarms (version 2)"], "summary": "Reset request IDs for all alarms/events for this server ID to zero", "operationId": "resetRequestIdsForServerId"}}, "/nsa/api/v2_0/alarms/filter/deviceNamesAggregations": {"get": {"responses": {"200": {"description": "Successfully retrieved device names", "schema": {"$ref": "#/definitions/DeviceNamesAggregation"}}, "500": {"description": "Device names retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Returned in JSON format.", "parameters": [{"description": "Partial case sensitive device name filter value with a minimum of 3 characters.<p>**Example**: _NAME1_</p>", "required": false, "type": "string", "name": "filter[deviceName]", "in": "query"}, {"description": "Case sensitive device name values as a comma separated list.<p>**Example**: _NAME1, NAME2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "selected[deviceName][]"}, {"description": "State values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _ACTIVE, CLEARED, SUPERSEDED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[contextState][]"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated last raised time range in the format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTime]", "in": "query"}, {"description": "Comma separated clear time range in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T0:0:0.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTime]", "in": "query"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Query for device names in context. Returns a subset of the total device names in the system.", "operationId": "getDeviceNames"}}, "/nsa/api/v1/alarms/device-types": {"get": {"responses": {"200": {"description": "Successfully retrieved device types", "schema": {"$ref": "#/definitions/DeviceTypesRO"}}, "404": {"description": "No device types found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Returning collection of device types failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "Device types returned in JSON format.", "tags": ["Retrieve and modify alarms (version 1)"], "summary": "Get a collection of Alarmed device types.", "operationId": "getDeviceTypes"}}, "/nsa/api/v1/info": {"get": {"responses": {"default": {"description": "successful operation"}}, "description": "", "parameters": [{"description": "Generate an alarm processor thread dump.", "required": false, "type": "boolean", "name": "threadDump", "in": "query"}], "produces": ["application/json"], "tags": ["Alarms service information"], "summary": "Gets the alarm service status info.", "operationId": "getInfo"}}, "/nsa/api/v2_0/alarms/filter/nextScrollFilteredAlarms": {"get": {"responses": {"200": {"description": "Successfully retrieved next filtered alarm list", "schema": {"$ref": "#/definitions/FilteredAlarmsByScroll"}}, "500": {"description": "Retrieval of next filtered alarm list failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of filtered Alarms returned in JSON format.", "parameters": [{"description": "Scroll id returned from startScrollFilteredAlarm call.DnF1ZXJ5VGhlbkZldGNoAwAAAAAAADG0FmNTcGcweHJtUWVPeE5CN3ZNYm5CQVEAAAAAAAAxtRZjU3BnMHhybVFlT3hOQjd2TWJuQkFRAAAAAAAAMbYWY1NwZzB4cm1RZU94TkI3dk1ibkJBUQ==", "required": true, "type": "string", "name": "scrollId", "in": "query"}, {"description": "Timeout of scroll in second. If the next scroll search is not issued in time, the scroll will expire.", "default": "300", "required": false, "in": "query", "type": "string", "name": "scrollTimeout"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Search/Filter all Alarms on the system.", "operationId": "nextFilteredAlarms"}}, "/nsa/api/v2_0/alarms/filter/endScrollFilteredAlarms": {"post": {"responses": {"404": {"description": "Scroll not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully end scroll"}, "500": {"description": "Scroll end failed", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Make sure to end the scroll when it is not needed", "parameters": [{"description": "Scroll id returned from startScrollFilteredAlarm call.DnF1ZXJ5VGhlbkZldGNoAwAAAAAAADG0FmNTcGcweHJtUWVPeE5CN3ZNYm5CQVEAAAAAAAAxtRZjU3BnMHhybVFlT3hOQjd2TWJuQkFRAAAAAAAAMbYWY1NwZzB4cm1RZU94TkI3dk1ibkJBUQ==", "required": true, "type": "string", "name": "scrollId", "in": "query"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "End a scroll", "operationId": "endScroll"}}, "/nsa/api/v1/ping": {"get": {"responses": {"200": {"description": "successful operation", "schema": {"type": "string"}}}, "produces": ["text/plain"], "description": "", "tags": ["Alarms service information"], "summary": "Used to check if the alarms processor service is alive.", "operationId": "ping"}}, "/nsa/api/v2_0/alarms/filter/subnetNamesAggregations": {"get": {"responses": {"200": {"description": "Successfully retrieved subnet names", "schema": {"$ref": "#/definitions/SubnetNamesAggregation"}}, "500": {"description": "Subnet names retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Returned in JSON format.", "parameters": [{"description": "Partial case sensitive subnet name filter value with a minimum of 3 characters.<p>**Example**: _NAME1_</p>", "required": false, "type": "string", "name": "filter[subnetName]", "in": "query"}, {"description": "Case sensitive subnet name values as a comma separated list.<p>**Example**: _NAME1, NAME2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "selected[subnetName][]"}, {"description": "State values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _ACTIVE, CLEARED, SUPERSEDED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[contextState][]"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated last raised time range in the format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTime]", "in": "query"}, {"description": "Comma separated clear time range in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T0:0:0.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTime]", "in": "query"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Query for subnet names in context. Returns a subset of the total subnet names in the system.", "operationId": "getSubnetNames"}}, "/nsa/api/v1/alarms/filter/historicalAlarms": {"get": {"responses": {"200": {"description": "Successfully retrieved filtered list of alarms", "schema": {"$ref": "#/definitions/HistoricalAlarms"}}, "500": {"description": "Search on alarms failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of historical cleared Alarms returned in JSON format.", "parameters": [{"description": "Severity values as a comma separated list. Example: CRITICAL, MAJOR, MINOR, WARNING", "required": false, "type": "string", "name": "severity", "in": "query"}, {"description": "Service Affecting values as a comma separated list. Example: SERVICE_AFFECTING, NON_SERVICE_AFFECTING", "required": false, "type": "string", "name": "serviceAffecting", "in": "query"}, {"description": "Device type values as a comma separated list. Example: OPENSTACK, CN6500, NUAGE", "required": false, "type": "string", "name": "deviceType", "in": "query"}, {"description": "Key text to be present in the supported alarm fields. Supported fields include: condition-severity, node-name, resource, acknowledge-state, native-condition-type, and additional-text. Several operators are available including '+' (AND), '|' (OR), '-' (negate).", "required": false, "type": "string", "name": "keytext", "in": "query"}, {"description": "Comma separated clear time range in format: yyyy-MM-ddTHH:mm:ss.SSS. Example: 1900-01-01T0:0:0.000,2999-12-31T23:59:59.999", "required": false, "type": "string", "name": "range", "in": "query"}, {"description": "Alarm attribute that the response will be sorted on, such as raiseTime, either in ascending or descending order. Example: last-raise-time:DESC", "required": false, "type": "string", "name": "sorting", "in": "query"}, {"description": "Offset for the next page of results. Example: 50", "default": "0", "required": false, "in": "query", "type": "string", "name": "offset"}, {"description": "Limit of the number of alarms present in a page.", "default": "500", "required": false, "in": "query", "type": "string", "name": "pageSize"}], "produces": ["application/json"], "deprecated": true, "tags": ["Search and filter alarms (version 1)"], "summary": "Search/Filter historical cleared Alarms on the system.", "operationId": "searchHistoricalAlarms"}}, "/nsa/api/v2_0/alarms/filter/additionalTextAggregations": {"get": {"responses": {"200": {"description": "Successfully retrieved additional texts", "schema": {"$ref": "#/definitions/AdditionalTextsAggregation"}}, "500": {"description": "Additional texts retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Returned in JSON format.", "parameters": [{"description": "Partial additional text filter value with a minimum of 3 characters.<p>**Example**: _TEX_</p>", "required": false, "type": "string", "name": "filter[additionalText]", "in": "query"}, {"description": "Additional text values as a comma separated list.<p>**Example**: _TEXT1, TEXT2_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "selected[additionalText][]"}, {"description": "State values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _ACTIVE, CLEARED, SUPERSEDED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[contextState][]"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated last raised time range in the format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTime]", "in": "query"}, {"description": "Comma separated clear time range in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T0:0:0.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTime]", "in": "query"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Query for additional texts in context. Returns a subset of the total additional texts in the system.", "operationId": "getAdditionalTexts"}}, "/nsa/api/v1/alarms/{Id}/manual-clear": {"post": {"responses": {"404": {"description": "Alarm not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully manually cleared alarm"}, "500": {"description": "Clearing a specific active alarm failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Only manually clearable alarms can be cleared.", "parameters": [{"description": "Identifier of the alarm to be marked as _cleared_.", "required": true, "type": "string", "name": "Id", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["Retrieve and modify alarms (version 1)"], "summary": "Manually clear an active Alarm based on its identifier.", "operationId": "manualClearAlarmV1"}}, "/nsa/api/v2_0/alarms/filter/macAddressesAggregations": {"get": {"responses": {"200": {"description": "Successfully retrieved MAC addresses", "schema": {"$ref": "#/definitions/MacAddressesAggregation"}}, "500": {"description": "MAC addresses retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Returned in JSON format.", "parameters": [{"description": "Partial MAC address filter value with a minimum of 3 characters.<p>**Example**: _00-04-DC_</p>", "required": false, "type": "string", "name": "filter[macAddress]", "in": "query"}, {"description": "Case sensitive MAC address values as a comma separated list.<p>**Example**: _00-04-DC-01-02-03, 00-04-DC-01-02-04_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "selected[macAddress][]"}, {"description": "State values as a comma separated list or in new lines.<p>The latter translates to _filter[key][]=value1&filter[key][]=value2&_ ...</p><p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _ACTIVE, CLEARED, SUPERSEDED_</p>", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "filter[contextState][]"}, {"description": "Key text, minimum 3 characters, to be present in the supported alarm fields.<p>Supported fields include: _condition-severity, device-name, device-long-name, resource, acknowledge-state, native-condition-type, additional-text_, and _service-affecting_.</p><p>Several operators are available including '+' (AND), '|' (OR), '-' (negate).</p><p>Spaces are considered to be OR by default.</p><p>Results without this key text will not be shown in the results context aggregations meta.</p>", "required": false, "type": "string", "name": "filter[keytext]", "in": "query"}, {"description": "Comma separated last raised time range in the format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T00:00:00.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[lastRaisedTime]", "in": "query"}, {"description": "Comma separated clear time range in format: _yyyy-MM-ddTHH:mm:ss.SSS_.<p>Results outside of this range will not be shown in the context aggregations meta.</p><p>**Example**: _1900-01-01T0:0:0.000, 2999-12-31T23:59:59.999_</p>", "required": false, "type": "string", "name": "filter[clearTime]", "in": "query"}], "produces": ["application/json"], "tags": ["Search and filter alarms (version 2)"], "summary": "Query for MAC addresses in context. Returns a subset of the total MAC addresses in the system.", "operationId": "getMacAddresses"}}, "/nsa/api/v1/alarms/historicalChangePartition": {"get": {"responses": {"200": {"description": "Successfully return the configured historical change partition", "schema": {"$ref": "#/definitions/RetentionDaysRO"}}, "500": {"description": "Failed to get the historical change partition (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "deprecated": true, "description": "", "tags": ["Retrieve and modify alarms (version 1)"], "summary": "Get configuration of if historical alarms change partition.", "operationId": "getHistoricalChangePartition"}}}, "definitions": {"TotalAlarmRecordsCountData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/TotalAlarmRecordsCountAttributes"}, "type": {"enum": ["alarmRecordsCount"], "type": "string"}, "id": {"type": "string"}}}, "DeviceAttributesAttributesRO": {"type": "object", "properties": {"deviceName": {"type": "string", "description": "Device primary identifier. Will be shown below the alarm name"}, "partition": {"items": {"type": "string"}, "type": "array", "description": "The partitions that the device belongs to."}, "macAddress": {"type": "string", "description": "Device tertiary identifier. Will be shown below the secondary identifier in the expanded view."}, "deviceLongName": {"type": "string", "description": "Device long identifier."}, "id": {"type": "string", "description": "The device session ID"}, "deviceId": {"type": "string", "description": "The device ID"}, "ipAddress": {"type": "string", "description": "Device secondary identifier. Will be shown below the primary identifier in the expanded view."}, "deviceLocation": {"type": "string", "description": "Geo hash location of the device."}}}, "TotalAlarmRecordsCountAttributes": {"type": "object", "properties": {"totalRecords": {"type": "integer", "description": "The total records count", "format": "int64"}, "id": {"type": "string"}}}, "Severity": {"type": "object"}, "AdditionalTextsAggregationAttributes": {"type": "object", "properties": {"additionalTexts": {"items": {"$ref": "#/definitions/AdditionalText"}, "type": "array"}}}, "TotalAlarmRecordsCount": {"type": "object", "properties": {"data": {"$ref": "#/definitions/TotalAlarmRecordsCountData"}}}, "ServiceAffecting": {"type": "object"}, "ActiveAlarmsData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/ActiveAlarmsAttributes"}, "type": {"enum": ["ActiveAlarm"], "type": "string"}, "id": {"type": "string", "description": "The unique identifier for the alarm"}}}, "SubnetNamesAggregation": {"type": "object", "properties": {"data": {"$ref": "#/definitions/SubnetNamesAggregationData"}}}, "SubnetName": {"type": "object", "properties": {"count": {"type": "integer", "format": "int64"}, "value": {"type": "string"}}}, "State": {"type": "object"}, "Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "Additional_attrs": {"type": "object"}, "ResourceObjectDeviceType": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/device-type"}, "type": {"type": "string"}, "id": {"type": "string"}, "links": {"additionalProperties": {"$ref": "#/definitions/LinksObject"}, "type": "object"}}}, "NativeConditionTypesAggregationData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/NativeConditionTypesAggregationAttributes"}, "type": {"enum": ["NativeConditionTypesAggregation"], "type": "string"}, "id": {"type": "string"}}}, "DeviceAttributesRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/DeviceAttributesDataRO"}}}, "HistoricalAlarms": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/FilteredAlarmsMeta"}, "data": {"items": {"$ref": "#/definitions/HistoricalAlarmsData"}, "type": "array"}, "links": {"$ref": "#/definitions/FilteredAlarmsLinks"}}}, "FilteredAlarmsMetaFacetCounts": {"type": "object", "properties": {"serviceAffecting": {"description": "A map of service affecting values and their counts associated with the filter results", "$ref": "#/definitions/ServiceAffecting"}, "state": {"description": "A map of state values and their counts associated with the filter results", "$ref": "#/definitions/State"}, "acknowledgeState": {"description": "A map of acknowledge state values and their counts associated with the filter results", "$ref": "#/definitions/AcknowledgeState"}, "deviceType": {"description": "A map of device type values and their counts associated with the filter results", "$ref": "#/definitions/DeviceType"}, "severity": {"description": "A map of severity values and their counts associated with the filter results", "$ref": "#/definitions/Severity"}}}, "AdditionalTextsAggregationData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/AdditionalTextsAggregationAttributes"}, "type": {"enum": ["AdditionalTextsAggregation"], "type": "string"}, "id": {"type": "string"}}}, "DeviceName": {"type": "object"}, "FilteredAlarmsMeta": {"type": "object", "properties": {"facet-counts": {"$ref": "#/definitions/FilteredAlarmsMetaFacetCounts"}, "total": {"type": "integer", "description": "Total records matching the filters in the database", "format": "int64"}}}, "device-type": {"required": ["id"], "type": "object", "properties": {"id": {"type": "string", "description": "id of devicetype"}, "value": {"type": "string", "description": "Name of the device"}}}, "DeviceAttributesDataRO": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/DeviceAttributesAttributesRO"}, "type": {"enum": ["deviceAttributes"], "type": "string", "description": "Device attributes type"}, "id": {"type": "string", "description": "Unique device ID matching that provided from the device resource adapter in the alarm record"}}}, "MacAddressesAggregation": {"type": "object", "properties": {"data": {"$ref": "#/definitions/MacAddressesAggregationData"}}}, "IpAddress": {"type": "object"}, "FilteredAlarmsLinksNext": {"type": "object", "properties": {"href": {"type": "string", "description": "The href for the next page of results"}, "meta": {"$ref": "#/definitions/FilteredAlarmsLinksMeta"}}}, "IpAddressesAggregation": {"type": "object", "properties": {"data": {"$ref": "#/definitions/IpAddressesAggregationData"}}}, "FilterData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/FilterAttributes"}, "type": {"enum": ["Filter"], "type": "string"}, "id": {"type": "string", "description": "The unique identifier for the alarm filter"}}}, "FilteredAlarms": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/FilteredAlarmsMeta"}, "data": {"items": {"$ref": "#/definitions/FilteredAlarmsData"}, "type": "array"}, "links": {"$ref": "#/definitions/FilteredAlarmsLinks"}}}, "ResourcesAggregationData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/ResourcesAggregationAttributes"}, "type": {"enum": ["ResourcesAggregation"], "type": "string"}, "id": {"type": "string"}}}, "SubnetNamesAggregationAttributes": {"type": "object", "properties": {"subnetNames": {"items": {"$ref": "#/definitions/SubnetName"}, "type": "array"}}}, "AdditionalTextsAggregation": {"type": "object", "properties": {"data": {"$ref": "#/definitions/AdditionalTextsAggregationData"}}}, "NodeAlarmStateRO": {"type": "object", "properties": {"syncFailedReason": {"enum": ["RA", "TRIGGER", "SYNC", "ALARM"], "type": "string"}, "lastSynced": {"type": "string", "format": "date-time"}, "nodeId": {"type": "string"}, "lastUpdated": {"type": "string", "format": "date-time"}, "syncState": {"enum": ["DELETED", "SYNC_TRIGGERED", "SYNCHRONIZING", "SYNCHRONIZED", "SYNC_FAILED", "SYNC_PENDING", "DELETE_FAILED"], "type": "string"}}}, "NativeConditionTypesAggregationAttributes": {"type": "object", "properties": {"nativeConditionTypes": {"items": {"$ref": "#/definitions/NativeConditionType"}, "type": "array"}}}, "DeviceNamesAggregationAttributes": {"type": "object", "properties": {"deviceNames": {"items": {"$ref": "#/definitions/DeviceName"}, "type": "array"}}}, "MacAddress": {"type": "object"}, "IpAddressesAggregationAttributes": {"type": "object", "properties": {"ipAddresses": {"items": {"$ref": "#/definitions/IpAddress"}, "type": "array"}}}, "AdditionalText": {"type": "object", "properties": {"count": {"type": "integer", "format": "int64"}, "value": {"type": "string"}}}, "FilteredAlarmsByScroll": {"type": "object", "properties": {"scrollId": {"type": "string", "description": "The scroll id"}, "data": {"$ref": "#/definitions/FilteredAlarms"}}}, "SubnetNamesAggregationData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/SubnetNamesAggregationAttributes"}, "type": {"enum": ["SubnetNamesAggregation"], "type": "string"}, "id": {"type": "string"}}}, "MacAddressesAggregationData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/MacAddressesAggregationAttributes"}, "type": {"enum": ["MacAddressesAggregation"], "type": "string"}, "id": {"type": "string"}}}, "NativeConditionType": {"type": "object", "properties": {"count": {"type": "integer", "format": "int64"}, "value": {"type": "string"}}}, "FilteredAlarmsData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/FilteredAlarmsAttributes"}, "type": {"enum": ["FilteredAlarm"], "type": "string"}, "id": {"type": "string", "description": "The unique identifier for the alarm"}}}, "ActiveAlarmsAttributes": {"type": "object", "properties": {"node-type": {"type": "string", "description": "The type of node/device, e.g. 6500"}, "acknowledge-update-user": {"type": "string", "description": "The user that last updated the acknowledge state the alarm"}, "additional-text": {"type": "string", "description": "Additional information about the alarm"}, "resource": {"type": "string", "description": "The location and equipment type"}, "acknowledge-state": {"enum": ["NOT_ACKNOWLEDGED", "ACKNOWLEDGED"], "type": "string", "description": "The acknowledge state of the alarm"}, "manual-clearable": {"default": false, "type": "boolean", "description": "Whether or not the alarm can be cleared manually"}, "condition-severity": {"enum": ["CRITICAL", "MAJOR", "MINOR", "WARNING", "INDETERMINATE", "INFO", "CONFIG", "DEBUG"], "type": "string", "description": "The severity of the alarm"}, "last-raise-time": {"type": "string", "description": "The date and time that the alarm was last raised", "format": "date-time"}, "device-name": {"type": "string", "description": "Device's name."}, "device-attributes": {"description": "Device specific attributes for the alarm", "$ref": "#/definitions/Device_attributes"}, "first-raise-time": {"type": "string", "description": "The date and time that the alarm was first raised", "format": "date-time"}, "node-id": {"type": "string", "description": "The unique ID associated with the node/device provided by the RA"}, "number-of-occurrences": {"type": "integer", "description": "The number of times the alarm has occurred", "format": "int64"}, "mac-address": {"type": "string", "description": "Device's Mac address."}, "service-affecting": {"enum": ["UNKNOWN", "SERVICE_AFFECTING", "NON_SERVICE_AFFECTING"], "type": "string", "description": "The service impact of the alarm"}, "ip-address": {"type": "string", "description": "Device's IP address."}, "acknowledge-update-time": {"type": "string", "description": "The date and time that the alarms acknowledge state last changed", "format": "date-time"}, "id": {"type": "string", "description": "The alarm id"}, "native-condition-type": {"type": "string", "description": "The native condition or alarm name"}}}, "IpAddressesAggregationData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/IpAddressesAggregationAttributes"}, "type": {"enum": ["IpAddressesAggregation"], "type": "string"}, "id": {"type": "string"}}}, "Device_attributes__": {"type": "object"}, "HistoricalAlarmsData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/HistoricalAlarmsAttributes"}, "type": {"enum": ["HistoricalAlarm"], "type": "string", "description": "The Network Construct Enrollment Task resource type"}, "id": {"type": "string", "description": "The unique identifier for the alarm"}}}, "AlarmQueryList": {"type": "object", "properties": {"ids": {"items": {"type": "string"}, "type": "array"}}}, "Filter": {"type": "object", "properties": {"data": {"$ref": "#/definitions/FilterData"}}}, "ResourcesAggregationAttributes": {"type": "object", "properties": {"resources": {"items": {"$ref": "#/definitions/Resource"}, "type": "array"}}}, "HistoricalAlarmsAttributes": {"type": "object", "properties": {"node-type": {"type": "string", "description": "The type of node/device, e.g. 6500"}, "acknowledge-update-user": {"type": "string", "description": "The user that last updated the acknowledge state the alarm"}, "additional-text": {"type": "string", "description": "Additional information about the alarm"}, "clear-user": {"type": "string", "description": "The user that cleared the alarm"}, "resource": {"type": "string", "description": "The location and equipment type"}, "ip-address": {"type": "string", "description": "Device's IP address."}, "condition-severity": {"enum": ["CRITICAL", "MAJOR", "MINOR", "WARNING", "INDETERMINATE", "INFO", "CONFIG", "DEBUG"], "type": "string", "description": "The severity of the alarm"}, "last-raise-time": {"type": "string", "description": "The date and time that the alarm was last raised", "format": "date-time"}, "device-name": {"type": "string", "description": "Device's name."}, "device-attributes": {"description": "Device specific attributes for the alarm", "$ref": "#/definitions/Device_attributes__"}, "first-raise-time": {"type": "string", "description": "The date and time that the alarm was first raised", "format": "date-time"}, "node-id": {"type": "string", "description": "The unique ID associated with the node/device provided by the RA"}, "number-of-occurrences": {"type": "integer", "description": "The number of times the alarm had occurred at the time it was cleared", "format": "int64"}, "mac-address": {"type": "string", "description": "Device's Mac address."}, "service-affecting": {"enum": ["UNKNOWN", "SERVICE_AFFECTING", "NON_SERVICE_AFFECTING"], "type": "string", "description": "The service impact of the alarm"}, "clear-time": {"type": "string", "description": "The date and time that the alarm was cleared", "format": "date-time"}, "acknowledge-update-time": {"type": "string", "description": "The date and time that the alarms acknowledge state last changed", "format": "date-time"}, "id": {"type": "string", "description": "The alarm id"}, "native-condition-type": {"type": "string", "description": "The native condition or alarm name"}}}, "DeviceType": {"type": "object"}, "FilteredAlarmsMetaContextAggregations": {"type": "object", "properties": {"deviceName": {"items": {"$ref": "#/definitions/DeviceName"}, "type": "array", "description": "A map of device name values and their counts associated with the context results"}, "severity": {"items": {"$ref": "#/definitions/Severity"}, "type": "array", "description": "A map of severity values and their counts associated with the context results"}, "macAddress": {"items": {"$ref": "#/definitions/MacAddress"}, "type": "array", "description": "A map of MAC address values and their counts associated with the context results"}, "serviceAffecting": {"items": {"$ref": "#/definitions/ServiceAffecting"}, "type": "array", "description": "A map of service affecting values and their counts associated with the context results"}, "state": {"items": {"$ref": "#/definitions/State"}, "type": "array", "description": "A map of state values and their counts associated with the context results"}, "acknowledgeState": {"items": {"$ref": "#/definitions/AcknowledgeState"}, "type": "array", "description": "A map of acknowledge state values and their counts associated with the context results"}, "deviceType": {"items": {"$ref": "#/definitions/DeviceType"}, "type": "array", "description": "A map of device type values and their counts associated with the context results"}, "deviceId": {"items": {"$ref": "#/definitions/DeviceId"}, "type": "array", "description": "A map of device id values and their counts associated with the context results"}, "ipAddress": {"items": {"$ref": "#/definitions/IpAddress"}, "type": "array", "description": "A map of IP address values and their counts associated with the context results"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "NativeConditionTypesAggregation": {"type": "object", "properties": {"data": {"$ref": "#/definitions/NativeConditionTypesAggregationData"}}}, "LinksObject": {"type": "object"}, "FilteredAlarmsLinksMeta": {"type": "object", "properties": {"nextOffset": {"type": "integer", "description": "The offset for the next page of results", "format": "int32"}}}, "RetentionDaysRO": {"type": "object", "properties": {"retentionDays": {"type": "integer", "format": "int32"}}}, "ResourcesAggregation": {"type": "object", "properties": {"data": {"$ref": "#/definitions/ResourcesAggregationData"}}}, "MacAddressesAggregationAttributes": {"type": "object", "properties": {"macAddresses": {"items": {"$ref": "#/definitions/MacAddress"}, "type": "array"}}}, "ActiveAlarms": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/FilteredAlarmsMeta"}, "data": {"items": {"$ref": "#/definitions/ActiveAlarmsData"}, "type": "array"}, "links": {"$ref": "#/definitions/FilteredAlarmsLinks"}}}, "Resource": {"type": "object", "properties": {"count": {"type": "integer", "format": "int64"}, "value": {"type": "string"}}}, "FilterAttributes": {"type": "object", "properties": {"deviceName": {"items": {"type": "string"}, "type": "array", "description": "A device's name, case insensitive exact match only"}, "maxOccurrences": {"type": "integer", "description": "Pass through alarms with less than or equal to this number of occurrences. E.g. 100 would filter out any alarms with 101 or more occurrences", "format": "int64"}, "resource": {"items": {"type": "string"}, "type": "array", "description": "Regular expression for the location and equipment type. E.g. 40GMUX.* for all 40GMUX on any shelf and slot"}, "severity": {"items": {"type": "string"}, "type": "array", "description": "The severity of the alarm, case insensitive exact match only. Allowable values: indeterminate, critical, major, minor, warning, config, info"}, "ipAddress": {"items": {"type": "string"}, "type": "array", "description": "A device's IP address, exact match only"}, "serviceAffecting": {"items": {"type": "string"}, "type": "array", "description": "The service impact of the alarm, case insensitive exact match only. Allowable values: service_affecting, non_service_affecting, unknown"}, "partition": {"items": {"type": "string"}, "type": "array", "description": "The partitions of the user who creates the filter"}, "additionalText": {"items": {"type": "string"}, "type": "array", "description": "Additional information about the alarm, case insensitive substring match supported"}, "latestOffset": {"type": "integer", "description": "The latest message offset for the associated channel. If the offset cannot be retrieved it will be set to -9999, in that case please use the latest offset", "format": "int64"}, "deviceNameExclusion": {"items": {"type": "string"}, "type": "array", "description": "A device's name for exclusion, case insensitive substring match supported"}, "nativeConditionType": {"items": {"type": "string"}, "type": "array", "description": "The native condition or alarm name, case insensitive exact match only"}, "nativeConditionTypeExclusion": {"items": {"type": "string"}, "type": "array", "description": "The native condition or alarm name for exclusion, case insensitive substring match supported"}, "additionalTextExclusion": {"items": {"type": "string"}, "type": "array", "description": "Additional information about the alarm for exclusion, case insensitive substring match supported"}, "ipAddressExclusion": {"items": {"type": "string"}, "type": "array", "description": "A device's IP address for exclusion, exact match only"}, "nodeType": {"items": {"type": "string"}, "type": "array", "description": "The type of node/device, e.g. CN6500, case insensitive exact match only"}, "raiseTimeHour": {"items": {"type": "string"}, "type": "array", "description": "A GMT 24-hour range to allow notifications to pass through. E.g. 09-17 will pass all alarms with raise times between 9:00.000 AM and 4:59.999 PM GMT"}, "channel": {"type": "string", "description": "The channel on which to subscribe for notifications. E.g. via Kafka Comet"}}}, "FilteredAlarmsLinks": {"type": "object", "properties": {"data": {"$ref": "#/definitions/FilteredAlarmsLinksNext"}}}, "FilteredAlarmsMetaQueryAggregations": {"type": "object", "properties": {"deviceName": {"description": "A map of device name values and their counts associated with the query results", "$ref": "#/definitions/DeviceName"}, "severity": {"description": "A map of severity values and their counts associated with the query results", "$ref": "#/definitions/Severity"}, "macAddress": {"description": "A map of mac address values and their counts associated with the query results", "$ref": "#/definitions/MacAddress"}, "serviceAffecting": {"description": "A map of service affecting values and their counts associated with the query results", "$ref": "#/definitions/ServiceAffecting"}, "state": {"description": "A map of state values and their counts associated with the query results", "$ref": "#/definitions/State"}, "acknowledgeState": {"description": "A map of acknowledge state values and their counts associated with the query results", "$ref": "#/definitions/AcknowledgeState"}, "deviceType": {"description": "A map of device type values and their counts associated with the query results", "$ref": "#/definitions/DeviceType"}, "deviceId": {"description": "A map of device id values and their counts associated with the query results", "$ref": "#/definitions/DeviceId"}, "ipAddress": {"description": "A map of ip address values and their counts associated with the query results", "$ref": "#/definitions/IpAddress"}}}, "AcknowledgeState": {"type": "object"}, "DeviceId": {"type": "object"}, "Filters": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/FilterData"}, "type": "array"}}}, "Device_attributes": {"type": "object"}, "FilteredAlarmsAttributes": {"type": "object", "properties": {"native-state": {"type": "string", "description": "The native state"}, "card-type": {"type": "string", "description": "Card type."}, "supersede-time": {"type": "string", "description": "The date and time that the alarm was superseded", "format": "date-time"}, "ip-address": {"type": "string", "description": "Device's IP address."}, "clear-time": {"type": "string", "description": "The date and time that the alarm was cleared", "format": "date-time"}, "acknowledge-update-time": {"type": "string", "description": "The date and time that the alarms acknowledge state last changed", "format": "date-time"}, "id": {"type": "string", "description": "The alarm id"}, "native-condition-type": {"type": "string", "description": "The native condition or alarm name"}, "manual-clearable": {"default": false, "type": "boolean", "description": "Whether or not the alarm can be cleared manually"}, "fic": {"type": "string", "description": "Frame identification code."}, "state": {"enum": ["ACTIVE", "CLEARED", "SUPERSEDED"], "type": "string", "description": "The alarm state"}, "number-of-occurrences": {"type": "integer", "description": "The number of times the alarm has occurred", "format": "int64"}, "alarm-id": {"type": "string", "description": "The original alarm id of the historical alarm"}, "mac-address": {"type": "string", "description": "Device's Mac address."}, "native-description": {"type": "string", "description": "The native description"}, "additional-attrs": {"description": "Additional attributes for the alarm", "$ref": "#/definitions/Additional_attrs"}, "device-id": {"type": "string", "description": "Device's id."}, "device-tags": {"items": {"type": "string"}, "type": "array", "description": "A list of tags for a given device."}, "ra-alarm-id": {"type": "string", "description": "The RA Alarm identifier"}, "first-raise-time": {"type": "string", "description": "The date and time that the alarm was first raised", "format": "date-time"}, "affected-inventory-ids": {"items": {"type": "string"}, "type": "array", "description": "Inventory IDs affected by alarms"}, "subnet-name": {"type": "string", "description": "Device's subnet name."}, "sequence-id": {"type": "string", "description": "The alarm's sequence ID, the last-raise-time of that alarm instance in long."}, "clfi": {"type": "string", "description": "Common language facility identifier."}, "resource-id": {"type": "string", "description": "The a unique id of the resource sending the alarm"}, "device-long-name": {"type": "string", "description": "Device's long name."}, "node-type": {"type": "string", "description": "The type of node/device, e.g. 6500"}, "acknowledge-update-user": {"type": "string", "description": "The user that last updated the acknowledge state the alarm"}, "additional-text": {"type": "string", "description": "Additional information about the alarm"}, "resource": {"type": "string", "description": "The location and equipment type"}, "acknowledge-state": {"enum": ["NOT_ACKNOWLEDGED", "ACKNOWLEDGED"], "type": "string", "description": "The acknowledge state of the alarm"}, "condition-severity": {"enum": ["CRITICAL", "MAJOR", "MINOR", "WARNING", "INDETERMINATE", "INFO", "CONFIG", "DEBUG"], "type": "string", "description": "The severity of the alarm"}, "last-raise-time": {"type": "string", "description": "The date and time that the alarm was last raised", "format": "date-time"}, "device-name": {"type": "string", "description": "Device's name."}, "partition": {"items": {"type": "string"}, "type": "array", "description": "The partitions that the device belongs to."}, "device-attributes": {"description": "Device specific attributes for the alarm", "$ref": "#/definitions/Device_attributes"}, "service-affecting": {"enum": ["UNKNOWN", "SERVICE_AFFECTING", "NON_SERVICE_AFFECTING"], "type": "string", "description": "The service impact of the alarm"}, "request-id": {"type": "string", "description": "The alarm's sequence ID, the last-raise-time of that alarm instance in long."}, "native-name": {"type": "string", "description": "The native name"}, "clear-user": {"type": "string", "description": "The user that cleared the alarm"}, "node-id": {"type": "string", "description": "The unique ID associated with the node/device provided by the RA"}}}, "DeviceTypesRO": {"type": "object", "properties": {"meta": {"additionalProperties": {"type": "object"}, "type": "object"}, "data": {"items": {"$ref": "#/definitions/ResourceObjectDeviceType"}, "type": "array"}, "links": {"additionalProperties": {"$ref": "#/definitions/LinksObject"}, "type": "object"}}}, "DeviceNamesAggregation": {"type": "object", "properties": {"data": {"$ref": "#/definitions/DeviceNamesAggregationData"}}}, "FilteredAlarm": {"type": "object", "properties": {"data": {"$ref": "#/definitions/FilteredAlarmsData"}}}, "DeviceNamesAggregationData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/DeviceNamesAggregationAttributes"}, "type": {"enum": ["DeviceNamesAggregation"], "type": "string"}, "id": {"type": "string"}}}}, "swagger": "2.0", "tags": [{"name": "Alarms service information"}, {"name": "Retrieve and modify alarms (version 1)"}, {"name": "Retrieve and modify alarms (version 2)"}, {"name": "Search and filter alarms (version 1)"}, {"name": "Search and filter alarms (version 2)"}]}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_api_authorization..json b/tapi/resources/MCP_4.0.0_api_authorization..json
deleted file mode 100644
index ee372113eedbf7bd59a04b206a3589c9f88d4dc0..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_api_authorization..json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.1.0", "description": "Authorize API access based on assigned user roles", "title": "API authorization."}, "paths": {"/admin/current-account": {"get": {"responses": {"default": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}, "200": {"description": "Account found", "schema": {"$ref": "#/definitions/UserAccount"}}, "204": {"description": " Account not found"}}, "description": "Retrieve current account info", "operationId": "getCurrentSessionData"}}, "/admin/resources": {"get": {"responses": {"200": {"description": "Resources found", "schema": {"items": {"$ref": "#/definitions/Resource"}, "type": "array"}}, "204": {"description": "No resources are cached on this API-GW"}}, "operationId": "getResources", "description": "On startup, this service caches all the available resources in the\nsolution, and associates them with the role they are associated with.", "summary": "Retrieves a list of all cached resources, associated with their roles."}}, "/admin/current-permissions": {"get": {"responses": {"default": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}, "200": {"description": "Account found", "schema": {"$ref": "#/definitions/CurrentPermissions"}}, "204": {"description": "Account not found"}}, "operationId": "getCurrentPermissions", "description": "Returns list of permissions and partitions available to the\nauthenticated user (from the Authorization header bearer token) given\nthe current GeoRed active/standby state of the site.  If any of the\nuser's roles give the user access to \"all partitions\" then this is\nindicated and the partition list will be empty.", "summary": "Retrieve current permissions based on account and geored status"}}, "/admin/usercache": {"delete": {"responses": {"200": {"description": "The cache was properly cleared"}}, "operationId": "clearUserCache", "description": "This forces api-gw to retrieve user information from the UAC service\nfor every subsequent requests received.", "summary": "Deletes the internal user cache."}}, "/admin/sessions": {"get": {"responses": {"200": {"description": "Sessions found", "schema": {"items": {"$ref": "#/definitions/RbacSession"}, "type": "array"}}, "204": {"description": "No sessions were available"}}, "description": "Retrieve all sessions currently in the cache", "operationId": "getSessions"}}, "/rest/permission": {"post": {"responses": {"default": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}, "200": {"description": "Access is allowed", "$ref": "#/responses/grantedRestResourceResponse"}, "401": {"description": "Access is not allowed", "$ref": "#/responses/deniedRestResourceResponse"}}, "operationId": "validateRestResource", "description": "For the resource and token specified in the body, checks whether the\ntoken is allowed to use the resource.", "parameters": [{"schema": {"$ref": "#/definitions/RestPermissionData"}, "required": true, "name": "body", "in": "body"}], "summary": "Checks resource access permission."}}, "/audit/configuration": {"post": {"responses": {"201": {"description": "Accepted the request and changed the state"}}, "description": "Configure the audit feature", "parameters": [{"required": true, "in": "query", "type": "boolean", "description": "Enable/Disable the addition of HTTP body in the Audit Logs for every API\nrequests and responses entering and leaving the system.", "name": "enable"}], "operationId": "configureAudit"}}}, "schemes": ["https", "http"], "responses": {"userAccountResponse": {"schema": {"$ref": "#/definitions/UserAccount"}}, "apiResponse": {"schema": {"$ref": "#/definitions/ApiResponse"}}, "deniedRestResourceResponse": {"schema": {"$ref": "#/definitions/DeniedRbacResponse"}}, "sessionsResponse": {"schema": {"items": {"$ref": "#/definitions/RbacSession"}, "type": "array"}}, "currentPermissionsResponse": {"schema": {"$ref": "#/definitions/CurrentPermissions"}}, "resourcesResponse": {"schema": {"items": {"$ref": "#/definitions/Resource"}, "type": "array"}}, "grantedRestResourceResponse": {"headers": {"headers": {"description": "in:headers"}}, "schema": {"$ref": "#/definitions/GrantedRbacResponse"}}}, "produces": ["application/json"], "basePath": "/rbac-e/api/v1", "definitions": {"Partition": {"type": "object", "properties": {"name": {"type": "string"}, "uuid": {"type": "string"}}}, "Resource": {"type": "object", "properties": {"resource": {"type": "string"}, "uuid": {"type": "string"}, "roles": {"items": {"$ref": "#/definitions/Role"}, "type": "array"}, "matcher": {"type": "string"}, "method": {"type": "string"}, "name": {"type": "string"}}}, "DeniedRbacResponse": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}}, "GrantedRbacResponse": {"type": "object", "properties": {"status": {"type": "string"}, "permission": {"type": "string"}, "Data": {"required": ["tenant_name", "tenant_context", "user_roles"], "type": "object", "properties": {"user_id": {"type": "string"}, "tenant_context_id": {"type": "string"}, "tenant_id": {"type": "string"}, "tenant_context": {"type": "string"}, "session_id": {"type": "string"}, "user_roles": {"items": {"type": "string"}, "type": "array"}, "tenant_name": {"type": "string"}, "user_name": {"type": "string"}}}, "version": {"type": "string"}, "message": {"type": "string"}, "type": {"pattern": "^(AUTH|RBAC|RBAC_AUTH)$", "type": "string"}}}, "Permission": {"type": "object", "properties": {"name": {"type": "string"}, "uuid": {"type": "string"}}}, "LastLoginDetail": {"type": "object", "properties": {"sessionId": {"type": "string"}, "ipAddress": {"type": "string"}, "time": {"type": "string", "format": "date-time"}}}, "ApiResponse": {"type": "object", "properties": {"message": {"type": "string"}, "code": {"type": "string"}, "level": {"type": "string"}}}, "CurrentPermissions": {"type": "object", "properties": {"permissions": {"items": {"$ref": "#/definitions/Permission"}, "type": "array"}, "partitions": {"items": {"$ref": "#/definitions/Partition"}, "type": "array"}}}, "RbacSession": {"type": "object", "properties": {"userName": {"type": "string"}, "lastAccess": {"type": "string", "format": "date-time"}, "creationTime": {"type": "string", "format": "date-time"}, "sessionId": {"type": "string"}, "ipAddress": {"type": "string"}, "userId": {"type": "string"}}}, "User": {"type": "object", "properties": {"username": {"type": "string"}, "description": {"type": "string"}, "firstName": {"type": "string"}, "lastName": {"type": "string"}, "lastLoginDetail": {"$ref": "#/definitions/LastLoginDetail"}, "tenantName": {"type": "string"}, "tenant": {"type": "string"}, "email": {"type": "string"}, "isActive": {"type": "boolean"}, "uuid": {"type": "string"}}}, "UserAccount": {"type": "object", "properties": {"uuid": {"type": "string"}, "tokenType": {"type": "string"}, "token": {"type": "string"}, "user": {"$ref": "#/definitions/User"}, "lastAccessed": {"type": "string", "format": "date-time"}, "retrievedTime": {"type": "string", "format": "date-time"}}}, "RestPermissionData": {"required": ["method", "path", "authType"], "type": "object", "properties": {"path": {"type": "string"}, "Mac": {"type": "string"}, "authType": {"pattern": "^(AUTH|RBAC|RBAC_AUTH)$", "type": "string"}, "token": {"type": "string"}, "method": {"pattern": "^(POST|GET|PUT|DELETE|PATCH|OPTIONS|HEAD|TRACE|CONNECT)$", "type": "string"}}}, "sessionInfo": {"type": "object", "properties": {"ciena-user-id": {"type": "string"}, "ciena-session-id": {"type": "string"}, "ciena-user-name": {"type": "string"}}}, "Role": {"type": "object", "properties": {"application": {"type": "string"}, "name": {"type": "string"}, "uuid": {"type": "string"}}}}, "swagger": "2.0", "consumes": ["application/json"]}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_asset_manager.json b/tapi/resources/MCP_4.0.0_asset_manager.json
deleted file mode 100644
index 9e88b1f94d18c7e7273b4eb0fa75db6df6b3df38..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_asset_manager.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"termsOfService": "", "description": "APIs for the Asset Manager", "license": {"url": "", "name": ""}, "title": "Asset manager", "contact": {"name": ""}, "version": "v1"}, "paths": {"/areas/{areaName}/upgrades/{requestId}": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose upgrade is requested", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "The requestId identifier for the area upgrade", "required": true, "type": "string", "name": "requestId", "in": "path"}], "tags": ["areas"], "description": "An upgrade is a sub-resource of an area", "summary": "Get a specific upgrade request for an area based on the request identifier", "operationId": "HeadGetAreaUpgrade"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/AreaUpgrade"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose upgrade is requested", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "The requestId identifier for the area upgrade", "required": true, "type": "string", "name": "requestId", "in": "path"}], "tags": ["areas"], "description": "An upgrade is a sub-resource of an area", "summary": "Get a specific upgrade request for an area based on the request identifier", "operationId": "GetAreaUpgrade"}}, "/keys": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["keys"], "description": "Keys are identified by their fingerprint (16 byte MD5 hash in hexadecimal format without byte separators)", "summary": "List all of the SSH public keys authorized for git access in the Asset Manager", "operationId": "HeadListKeys"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/AuthorizedKey"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/AuthorizedKey"}, "description": "An RSA public key", "required": true, "name": "key", "in": "body"}], "tags": ["keys"], "description": "Keys are identified by their fingerprint (16 byte MD5 hash in hexadecimal format without byte separators). Adding a key which is already present results in 409 Conflict.", "summary": "Add an SSH public key to the list of the SSH public keys authorized for git access in the Asset Manager", "operationId": "CreateKey"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[AuthorizedKey]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["keys"], "description": "Keys are identified by their fingerprint (16 byte MD5 hash in hexadecimal format without byte separators)", "summary": "List all of the SSH public keys authorized for git access in the Asset Manager", "operationId": "ListKeys"}}, "/areas/{areaName}/upgrades": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose upgrade history is requested", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "If true, returns only active upgrade requests; if false, returns all upgrade requests", "default": true, "required": false, "in": "query", "type": "boolean", "name": "pendingOnly"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["areas"], "description": "An upgrade is a sub-resource of an area", "summary": "List the upgrade history for an area", "operationId": "HeadListAreaUpgrades"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/AreaUpgrade"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area to upgrade", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "Source directory path for the upgrade on the server (defaults to standard installation directory)", "required": false, "type": "string", "name": "sourceDir", "in": "query"}], "tags": ["areas"], "description": "An upgrade is a sub-resource of an area", "summary": "Submit a request to upgrade an area to the currently installed release version", "operationId": "CreateAreaUpgrade"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[AreaUpgrade]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose upgrade history is requested", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "If true, returns only active upgrade requests; if false, returns all upgrade requests", "default": true, "required": false, "in": "query", "type": "boolean", "name": "pendingOnly"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["areas"], "description": "An upgrade is a sub-resource of an area", "summary": "List the upgrade history for an area", "operationId": "ListAreaUpgrades"}}, "/areas/{areaName}/raw-files/{path}": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "description": "Files are a sub-resource of an area.", "parameters": [{"description": "The name of the area to list the files", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "The OS path to the file asset.  Forward slashes in the path may be directly included or URL encoded. Other URL unfriendly characters need to be URL encoded.", "required": true, "type": "string", "name": "path", "in": "path"}, {"description": "By default, get the current version of the file.  Optionally get the file as of a specific commit specified by a Git commit hash.  It is strongly suggested to provide this parameter if linking to the image for display, as it makes the response cacheable.", "required": false, "type": "string", "name": "commitHash", "in": "query"}], "produces": ["application/octet-stream", "image/png", "image/jpeg", "image/gif", "image/svg+xml"], "tags": ["areas"], "summary": "Get the bytes on disk of a specific file by path managed by an area in the Asset Manager", "operationId": "HeadGetFileBytes"}, "get": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "description": "Files are a sub-resource of an area.", "parameters": [{"description": "The name of the area to list the files", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "The OS path to the file asset.  Forward slashes in the path may be directly included or URL encoded. Other URL unfriendly characters need to be URL encoded.", "required": true, "type": "string", "name": "path", "in": "path"}, {"description": "By default, get the current version of the file.  Optionally get the file as of a specific commit specified by a Git commit hash.  It is strongly suggested to provide this parameter if linking to the image for display, as it makes the response cacheable.", "required": false, "type": "string", "name": "commitHash", "in": "query"}], "produces": ["application/octet-stream", "image/png", "image/jpeg", "image/gif", "image/svg+xml"], "tags": ["areas"], "summary": "Get the bytes on disk of a specific file by path managed by an area in the Asset Manager", "operationId": "GetFileBytes"}}, "/areas": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["areas"], "description": "Areas are identified by unique strings", "summary": "List all of the areas in the Asset Manager", "operationId": "HeadListAreas"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Area]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["areas"], "description": "Areas are identified by unique strings", "summary": "List all of the areas in the Asset Manager", "operationId": "ListAreas"}}, "/areas/{areaName}/changes": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose recent changes are being requested", "required": true, "type": "string", "name": "areaName", "in": "path"}], "tags": ["areas"], "description": "Areas are identified by unique strings", "summary": "List all of the recent changes to an area in the Asset Manager", "operationId": "HeadListRecentChanges"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[ChangeLog]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose recent changes are being requested", "required": true, "type": "string", "name": "areaName", "in": "path"}], "tags": ["areas"], "description": "Areas are identified by unique strings", "summary": "List all of the recent changes to an area in the Asset Manager", "operationId": "ListRecentChanges"}}, "/areas/{areaName}": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose information is being requested", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "Comma separated list of information fields being requested (if empty all fields are returned)", "items": {"enum": ["uri", "commitHash", "versionSignature", "releaseSignature", "upgradeAvailable"], "type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "fields"}], "tags": ["areas"], "description": "Areas are identified by unique strings.  If the releaseSignature is different than the versionSignature, an upgrade is available.", "summary": "Get information for a specific area in the Asset Manager", "operationId": "HeadGetArea"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/AreaInformationReplyExternal"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose information is being requested", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "Comma separated list of information fields being requested (if empty all fields are returned)", "items": {"enum": ["uri", "commitHash", "versionSignature", "releaseSignature", "upgradeAvailable"], "type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "fields"}], "tags": ["areas"], "description": "Areas are identified by unique strings.  If the releaseSignature is different than the versionSignature, an upgrade is available.", "summary": "Get information for a specific area in the Asset Manager", "operationId": "GetArea"}}, "/areas/{areaName}/files/{path}": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "The name of the area to list the files", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "The OS path to the file asset.  Forward slashes in the path may be directly included or URL encoded. Other URL unfriendly characters need to be URL encoded.", "required": true, "type": "string", "name": "path", "in": "path"}, {"description": "By default, get the current version of the file.  Optionally get the file as of a specific commit specified by a Git commit hash", "required": false, "type": "string", "name": "commitHash", "in": "query"}], "tags": ["areas"], "description": "Files are a sub-resource of an area.", "summary": "Get a specific file specified by a path managed by an area in the Asset Manager", "operationId": "HeadGetFile"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/RetrievedFile"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "The name of the area to list the files", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "The OS path to the file asset.  Forward slashes in the path may be directly included or URL encoded. Other URL unfriendly characters need to be URL encoded.", "required": true, "type": "string", "name": "path", "in": "path"}, {"description": "By default, get the current version of the file.  Optionally get the file as of a specific commit specified by a Git commit hash", "required": false, "type": "string", "name": "commitHash", "in": "query"}], "tags": ["areas"], "description": "Files are a sub-resource of an area.", "summary": "Get a specific file specified by a path managed by an area in the Asset Manager", "operationId": "GetFile"}}, "/areas/{areaName}/pullrequests": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose pull requests are being requested", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "If true, returns only active pull requests; if false, returns all pull requests", "default": true, "required": false, "in": "query", "type": "boolean", "name": "pendingOnly"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["areas"], "description": "A pull request is a sub-resource of an area", "summary": "List all of the pull requests for an area", "operationId": "HeadListPullRequests"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/PullRequest"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area to perform the pull request", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"schema": {"$ref": "#/definitions/PullRequestSubmission"}, "description": "Data describing the pull request", "required": true, "name": "submission", "in": "body"}], "tags": ["areas"], "description": "A pull request is a sub-resource of an area", "summary": "Submit a pull request to pull a specified branch into a specified area", "operationId": "CreatePullRequest"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[PullRequest]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose pull requests are being requested", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "If true, returns only active pull requests; if false, returns all pull requests", "default": true, "required": false, "in": "query", "type": "boolean", "name": "pendingOnly"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["areas"], "description": "A pull request is a sub-resource of an area", "summary": "List all of the pull requests for an area", "operationId": "ListPullRequests"}}, "/areas/{areaName}/files": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "The name of the area to list the files", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "By default, list the current set of files.  Optionally list only the files as of a specific commit specified by a Git commit hash", "required": false, "type": "string", "name": "commitHash", "in": "query"}], "tags": ["areas"], "description": "Files are a sub-resource of an area", "summary": "Get the list of files managed by an area in the AssetManager", "operationId": "HeadListFiles"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[FileEntry]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "The name of the area to list the files", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "By default, list the current set of files.  Optionally list only the files as of a specific commit specified by a Git commit hash", "required": false, "type": "string", "name": "commitHash", "in": "query"}], "tags": ["areas"], "description": "Files are a sub-resource of an area", "summary": "Get the list of files managed by an area in the AssetManager", "operationId": "ListFiles"}}, "/areas/{areaName}/pullrequests/{requestId}": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose pull request is requested", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "The requestId identifier for the pull request", "required": true, "type": "string", "name": "requestId", "in": "path"}], "tags": ["areas"], "description": "A pull request is a sub-resource of an area", "summary": "Get a specific pull request for an area based on the request identifier", "operationId": "HeadGetPullRequest"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/PullRequest"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the area whose pull request is requested", "required": true, "type": "string", "name": "areaName", "in": "path"}, {"description": "The requestId identifier for the pull request", "required": true, "type": "string", "name": "requestId", "in": "path"}], "tags": ["areas"], "description": "A pull request is a sub-resource of an area", "summary": "Get a specific pull request for an area based on the request identifier", "operationId": "GetPullRequest"}}, "/keys/{keyId}": {"delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "The fingerprint of the key to remove (16 byte MD5 hash in hexadecimal format without byte separators)", "required": true, "type": "string", "name": "keyId", "in": "path"}], "tags": ["keys"], "description": "", "summary": "Remove an SSH public key from the list of the SSH public keys authorized for git access in the Asset Manager", "operationId": "DeleteKey"}}, "/ping": {"head": {"responses": {"200": {"description": "OK"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["ping"], "description": "", "summary": "Ping the system to see whether the component is ready to handle requests or not", "operationId": "HeadGetPing"}, "get": {"responses": {"200": {"description": "OK"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["ping"], "description": "", "summary": "Ping the system to see whether the component is ready to handle requests or not", "operationId": "GetPing"}}}, "schemes": ["https"], "tags": [{"name": "areas", "description": "Asset areas are Git repositories where definitions may be onboarded and accessed"}, {"name": "keys", "description": "SSH keys authorized for Git access"}, {"name": "ping", "description": "Asset manager interface to check for readiness"}], "basePath": "/bpocore/asset-manager/api/v1", "securityDefinitions": {}, "host": "10.132.251.42", "definitions": {"Function1": {"type": "object", "title": "Function1"}, "AuthorizedKey": {"description": "Ssh public keys authorized for git access", "type": "object", "properties": {"id": {"type": "string", "description": "Fingerprint (per ssh-keygen) of the key (without colons).  Not used on Create."}, "key": {"type": "string", "description": "Authorized key (e.g., content of the id_rsa.pub file generated by ssh-keygen)"}}, "title": "AuthorizedKey"}, "ListReply[AreaUpgrade]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/AreaUpgrade"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "RejectionDetails": {"description": "Information describing why a PR was rejected by a particular component", "type": "object", "properties": {"component": {"type": "string", "description": "The component which rejected the PR (e.g, market-type-manager)"}, "description": {"type": "string", "description": "General (component specific) reason why the PR was rejected"}, "issues": {"items": {"$ref": "#/definitions/PullRequestIssue"}, "type": "array", "description": "Specific issues with the PR which caused rejection"}}, "title": "RejectionDetails"}, "Area": {"description": "Information associated with a specific asset area (asset category)", "type": "object", "properties": {"externalGitUrl": {"type": "string", "description": "Git server URL for external use"}, "name": {"type": "string", "description": "Asset area name"}, "internalGitUrl": {"type": "string", "description": "Git server URL for internal use"}}, "title": "Area"}, "FileEntry": {"description": "Description of a file entry", "type": "object", "properties": {"access": {"type": "string", "description": "The access controls for the file"}, "path": {"type": "string", "description": "The OS path to the file"}, "hash": {"type": "string", "description": "The SHA-1 hash of the file contents"}, "type": {"type": "string", "description": "The type of file"}}, "title": "FileEntry"}, "AreaInformationReplyExternal": {"description": "Requested information fields for an Area", "type": "object", "properties": {"versionSignature": {"type": "string", "description": "Signature of the last release version incorporated into this area"}, "upgradeAvailable": {"type": "boolean", "description": "Is an upgrade available from the current release? (requires versionSignature and releaseSignature fields)"}, "area": {"type": "string", "description": "Name of the area"}, "uri": {"type": "string", "description": "Uri for the area"}, "releaseSignature": {"type": "string", "description": "Signature for the latest available source content (i.e., installed release version - if different than the current versionSignature an upgrade is available)"}, "commitHash": {"type": "string", "description": "Latest commit hash for the area"}}, "title": "AreaInformationReplyExternal"}, "AreaUpgrade": {"description": "An asset area's upgrade request or event", "type": "object", "properties": {"comment": {"type": "string", "description": "Comment or description for the upgrade"}, "status": {"enum": ["pending", "failed", "successful"], "type": "string", "description": "The status of this upgrade request"}, "versionSignature": {"type": "string", "description": "The repository version signature for upgrade content"}, "sourceDir": {"type": "string", "description": "Source directory for the upgrade content"}, "productionCommit": {"type": "string", "description": "The commit hash for the upgrade on the production branch"}, "area": {"type": "string", "description": "Asset area name"}, "reason": {"type": "string", "description": "Additional diagnostic information for an upgrade"}, "commitDate": {"type": "string", "description": "The commit timestamp (successful upgrades only)", "format": "date-time"}, "pullRequestId": {"type": "string", "description": "The identifier for the associated pull request"}, "tag": {"type": "string", "description": "The tag for the content submitted in the pull request"}, "requestDate": {"type": "string", "description": "Timestamp that the upgrade request is received for processing", "format": "date-time"}, "requestId": {"type": "string", "description": "Request UUID"}, "branch": {"type": "string", "description": "The branch from which the upgrade pull request is performed"}, "previousSignature": {"type": "string", "description": "The repository version signature prior to upgrade"}, "details": {"items": {"$ref": "#/definitions/RejectionDetails"}, "type": "array", "description": "Additional details describing why an upgrade failed"}}, "title": "AreaUpgrade"}, "PullRequest": {"description": "Identification and information associated with a PullRequest", "type": "object", "properties": {"comment": {"type": "string", "description": "Comment"}, "status": {"description": "Status of the PullRequest", "$ref": "#/definitions/Value"}, "branch": {"type": "string", "description": "The submission branch for the pull request"}, "title": {"type": "string", "description": "Title"}, "commitDate": {"type": "string", "description": "Date of the Git commit to pull", "format": "date-time"}, "reason": {"type": "string", "description": "Reason for the status of the PullRequest"}, "requestDate": {"type": "string", "description": "Date of the PullRequest", "format": "date-time"}, "requestId": {"type": "string", "description": "UUID for the PullRequest"}, "productionCommitHash": {"type": "string", "description": "The commit hash resulting from a successful pull request merged to the production branch"}, "commitHash": {"type": "string", "description": "Git commit hash for the commit to pull"}, "email": {"type": "string", "description": "Email address"}, "details": {"items": {"$ref": "#/definitions/RejectionDetails"}, "type": "array", "description": "Additional details describing why the PullRequest was rejected"}}, "title": "PullRequest"}, "Function1RequestContextFutureRouteResult": {"type": "object", "title": "Function1RequestContextFutureRouteResult"}, "ListReply[AuthorizedKey]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/AuthorizedKey"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "ListReply[ChangeLog]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/ChangeLog"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "JValue": {"type": "object", "title": "JValue"}, "ListReply[FileEntry]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/FileEntry"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "Value": {"type": "object", "title": "Value"}, "ListReply[Area]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/Area"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "PullRequestIssue": {"description": "Information describing a specific issue with a PR", "type": "object", "properties": {"message": {"type": "string", "description": "Specific message describing an issue with the PR"}, "extra": {"description": "Extra JSON content to describe the issue with the PR", "$ref": "#/definitions/JValue"}}, "title": "PullRequestIssue"}, "ListReply[PullRequest]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/PullRequest"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "PullRequestSubmission": {"description": "Pull request submission", "type": "object", "properties": {"comment": {"type": "string", "description": "Optional comment"}, "branch": {"type": "string", "description": "Branch or commit hash from which the pull request is to be made"}, "title": {"type": "string", "description": "Title"}}, "title": "PullRequestSubmission"}, "ChangeLog": {"description": "Information associated with a specific asset change", "type": "object", "properties": {"date": {"type": "string", "description": "Date/time stamp for the completion of the change", "format": "date-time"}, "subject": {"type": "string", "description": "Subject of the email describing the change"}, "email": {"type": "string", "description": "Text of the email describing the change"}, "changeId": {"type": "string", "description": "UUID for the change"}}, "title": "ChangeLog"}, "RetrievedFile": {"description": "Container for a file retrieved from the Asset Manager", "type": "object", "properties": {"content": {"type": "string", "description": "Text content of the file"}, "path": {"type": "string", "description": "Path specifying the location of the retrieved file"}}, "title": "RetrievedFile"}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_backup_service.json b/tapi/resources/MCP_4.0.0_backup_service.json
deleted file mode 100644
index 74cc101db0cbf07b4e9e00559d89fe488febb0c6..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_backup_service.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "2.0", "description": "REST API specification for the backup service", "title": "Backup Service"}, "paths": {"/backupservice/api/v2/backupSettings": {"get": {"responses": {"200": {"description": "Backup settings are retrieved successful", "schema": {"$ref": "#/definitions/BackupSettingsRO"}}, "500": {"description": "The server encountered an error while retrieving backup settings", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List backup settings", "produces": ["application/json"], "tags": ["Backup Settings Rest Service V2"], "summary": "List backup settings", "consumes": ["application/json"], "operationId": "listBackupSettings"}}, "/backupservice/api/v1/backup/{jobId}": {"get": {"responses": {"200": {"description": "Backup job was found successfully", "schema": {"$ref": "#/definitions/BackupJobRO"}}, "404": {"description": "The job doesn't exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List details of a particular backup process", "parameters": [{"description": "Backup job Id", "required": true, "type": "string", "name": "jobId", "in": "path"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Backup Service API V1"], "summary": "List details of a particular backup process", "consumes": ["application/json"], "operationId": "getBackupJob"}}, "/backupservice/api/v2/schedules": {"post": {"responses": {"202": {"description": "Backup request is accepted", "schema": {"$ref": "#/definitions/BackupScheduleRO"}}, "500": {"description": "The server encountered an error while backup", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The backup request input is invalid", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Create a backup schedule.<p>A backup request will be executed immediately if no schedule is provided in the request body.<p>A backup request can be scheduled to the future, executed once or in a recurring manner. The supported backup frequencies are ONCE, DAILY, WEEKLY and MONTHLY.<p>Example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\": {\n        \"type\": \"schedules\",\n        \"attributes\": {\n            \"solutionName\": \"{{TEST_SOLUTION}}\",\n            \"name\": \"daily\",\n            \"label\": \"daily\",\n            \"schedule\": {\n                \"frequency\": \"DAILY\",\n                \"utcTime\": \"01:00\"\n            }\n        }\n    }\n}\n</code></pre>", "parameters": [{"schema": {"$ref": "#/definitions/BackupScheduleRO"}, "description": "Backup schedule", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Backup Schedule Rest Service V2"], "summary": "Create a backup schedule", "consumes": ["application/json"], "operationId": "backupSolution"}, "get": {"responses": {"200": {"description": "Details were found successful", "schema": {"$ref": "#/definitions/BackupScheduleListRO"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List all backup schedules", "parameters": [{"description": "Backup schedule name", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "Backup schedule state", "required": false, "type": "string", "name": "state", "in": "query"}, {"description": "Backup schedule name contains", "required": false, "type": "string", "name": "name_contains", "in": "query"}, {"description": "Backup schedule sorting, sorting on 'name' and 'state' are supported. By default sorted in ascending order on 'name'.\nUse a dash in front of the attribute name (e.g. ordering=-name) for sorting in descending order.", "required": false, "type": "string", "name": "ordering", "in": "query"}], "produces": ["application/json"], "tags": ["Backup Schedule Rest Service V2"], "summary": "List all backup schedules", "consumes": ["application/json"], "operationId": "listBackupSchedules"}}, "/backupservice/api/v2/schedules/{id}": {"patch": {"responses": {"202": {"description": "Backup schedule update request is accepted", "schema": {"$ref": "#/definitions/BackupScheduleRO"}}, "500": {"description": "The server encountered an error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The backup schedule update request input is invalid", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Update a particular active backup schedule. Full data should be provided in the request body for the update.<p>A backup request will be executed immediately if no schedule is provided in the request body.<p>A backup request can be scheduled to the future, executed once or in a recurring manner. The supported backup frequencies are ONCE, DAILY, WEEKLY and MONTHLY.<p>Example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\": {\n        \"type\": \"schedules\",\n        \"attributes\": {\n            \"solutionName\": \"{{TEST_SOLUTION}}\",\n            \"name\": \"daily\",\n            \"label\": \"daily\",\n            \"schedule\": {\n                \"frequency\": \"DAILY\",\n                \"utcTime\": \"01:00\"\n            }\n        }\n    }\n}\n</code></pre>", "parameters": [{"description": "Backup schedule Id", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/BackupScheduleRO"}, "description": "Backup request", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Backup Schedule Rest Service V2"], "summary": "Update a particular active backup schedule", "consumes": ["application/json"], "operationId": "updateBackupSchedule"}, "delete": {"responses": {"404": {"description": "The backup schedule doesn't exist", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "The backup schedule was successfully deleted"}, "500": {"description": "The server encountered an error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Backup is in progress", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Delete a particular backup schedule", "parameters": [{"description": "Backup schedule Id", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["Backup Schedule Rest Service V2"], "summary": "Delete a particular backup schedule", "consumes": ["application/json"], "operationId": "deleteBackupSchedule"}, "get": {"responses": {"200": {"description": "Backup schedule was found successful", "schema": {"$ref": "#/definitions/BackupScheduleRO"}}, "404": {"description": "The backup schedule doesn't exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List a particular backup schedule", "parameters": [{"description": "Backup schedule Id", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["Backup Schedule Rest Service V2"], "summary": "List a particular backup schedule", "consumes": ["application/json"], "operationId": "getBackupSchedule"}}, "/backupservice/api/v1/backup": {"post": {"responses": {"202": {"description": "Backup request is accepted", "schema": {"$ref": "#/definitions/BackupJob"}}, "500": {"description": "The server encountered an error while backup", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The backup request input is invalid", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Trigger Backup Process", "parameters": [{"schema": {"$ref": "#/definitions/BackupRequestRO"}, "description": "Backup request", "required": true, "name": "body", "in": "body"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Backup Service API V1"], "summary": "Trigger Backup Process", "consumes": ["application/json"], "operationId": "backupSolution"}, "get": {"responses": {"200": {"description": "Details were found successfully", "schema": {"items": {"$ref": "#/definitions/BackupJobRO"}, "type": "array"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List all backup processes", "produces": ["application/vnd.api+json", "application/json"], "tags": ["Backup Service API V1"], "summary": "List details of all backup processes", "consumes": ["application/json"], "operationId": "listBackupJobs"}}, "/backupservice/api/v1/restore": {"post": {"responses": {"202": {"description": "Restore request is accepted", "schema": {"$ref": "#/definitions/RestoreJobRO"}}, "500": {"description": "The server encountered an error while restoring", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The restore request input is invalid", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Trigger Restore Process", "parameters": [{"schema": {"$ref": "#/definitions/RestoreRequestRO"}, "description": "Restore request", "required": true, "name": "body", "in": "body"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Backup Service API V1"], "summary": "Trigger Restore Process", "consumes": ["application/json"], "operationId": "restoreSolution"}, "get": {"responses": {"200": {"description": "Details were found successfully", "schema": {"items": {"$ref": "#/definitions/RestoreJobRO"}, "type": "array"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List all restore processes", "produces": ["application/vnd.api+json", "application/json"], "tags": ["Backup Service API V1"], "summary": "List details of all restore processes", "consumes": ["application/json"], "operationId": "listRestoreJobs"}}, "/backupservice/api/v1/snapshots": {"get": {"responses": {"200": {"description": "Snapshots were found successfully", "schema": {"items": {"type": "string"}, "type": "array"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List all existing snapshots", "parameters": [{"description": "Solution Name", "required": false, "type": "string", "name": "solutionName", "in": "query"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Backup Service API V1"], "summary": "List snapshots", "consumes": ["application/json"], "operationId": "listSnapshots"}}, "/backupservice/api/v1/restore/{jobId}": {"delete": {"responses": {"404": {"description": "The restore job doesn't exist", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Restore job was deleted successfully"}, "500": {"description": "The server encountered an error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Delete a completed restore job", "parameters": [{"description": "Job Id of restore job", "required": true, "type": "string", "name": "jobId", "in": "path"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Backup Service API V1"], "summary": "Delete a completed restore job", "consumes": ["application/json"], "operationId": "deleteRestoreJob"}, "get": {"responses": {"200": {"description": "Restore job was found successfully", "schema": {"$ref": "#/definitions/RestoreJobRO"}}, "404": {"description": "The job doesn't exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List details of a particular restore process", "parameters": [{"description": "Job Id of restore job", "required": true, "type": "string", "name": "jobId", "in": "path"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Backup Service API V1"], "summary": "List details of a particular restore process", "consumes": ["application/json"], "operationId": "getRestoreJob"}}, "/backupservice/api/v2/schedules/{id}/backups": {"get": {"responses": {"200": {"description": "Backup details were found successful", "schema": {"$ref": "#/definitions/BackupSnapshotListRO"}}, "404": {"description": "The backup schedule doesn't exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List details of a particular backup schedule", "parameters": [{"description": "Backup schedule Id", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Backup status", "required": false, "type": "string", "name": "status", "in": "query"}, {"description": "Backup sorting, sorting on 'executionTime', 'scheduleName' and 'status' are supported. By default sorted in descending order on 'executionTime'.\nUse a dash in front of the attribute name (e.g. ordering=-executionTime) for sorting in descending order.", "required": false, "type": "string", "name": "ordering", "in": "query"}, {"description": "Offset for the next page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "required": false, "type": "string", "name": "limit", "in": "query"}], "produces": ["application/json"], "tags": ["Backup Schedule Rest Service V2"], "summary": "List details of a particular backup schedule", "consumes": ["application/json"], "operationId": "getBackupDetails"}}, "/backupservice/api/v2/backups": {"get": {"responses": {"200": {"description": "Details were found successful", "schema": {"$ref": "#/definitions/BackupSnapshotListRO"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List details of all backup schedules", "parameters": [{"description": "Backup schedule name", "required": false, "type": "string", "name": "scheduleName", "in": "query"}, {"description": "Backup status", "required": false, "type": "string", "name": "status", "in": "query"}, {"description": "Backup schedule name contains", "required": false, "type": "string", "name": "scheduleName_contains", "in": "query"}, {"description": "Backup sorting, sorting on 'executionTime', 'scheduleName' and 'status' are supported. By default sorted in descending order on 'executionTime'.\nUse a dash in front of the attribute name (e.g. ordering=-executionTime) for sorting in descending order.", "required": false, "type": "string", "name": "ordering", "in": "query"}, {"description": "Offset for the next page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "required": false, "type": "string", "name": "limit", "in": "query"}], "produces": ["application/json"], "tags": ["Backup Snapshot Rest Service V2"], "summary": "List details of all backup schedules", "consumes": ["application/json"], "operationId": "listBackupDetails"}}, "/backupservice/api/v2/backupSettings/{id}": {"patch": {"responses": {"200": {"description": "Backup settings are updated", "schema": {"$ref": "#/definitions/BackupSettingsRO"}}, "500": {"description": "The server encountered an error while updating backup settings", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The backup settings update request input is invalid", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Update backup settings", "parameters": [{"description": "Backup settings Id, valid value is '1'", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/BackupSettingsRO"}, "description": "Backup settings", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Backup Settings Rest Service V2"], "summary": "Update backup settings", "consumes": ["application/json"], "operationId": "updateBackupSettings"}}}, "schemes": ["http", "https"], "tags": [{"name": "Backup Schedule Rest Service V2"}, {"name": "Backup Service API V1"}, {"name": "Backup Settings Rest Service V2"}, {"name": "Backup Snapshot Rest Service V2"}], "definitions": {"Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "BackupScheduleRO": {"type": "object", "properties": {"included": {"items": {"$ref": "#/definitions/BackupSnapshotDataRO"}, "type": "array", "description": "Referenced backup resources"}, "data": {"description": "Backup schedules", "$ref": "#/definitions/BackupScheduleDataRO"}}}, "BackupSchedule": {"type": "object", "properties": {"dayOfWeek": {"enum": ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"], "type": "string"}, "nextExecutionTime": {"type": "string"}, "frequency": {"enum": ["ONCE", "DAILY", "WEEKLY", "MONTHLY"], "type": "string"}, "time": {"type": "string"}, "date": {"type": "string"}, "intervalInMinutes": {"type": "integer", "format": "int32"}, "dayOfMonth": {"type": "integer", "format": "int32"}}}, "BackupScheduleDataRO": {"type": "object", "properties": {"relationships": {"description": "The relationships of a backup schedule", "$ref": "#/definitions/BackupScheduleRelationshipsRO"}, "attributes": {"description": "The attributes of a backup schedule", "$ref": "#/definitions/BackupScheduleAttributesRO"}, "type": {"enum": ["SCHEDULES"], "type": "string", "description": "The backup resource type"}, "id": {"type": "string", "description": "The unique identifier for the backup schedule resource"}}}, "BackupDetail": {"type": "object", "properties": {"status": {"type": "string"}, "failure": {"$ref": "#/definitions/Failure"}, "solutionName": {"type": "string"}, "snapshotName": {"type": "string"}, "executionTime": {"type": "string"}, "scheduleName": {"type": "string"}}}, "FailureRO": {"type": "object", "properties": {"message": {"type": "string"}, "reason": {"type": "string"}}, "description": "The information about a failure"}, "BackupSettingsRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/BackupSettingsDataRO"}}}, "RestoreJobRO": {"type": "object", "properties": {"solutionName": {"type": "string"}, "executionTime": {"type": "string"}, "state": {"type": "string"}, "solutionSnapshot": {"type": "string"}}, "description": "The information about a restore job"}, "Schedule": {"type": "object", "properties": {"dayOfWeek": {"enum": ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"], "type": "string", "description": "backup day of week, mandatory for weekly schedule"}, "nextExecutionTime": {"type": "string", "description": "next backup execution time"}, "utcTime": {"type": "string", "description": "mandatory field for backup UTC time in HH:MM format"}, "frequency": {"enum": ["ONCE", "DAILY", "WEEKLY", "MONTHLY"], "type": "string", "description": "mandatory field for backup frequency"}, "date": {"type": "string", "description": "backup date in YYYY-MM-DD format, mandatory for one-time schedule"}, "dayOfMonth": {"type": "integer", "description": "backup day of month, mandatory for monthly schedule", "format": "int32"}}}, "BackupSettingsAttributesRO": {"type": "object", "properties": {"numberOfRetainedArchivedBackups": {"type": "integer", "format": "int32"}, "archive": {"default": false, "type": "boolean"}, "numberOfRetainedLocalBackups": {"type": "integer", "format": "int32"}}, "description": "The attributes of the backup settings"}, "BackupSnapshotAttributesRO": {"type": "object", "properties": {"status": {"type": "string"}, "solutionName": {"type": "string"}, "snapshotName": {"type": "string"}, "failure": {"$ref": "#/definitions/FailureRO"}, "scheduleName": {"type": "string"}, "executionTime": {"type": "string"}}, "description": "The attributes of a backup snapshot"}, "Failure": {"type": "object", "properties": {"message": {"type": "string"}, "reason": {"type": "string"}}}, "BackupRequestRO": {"type": "object", "properties": {"solutionName": {"type": "string"}, "label": {"type": "string"}}}, "BackupJob": {"type": "object", "properties": {"name": {"type": "string"}, "schedule": {"$ref": "#/definitions/BackupSchedule"}, "solutionName": {"type": "string"}, "snapshots": {"items": {"type": "string"}, "type": "array"}, "label": {"type": "string"}, "state": {"type": "string"}, "lastExecutionTime": {"type": "string"}, "details": {"additionalProperties": {"$ref": "#/definitions/BackupDetail"}, "type": "object"}, "cancelled": {"default": false, "type": "boolean"}, "id": {"type": "integer", "format": "int64"}}}, "BackupSnapshotDataRO": {"type": "object", "properties": {"attributes": {"description": "The attributes of a backup snapshot", "$ref": "#/definitions/BackupSnapshotAttributesRO"}, "type": {"enum": ["BACKUPS"], "type": "string", "description": "The backup resource type"}, "id": {"type": "string", "description": "The unique identifier for the backup snapshot resource"}}}, "BackupSettingsDataRO": {"type": "object", "properties": {"attributes": {"description": "The attributes of backup settings", "$ref": "#/definitions/BackupSettingsAttributesRO"}, "type": {"enum": ["SETTINGS"], "type": "string", "description": "The backup resource type"}, "id": {"type": "string", "description": "The unique identifier for the backup settings resource"}}}, "RestoreRequestRO": {"type": "object", "properties": {"solutionName": {"type": "string"}, "solutionSnapshot": {"type": "string"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "BackupJobRO": {"type": "object", "properties": {"solutionName": {"type": "string"}, "state": {"type": "string"}, "snapshots": {"items": {"type": "string"}, "type": "array"}, "label": {"type": "string"}}, "description": "The information about a backup job"}, "BackupScheduleRelationshipsRO": {"type": "object", "properties": {"backups": {"$ref": "#/definitions/OneToManyRelationshipRO"}}}, "OneToManyRelationshipRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array"}}}, "BackupScheduleAttributesRO": {"type": "object", "properties": {"name": {"type": "string"}, "schedule": {"$ref": "#/definitions/Schedule"}, "solutionName": {"type": "string"}, "label": {"type": "string"}, "state": {"type": "string"}, "lastExecutionTime": {"type": "string"}}, "description": "The attributes of a backup schedule"}, "BackupScheduleListRO": {"type": "object", "properties": {"included": {"items": {"$ref": "#/definitions/BackupSnapshotDataRO"}, "type": "array", "description": "Referenced backup resources"}, "data": {"items": {"$ref": "#/definitions/BackupScheduleDataRO"}, "type": "array", "description": "Backup schedules"}}}, "BackupSnapshotMetaRO": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total count of the backup snapshot resource", "format": "int32"}}}, "BackupSnapshotListRO": {"type": "object", "properties": {"meta": {"description": "Backup snapshots metadata", "$ref": "#/definitions/BackupSnapshotMetaRO"}, "data": {"items": {"$ref": "#/definitions/BackupSnapshotDataRO"}, "type": "array", "description": "Backup snapshots"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_blueplanet_upgrade_service_rest_api.json b/tapi/resources/MCP_4.0.0_blueplanet_upgrade_service_rest_api.json
deleted file mode 100644
index 3d70ab37c0dc7cea218889464205ba0c8412d823..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_blueplanet_upgrade_service_rest_api.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "REST API specification for using upgrade service.", "title": "BluePlanet Upgrade Service REST API"}, "paths": {"/upgrade/api/v1/upgrades/{jobId}": {"delete": {"responses": {"404": {"description": "The job doesn't exist", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "The upgrade job was stopped successful"}, "400": {"description": "The job is not being processed", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Stop an upgrade process", "parameters": [{"description": "Job Id of upgrade job", "format": "int64", "pattern": "[0-9]+", "required": true, "in": "path", "type": "integer", "name": "jobId"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Upgrade Rest Service v1"], "summary": "Stop a particular upgrade process", "consumes": ["application/json"], "operationId": "stopUpgradeJob"}, "get": {"responses": {"200": {"description": "Details were found successful", "schema": {"$ref": "#/definitions/UpgradeJobRO"}}, "404": {"description": "The job doesn't exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error while upgrading", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List an upgrade process", "parameters": [{"description": "Job Id of upgrade job", "format": "int64", "pattern": " [0-9]+", "required": true, "in": "path", "type": "integer", "name": "jobId"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Upgrade Rest Service v1"], "summary": "List details of a particular upgrade process", "consumes": ["application/json"], "operationId": "listUpgradeJob"}}, "/upgrade/api/v1/upgrades/{jobId}/commit": {"post": {"responses": {"200": {"description": "successful operation", "schema": {"items": {"type": "string"}, "type": "array"}}, "404": {"description": "The job doesn't exist", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Cleanup is successful"}, "500": {"description": "The server encountered an error while cleaning up.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Cannot clean up. The job is not succeeded", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Trigger cleanup of previous solution", "parameters": [{"description": "Job Id of upgrade job", "format": "int64", "pattern": "[0-9]+", "required": true, "in": "path", "type": "integer", "name": "jobId"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Upgrade Rest Service v1"], "summary": "Trigger cleanup of previous solution", "consumes": ["application/json"], "operationId": "commit"}}, "/upgrade/api/v1/upgrades": {"post": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/UpgradeJob"}}, "202": {"description": "Upgrade request is accepted"}, "500": {"description": "The server encountered an error while upgrading", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The upgrade request input is invalid", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Trigger Upgrade Process", "parameters": [{"schema": {"$ref": "#/definitions/UpgradeRequestRO"}, "description": "Upgrade request. It may include mutiple solution to be upgraded", "required": true, "name": "body", "in": "body"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Upgrade Rest Service v1"], "summary": "Trigger Upgrade Process", "consumes": ["application/json"], "operationId": "upgradeSolutions"}, "get": {"responses": {"200": {"description": "Details were found successful", "schema": {"items": {"type": "string"}, "type": "array"}}, "500": {"description": "The server encountered an error while upgrading", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List all upgrade processes", "produces": ["application/vnd.api+json", "application/json"], "tags": ["Upgrade Rest Service v1"], "summary": "List details of all upgrade processes", "consumes": ["application/json"], "operationId": "listUpgrades"}}, "/upgrade/api/v1/upgrades/{jobId}/rollback": {"post": {"responses": {"200": {"description": "successful operation", "schema": {"items": {"type": "string"}, "type": "array"}}, "202": {"description": "Rollback request is accepted"}, "500": {"description": "The server encountered an error while cleaning up", "schema": {"$ref": "#/definitions/Errors"}}, "404": {"description": "The job doesn't exist", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Cannot rollback. The job is being processed", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Trigger rollback of the upgrade job", "parameters": [{"description": "Job Id of upgrade job", "format": "int64", "pattern": "[0-9]+", "required": true, "in": "path", "type": "integer", "name": "jobId"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Upgrade Rest Service v1"], "summary": "Trigger rollback of upgrade job", "consumes": ["application/json"], "operationId": "rollback"}}}, "schemes": ["http", "https"], "tags": [{"name": "Upgrade Rest Service v1", "description": "Upgrade Rest Service"}], "definitions": {"Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "Instant": {"type": "object", "properties": {"epochSecond": {"type": "integer", "format": "int64"}, "nano": {"type": "integer", "format": "int32"}}}, "ZoneOffset": {"type": "object", "properties": {"rules": {"$ref": "#/definitions/ZoneRules"}, "totalSeconds": {"type": "integer", "format": "int32"}, "id": {"type": "string"}}}, "UpgradeState": {"type": "object", "properties": {"startTime": {"$ref": "#/definitions/ZonedDateTime"}, "stateId": {"type": "integer", "format": "int64"}, "newSolutionName": {"type": "string"}, "state": {"type": "string"}, "lastMessage": {"type": "string"}, "previousSolutionSnapshots": {"items": {"type": "string"}, "type": "array"}, "previousSolutionName": {"type": "string"}, "currentProgress": {"$ref": "#/definitions/Progress"}}}, "ZonedDateTime": {"type": "object", "properties": {"dayOfWeek": {"enum": ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"], "type": "string"}, "hour": {"type": "integer", "format": "int32"}, "zone": {"$ref": "#/definitions/ZoneId"}, "nano": {"type": "integer", "format": "int32"}, "year": {"type": "integer", "format": "int32"}, "month": {"enum": ["JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER"], "type": "string"}, "chronology": {"$ref": "#/definitions/Chronology"}, "second": {"type": "integer", "format": "int32"}, "dayOfYear": {"type": "integer", "format": "int32"}, "offset": {"$ref": "#/definitions/ZoneOffset"}, "monthValue": {"type": "integer", "format": "int32"}, "minute": {"type": "integer", "format": "int32"}, "dayOfMonth": {"type": "integer", "format": "int32"}}}, "UpgradeRequestRO": {"type": "object", "properties": {"move": {"default": false, "type": "boolean"}, "includeShared": {"default": false, "type": "boolean"}, "upgradeList": {"items": {"$ref": "#/definitions/UpgradeSolutionRO"}, "type": "array"}}}, "SubStep": {"type": "object", "properties": {"application": {"type": "string"}, "currentSubStep": {"type": "integer", "format": "int32"}, "totalSubSteps": {"type": "integer", "format": "int32"}}}, "ZoneOffsetTransitionRule": {"type": "object", "properties": {"standardOffset": {"$ref": "#/definitions/ZoneOffset"}, "dayOfWeek": {"enum": ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"], "type": "string"}, "offsetAfter": {"$ref": "#/definitions/ZoneOffset"}, "dayOfMonthIndicator": {"type": "integer", "format": "int32"}, "month": {"enum": ["JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER"], "type": "string"}, "offsetBefore": {"$ref": "#/definitions/ZoneOffset"}, "timeDefinition": {"enum": ["UTC", "WALL", "STANDARD"], "type": "string"}, "midnightEndOfDay": {"default": false, "type": "boolean"}, "localTime": {"$ref": "#/definitions/LocalTime"}}}, "ZoneId": {"type": "object", "properties": {"rules": {"$ref": "#/definitions/ZoneRules"}, "id": {"type": "string"}}}, "Chronology": {"type": "object", "properties": {"id": {"type": "string"}, "calendarType": {"type": "string"}}}, "UpgradeStateRO": {"type": "object", "properties": {"startTime": {"$ref": "#/definitions/ZonedDateTime"}, "stateId": {"type": "integer", "format": "int64"}, "newSolutionName": {"type": "string"}, "state": {"type": "string"}, "lastMessage": {"type": "string"}, "previousSolutionSnapshots": {"items": {"type": "string"}, "type": "array"}, "progress": {"readOnly": true, "$ref": "#/definitions/Progress"}, "previousSolutionName": {"type": "string"}}, "description": "The information about an upgrade state"}, "UpgradeSolutionRO": {"type": "object", "properties": {"solutionName": {"type": "string"}, "previousVersion": {"type": "string"}, "newVersion": {"type": "string"}}}, "ZoneOffsetTransition": {"type": "object", "properties": {"offsetAfter": {"$ref": "#/definitions/ZoneOffset"}, "dateTimeBefore": {"type": "string", "format": "date-time"}, "overlap": {"default": false, "type": "boolean"}, "gap": {"default": false, "type": "boolean"}, "duration": {"$ref": "#/definitions/Duration"}, "offsetBefore": {"$ref": "#/definitions/ZoneOffset"}, "instant": {"$ref": "#/definitions/Instant"}, "dateTimeAfter": {"type": "string", "format": "date-time"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "Duration": {"type": "object", "properties": {"seconds": {"type": "integer", "format": "int64"}, "units": {"items": {"$ref": "#/definitions/TemporalUnit"}, "type": "array"}, "zero": {"default": false, "type": "boolean"}, "negative": {"default": false, "type": "boolean"}, "nano": {"type": "integer", "format": "int32"}}}, "Progress": {"type": "object", "properties": {"totalSteps": {"type": "integer", "format": "int32"}, "currentStep": {"type": "integer", "format": "int32"}, "subStep": {"$ref": "#/definitions/SubStep"}}}, "ZoneRules": {"type": "object", "properties": {"transitionRules": {"items": {"$ref": "#/definitions/ZoneOffsetTransitionRule"}, "type": "array"}, "transitions": {"items": {"$ref": "#/definitions/ZoneOffsetTransition"}, "type": "array"}, "fixedOffset": {"default": false, "type": "boolean"}}}, "UpgradeJob": {"type": "object", "properties": {"states": {"items": {"$ref": "#/definitions/UpgradeState"}, "type": "array"}, "move": {"default": false, "type": "boolean"}, "id": {"type": "integer", "format": "int64"}, "includeShared": {"default": false, "type": "boolean"}, "startTime": {"type": "string", "format": "date-time"}}}, "TemporalUnit": {"type": "object", "properties": {"duration": {"$ref": "#/definitions/Duration"}, "timeBased": {"default": false, "type": "boolean"}, "durationEstimated": {"default": false, "type": "boolean"}, "dateBased": {"default": false, "type": "boolean"}}}, "UpgradeJobRO": {"type": "object", "properties": {"states": {"items": {"$ref": "#/definitions/UpgradeStateRO"}, "type": "array"}, "startTime": {"type": "string"}}, "description": "The information about an upgrade"}, "LocalTime": {"type": "object", "properties": {"second": {"type": "integer", "format": "int32"}, "minute": {"type": "integer", "format": "int32"}, "hour": {"type": "integer", "format": "int32"}, "nano": {"type": "integer", "format": "int32"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_commissioning.json b/tapi/resources/MCP_4.0.0_commissioning.json
deleted file mode 100644
index b1e256d93f54bc7ecc751922997af879fbf7746f..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_commissioning.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "2.0.12", "description": "Commission equipment topologies and manage commissioning scripts\n", "title": "Commissioning"}, "paths": {"/commissioning/api/v1/uap-6500-1/": {"get": {"responses": {"200": {"description": "User has 6500 Level 1 Access privileges."}, "500": {"description": "User does not have any access privileges."}}, "summary": "Determine User Access Level 1 Privilege", "description": "Validate User Access Level 1 Privilege", "tags": ["User Access Privileges Management"]}}, "/commissioning/api/v1/policyTypes/": {"get": {"responses": {"200": {"description": "Successfully retrieved policy types.", "schema": {"type": "object", "properties": {"data": {"items": {"type": "object", "properties": {"handler_class": {"type": "string"}, "supported_operation": {"type": "string"}, "master_template": {"type": "string"}, "defaults_file": {"type": "string"}, "policy_type": {"type": "string"}}}, "type": "array"}}, "title": "PolicyTypesData"}}, "500": {"description": "Retrieval of policy types failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "summary": "Get all policy types", "description": "Use this API to retrieve all policy types supported in commissioning.", "tags": ["Policy Management"]}}, "/commissioning/api/v1/policyDefaults/": {"put": {"responses": {"201": {"description": "Successfully updated defaults of a policy."}, "500": {"description": "Defaults update failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "summary": "Set custom defaults for a policy", "description": "Use this API to set the custom defaults for a policy.\n\nPrerequisite: Policy must exist in commissioning.\n", "parameters": [{"required": true, "type": "string", "description": "Id of policy.", "name": "id", "in": "query"}, {"schema": {"$ref": "#/definitions/defaults"}, "required": true, "description": "Value of defaults.", "name": "defaults", "in": "body"}], "tags": ["Policy Defaults Management"]}, "post": {"responses": {"201": {"description": "Successfully updated defaults for a policy."}, "500": {"description": "Defaults update failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "summary": "Set custom defaults for a policy", "description": "Use this API to set the custom defaults for a policy.\n\nPrerequisite: Policy type for this policy must exist in commissioning.\n", "parameters": [{"required": true, "type": "string", "description": "Id of policy.", "name": "id", "in": "query"}, {"schema": {"$ref": "#/definitions/defaults"}, "required": true, "description": "Value of defaults", "name": "defaults", "in": "body"}], "tags": ["Policy Defaults Management"]}, "delete": {"responses": {"200": {"description": "Successfully reset defaults of a policy."}, "500": {"description": "Reset of defaults failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find policyId parameter."}}, "summary": "Reset defaults of a policy", "description": "Use this API to reset defaults for a policy.\n\nPrerequisite: Policy must exist for specified policy id.\n", "parameters": [{"required": true, "type": "string", "description": "Id of the policy", "name": "id", "in": "query"}], "tags": ["Policy Defaults Management"]}, "get": {"responses": {"200": {"description": "Successfully retrieved defaults for specified policy id.", "schema": {"type": "object", "properties": {"data": {"type": "object"}}, "title": "DefaultsData"}}, "500": {"description": "Retrieval of defaults failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find policyId parameter."}}, "summary": "Get defaults of a policy", "description": "Use this API to retrieve defaults for a policy or to retrieve defaults for all policies of a specific policy type or to retrieve defaults for all policies.\n\nPrerequisite: Policy must exist for specified policy id.\n", "parameters": [{"required": false, "type": "string", "description": "Id of the policy", "name": "id", "in": "query"}, {"required": false, "type": "string", "description": "Type of the policy", "name": "type", "in": "query"}], "tags": ["Policy Defaults Management"]}}, "/commissioning/api/v1/deployedIPv4Data/": {"post": {"responses": {"201": {"description": "Successfully loaded shelves IPv4 data."}, "500": {"description": "Failed to load shelves IPv4 data, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "parameters": [{"schema": {"$ref": "#/definitions/deployedNetwork"}, "required": true, "description": "deployed Network object.", "name": "deployedNetwork", "in": "body"}], "tags": ["Deployed Network IPv4 Management"], "deprecated": true, "summary": "Load deployed shelves IPv4 data", "description": "Use this API to load deployed shelves IPv4 data into commissioning.\n\nPrerequisite: Shelves are already deployed in the network and are not commissioned using scripts generated by commissioning"}, "delete": {"responses": {"200": {"description": "Successfully deleted shelf IPv4 data."}, "500": {"description": "Internal Error in deletion of Shelf, error message provided in logs and response."}, "400": {"description": "Bad Request, ShelfNumber or Tid is not valid or does not exist."}}, "parameters": [{"schema": {"$ref": "#/definitions/deployedShelfRemoval"}, "required": true, "description": "Tid with ShelfNumber.", "name": "data", "in": "body"}], "tags": ["Deployed Network IPv4 Management"], "deprecated": true, "summary": "Delete deployed shelf IPv4 data", "description": "Use this API to delete deployed shelf IPv4 data."}, "get": {"responses": {"200": {"description": "Successfully retrieved deployed shelves IPv4 data.", "schema": {"type": "object", "properties": {"deployedShelf": {"items": {"type": "object", "properties": {"projectId": {"type": "string"}, "shelfIP": {"type": "string"}, "usage": {"type": "string"}, "ospfArea": {"type": "string"}, "projectName": {"type": "string"}, "tid": {"type": "string"}, "shelfNumber": {"type": "string"}}}, "type": "array"}}, "title": "Deployed Shelf"}}, "500": {"description": "Failed to retrieve deployed shelves IPv4 data, error message provided in logs and response."}}, "parameters": [{"required": true, "type": "string", "description": "Target Identifier for shelves in deployed IPv4 network", "name": "tid", "in": "query"}], "tags": ["Deployed Network IPv4 Management"], "deprecated": true, "summary": "Get deployed shelves IPv4 data", "description": "Use this API to retrieve deployed IPv4 network data for shelves. \n\nPrerequisite: IPv4 network data must be uploaded for deployed shelf."}}, "/commissioning/api/v1/uap-6500-5/": {"get": {"responses": {"200": {"description": "User has 6500 Level 5 Access privileges."}, "500": {"description": "User does not have Level 5 Access privileges."}}, "summary": "Determine User Access Level 5 Privilege", "description": "Validate User Access Level 5 Privilege", "tags": ["User Access Privileges Management"]}}, "/commissioning/api/v1/scripts/": {"post": {"responses": {"200": {"description": "Successfully generated commissioning scripts.", "schema": {"$ref": "#/definitions/scriptsSummaryData", "type": "object", "title": "CommissioningScriptsData"}}, "500": {"description": "Generation of commissioning scripts failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find projectname parameter."}}, "summary": "Generate and return commissioning scripts", "description": "Use this API to generate the commissioning scripts for a planned project.\n\nPrerequisite: Project must have been planned, committed and deployment planning data(example: TID, IP and FIC) must have been provided.\n", "parameters": [{"required": true, "type": "string", "description": "Project Name of planned network", "name": "projectname", "in": "query"}, {"required": false, "type": "string", "description": "Policy id of commissioning policy to be used", "name": "policyid", "in": "query"}], "tags": ["Scripts Management"]}, "delete": {"responses": {"200": {"description": "Successfully deleted commissioning scripts."}, "500": {"description": "Deletion of commissioning scripts failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find projectname parameter."}}, "summary": "Delete commissioning scripts", "description": "Use this API to delete the commissioning scripts for a project name.\n\nPrerequisite: Commissioning scripts must exist for specified project.\n", "parameters": [{"required": true, "type": "string", "description": "Project Name of planned network", "name": "projectname", "in": "query"}], "tags": ["Scripts Management"]}, "get": {"responses": {"200": {"description": "Successfully retrieved commissioning scripts.", "schema": {"type": "object", "properties": {"data": {"type": "object", "properties": {"projectName": {"type": "string"}, "nodes": {"items": {"type": "object", "properties": {"nodeType": {"type": "string"}, "nodeName": {"type": "string"}, "shelves": {"items": {"type": "object", "properties": {"shelfId": {"type": "string"}, "scripts": {"items": {"type": "object", "properties": {"release": {"type": "string"}, "sequenceId": {"type": "string"}, "commands": {"items": {"type": "object", "properties": {"commandType": {"type": "string"}, "command": {"type": "string"}}}, "type": "array"}, "deviceType": {"type": "string"}, "scriptId": {"type": "string"}}}, "type": "array"}}}, "type": "array"}}}, "type": "array"}, "relatedProjects": {"items": {"type": "string"}, "type": "array"}}}}, "title": "CommissioningScriptsData"}}, "500": {"description": "Retrieval of commissioning scripts failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find projectname parameter."}}, "summary": "Get commissioning scripts", "description": "Use this API to fetch the commissioning scripts for a planned project.\n\nPrerequisite: Commissioning scripts must exist for specified project.\n", "parameters": [{"required": true, "type": "string", "description": "Project Name of planned network", "name": "projectname", "in": "query"}, {"required": false, "type": "string", "description": "Device type planned network i.e., 6500, Waveserver", "name": "devicetype", "in": "query"}, {"required": false, "type": "string", "description": "Node name in a planned network", "name": "nodename", "in": "query"}, {"required": false, "type": "string", "description": "Script format to be returned i.e., ztpScript, json, cli", "name": "format", "in": "query"}], "tags": ["Scripts Management"]}}, "/commissioning/api/v1/scriptsSummary/": {"get": {"responses": {"200": {"description": "Successfully retrieved commissioning scripts summary.", "schema": {"type": "object", "properties": {"data": {"items": {"type": "object", "$ref": "#/definitions/scriptsSummaryData"}, "type": "array"}}, "title": "Scripts summary data"}}, "500": {"description": "Retrieval of scripts summary failed, error message provided in logs and response."}}, "summary": "Get commissioning scripts summary", "description": "Use this API to retrieve summary of commissioning scripts.", "parameters": [{"type": "string", "description": "Project Name of planned network", "name": "projectname", "in": "query"}], "tags": ["Scripts Management"]}}, "/commissioning/api/v1/uap-6500-4/": {"get": {"responses": {"200": {"description": "User has 6500 Level 4 Access privileges."}, "500": {"description": "User does not have Level 4 Access privileges."}}, "summary": "Determine User Access Level 4 Privilege", "description": "Validate User Access Level 4 Privilege", "tags": ["User Access Privileges Management"]}}, "/commissioning/api/v2/reservedIP/": {"post": {"responses": {"201": {"description": "Successfully loaded IPAddress data."}, "500": {"description": "Failed to load IPAddress data, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "summary": "Reserved IPAddress of the Interface (shelf or craft) data", "description": "Use this API to load reserved shelf or craft IPAddress data into commissioning.\n\nPrerequisite: Shelves are already deployed in the network and are not commissioned using scripts generated by commissioning", "parameters": [{"schema": {"$ref": "#/definitions/reservedIP"}, "required": true, "description": "Reserved IPAddress of the Interface.", "name": "reservedIP", "in": "body"}], "tags": ["Reserved IPAddress Management"]}, "delete": {"responses": {"200": {"description": "Successfully deleted reserved IPAddress data."}, "500": {"description": "Internal Error in deletion of Shelf, error message provided in logs and response."}, "400": {"description": "Bad Request, ShelfNumber or Tid is not valid or does not exist."}}, "summary": "Reserved IPAddress Management", "description": "Use this API to delete reserved shelf IPAddress data.", "parameters": [{"schema": {"$ref": "#/definitions/deployedShelfRemoval"}, "required": true, "description": "Tid with ShelfNumber.", "name": "data", "in": "body"}], "tags": ["Reserved IPAddress Management"]}, "get": {"responses": {"200": {"description": "Successfully retrieved reserved shelves, crafts IPAddress data.", "schema": {"type": "object", "properties": {"reservedIPdata": {"items": {"type": "object", "properties": {"IP": {"type": "string"}, "projectId": {"type": "string"}, "ospfArea": {"type": "string"}, "type": {"type": "string"}, "tid": {"type": "string"}, "shelfNumber": {"type": "string"}, "projectName": {"type": "string"}}}, "type": "array"}}, "title": "Reserved IPAddress of Shelves or crafts"}}, "500": {"description": "Failed to retrieve  reserved shelves or craft IPAddress data, error message provided in logs and response."}}, "summary": "Get Reserved IPAddress data of Interface (shelves , crafts)", "description": "Use this API to retrieve reserved network data for shelves, crafts. \n\nPrerequisite: IPAddress network data must be uploaded for deployed shelf or craft.", "parameters": [{"required": true, "type": "string", "description": "Target Identifier for shelves with reserved IPAddress", "name": "tid", "in": "query"}], "tags": ["Reserved IPAddress Management"]}}, "/commissioning/api/v1/services/": {"post": {"responses": {"201": {"description": "Successfully provisioned services."}, "500": {"description": "Failed to provision services, error message provided in logs and response."}}, "summary": "Trigger service provisioning", "description": "Perform manual provisioning of all services like SNMP, NTP etc. which is normally done after successful discovery of network element.", "parameters": [{"required": false, "type": "string", "description": "Session id of the network element.", "name": "sessionid", "in": "query"}, {"required": false, "type": "string", "description": "Node name in a planned network.", "name": "nodename", "in": "query"}, {"description": "The provisioning of the service to be trigger against provided type of network elements e.g. 6500, Waveserver, Waveserver Ai", "required": false, "examples": ["Waveserver Ai", "Waveserver", "6500"], "in": "query", "type": "string", "name": "deviceType"}, {"description": "Service to be provisioned, if not provided by default all applicable services will be provisioned", "required": false, "examples": ["license", "ntp", "snmp"], "in": "query", "type": "string", "name": "service"}], "tags": ["Service Management"]}, "get": {"responses": {"200": {"description": "Successfully retrieved provisioned services state."}, "500": {"description": "Retrieval of provisioned services state failed, error message provided in logs and response."}}, "summary": "Get provisioned services state", "description": "Retrieve provisioned services state.", "tags": ["Service Management"]}}, "/commissioning/api/v1/policy/": {"put": {"responses": {"200": {"description": "Successfully updated policy."}, "500": {"description": "Policy update failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "summary": "Update a policy", "description": "Use this API to update a policy state.\n\nPrerequisite: Policy must exist in commissioning.\n", "parameters": [{"required": true, "type": "string", "description": "Id of policy.", "name": "id", "in": "query"}, {"schema": {"$ref": "#/definitions/policy"}, "required": true, "description": "Policy object.", "name": "policy", "in": "body"}], "tags": ["Policy Management"]}, "post": {"responses": {"200": {"description": "Successfully created policy.", "schema": {"type": "object", "properties": {"description": {"type": "string"}, "policy_name": {"type": "string"}, "state": {"type": "string"}, "policy_type": {"type": "string"}, "policy_id": {"type": "string"}, "customer_name": {"type": "string"}}, "title": "PolicyData"}}, "500": {"description": "Policy creation failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "summary": "Create a policy", "description": "Use this API to create a policy.\n\nPrerequisite: Policy type for this policy must exist in commissioning.\n", "parameters": [{"schema": {"$ref": "#/definitions/policy"}, "required": true, "description": "Policy object.", "name": "newPolicy", "in": "body"}], "tags": ["Policy Management"]}, "delete": {"responses": {"200": {"description": "Successfully deleted policy."}, "500": {"description": "Deletion of policy failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find policy id parameter."}}, "summary": "Delete policy details", "description": "Use this API to delete a policy.\n\nPrerequisite: Policy must exist for specified policy id.\n", "parameters": [{"required": true, "type": "string", "description": "Id of the policy", "name": "id", "in": "query"}], "tags": ["Policy Management"]}, "get": {"responses": {"200": {"description": "Successfully retrieved policy details.", "schema": {"type": "object", "properties": {"data": {"items": {"type": "object", "properties": {"description": {"type": "string"}, "policy_name": {"type": "string"}, "state": {"type": "string"}, "policy_type": {"type": "string"}, "policy_id": {"type": "string"}, "customer_name": {"type": "string"}}}, "type": "array"}}, "title": "Policies data"}}, "500": {"description": "Retrieval of policy failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find policy id parameter."}}, "summary": "Get policy details", "description": "Use this API to retrieve a policy by id or to retrieve all policies.\n\nPrerequisite: Policy must exist for specified policy id.\n", "parameters": [{"required": false, "type": "string", "description": "Id of the policy", "name": "id", "in": "query"}], "tags": ["Policy Management"]}}, "/commissioning/api/v1/uap-6500-2/": {"get": {"responses": {"200": {"description": "User has 6500 Level 2 Access privileges."}, "500": {"description": "User does not have Level 2 Access privileges."}}, "summary": "Determine User Access Level 2 Privilege", "description": "Validate User Access Level 2 Privilege", "tags": ["User Access Privileges Management"]}}, "/commissioning/api/v1/uap-6500-3/": {"get": {"responses": {"200": {"description": "User has 6500 Level 3 Access privileges."}, "500": {"description": "User does not have Level 3 Access privileges."}}, "summary": "Determine User Access Level 3 Privilege", "description": "Validate User Access Level 3 Privilege", "tags": ["User Access Privileges Management"]}}, "/commissioning/api/v2/ipsubnet/": {"post": {"responses": {"201": {"description": "Successfully allocated IP Subnet and OspfArea."}, "500": {"description": "Failed to Allocate IPSubnet, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters OspfArea or IPsubnet Parameter is wrong."}}, "summary": "Allocate IP Subnet and ospfArea Addresses", "description": "Use this API to Allocate new IP Subnet and OspfArea for the Shelf,\n\n Provide IP address with Subnet and CIDR for Shelf ", "parameters": [{"schema": {"$ref": "#/definitions/subnet"}, "required": false, "description": "ipsubnet object.", "name": "IPAddressSubnet", "in": "body"}], "tags": ["IP Subnet Management"]}, "delete": {"responses": {"200": {"description": "Successfully deleted IPSubnet."}, "500": {"description": "Internal Error in deletion of OspfArea, error message provided in logs and response."}, "400": {"description": "Bad Request OspfArea or subnetId is not valid or does not exist."}}, "summary": "Delete IP Subnet OspfArea Address", "description": "Use this API to delete allocated IPSubnet for given OspfArea.", "parameters": [{"schema": {"$ref": "#/definitions/ipremoval"}, "required": true, "description": "subnetId with OspfArea.", "name": "data", "in": "body"}], "tags": ["IP Subnet Management"]}, "get": {"responses": {"200": {"description": "Successfully retrieved allocated IPAddress Subnets.", "schema": {"$ref": "#/definitions/subnetallocation"}}, "500": {"description": "Retrieval of IPSubnet failed, error message provided in logs and response."}}, "summary": "Get IP Subnet details", "description": "Use this API to retrieve allocated IP Subnet.", "tags": ["IP Subnet Management"]}}, "/commissioning/api/v1/ipsubnet/": {"post": {"responses": {"201": {"description": "Successfully allocated IPv4 Address and OspfArea."}, "500": {"description": "Failed to Allocate IPAddress, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters OspfArea or ShelfIP Parameter is wrong."}}, "parameters": [{"schema": {"$ref": "#/definitions/ipsubnet"}, "required": true, "description": "ipsubnet object.", "name": "ipsubnet", "in": "body"}], "tags": ["IPv4 Subnet Management"], "deprecated": true, "summary": "Allocate IPv4 shelf subnet and ospfArea Addresses", "description": "Use this API to Allocate new IPv4 Subnet and OspfArea for the Shelf,\n\n Provide IPv4 address with Subnet and CIDR for Shelf "}, "delete": {"responses": {"200": {"description": "Successfully deleted ospfArea."}, "500": {"description": "Internal Error in deletion of OspfArea, error message provided in logs and response."}, "400": {"description": "Bad Request OspfArea or subnetId is not valid or does not exist."}}, "parameters": [{"schema": {"$ref": "#/definitions/ipremoval"}, "required": true, "description": "subnetId with OspfArea.", "name": "data", "in": "body"}], "tags": ["IPv4 Subnet Management"], "deprecated": true, "summary": "Delete IPv4 OspfArea Address", "description": "Use this API to delete allocated IPv4 OspfArea Address."}, "get": {"deprecated": true, "responses": {"200": {"description": "Successfully retrieved allocated IPAddress Subnets.", "schema": {"type": "object", "properties": {"ipsubnet": {"items": {"type": "object", "properties": {"usage": {"type": "string"}, "subnetId": {"type": "string"}, "ospfArea": {"type": "string"}, "shelfIP": {"items": {"type": "object"}, "type": "array"}}}, "type": "array"}}, "title": "IPSubnet"}}, "500": {"description": "Retrieval of IPv4 Address allocation failed, error message provided in logs and response."}}, "summary": "Get IPv4 Subnet details", "description": "Use this API to retrieve allocated IPv4 Subnet.", "tags": ["IPv4 Subnet Management"]}}, "/commissioning/api/v1/equipment/": {"post": {"responses": {"201": {"description": "Successfully submitted request to commission topologies of an equipment."}, "500": {"description": "Failed to commission equipment topologies, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "summary": "Commission topologies of an equipment", "description": "Use this API to commission the topologies of a provisioned equipment.\n\nPrerequiste: Equipment project must have been planned, committed and equipment must be provisioned. \n", "parameters": [{"schema": {"$ref": "#/definitions/newEquipment"}, "required": true, "description": "New equipment to be commissioned.", "name": "newEquipment", "in": "body"}], "tags": ["Equipment Commissioning"]}}, "/commissioning/api/v1/ipaddress/": {"get": {"responses": {"200": {"description": "Successfully Retrieved IPAddress.", "schema": {"type": "object", "properties": {"data": {"items": {"type": "object", "$ref": "#/definitions/ipaddressdata"}, "type": "array"}}, "title": "IPAddress"}}, "500": {"description": "Retrieval of IPAddress failed. error message provided in logs and response."}}, "summary": "Get IPAddress under a given subnet or tid", "description": "Retrieve IPAddress from given subnet or tid.", "parameters": [{"type": "string", "description": "tid or Target Identifier", "name": "tid", "in": "query"}, {"type": "string", "description": "Subnet", "name": "subnet", "in": "query"}], "tags": ["Retrieval of IPAdress Management"]}}}, "schemes": ["http", "https"], "produces": ["application/json"], "basePath": "/", "tags": [{"name": "Scripts Management", "description": "Manage commissioning scripts for shelf and its related equipment projects"}, {"name": "Equipment Commissioning", "description": "Commission an equipment and its topologies"}, {"name": "Policy Management", "description": "Manage policies required for commissioning"}, {"name": "Policy Defaults Management", "description": "Manage default values for each policy"}, {"name": "IP Subnet Management", "description": "Allocate IPv4 and IPv6 subnet"}, {"name": "IPv4 Subnet Management", "description": "Allocate IPv4 subnet address for shelf"}, {"name": "Reserved IPAddress Management", "description": "Load Reserved IPAddress for the Interface"}, {"name": "Deployed Network IPv4 Management", "description": "Manage deployed IPv4 address for shelf"}, {"name": "Retrieval of IPAdress Management", "description": "Retrieve IPAddress from given subnet or tid"}, {"name": "Service Management", "description": "Perform provisioning of services"}, {"name": "User Access Privileges Management", "description": "Determine 6500 User Access Privileges"}], "definitions": {"l2Data": {"type": "object", "description": "Describes a single entry in the L2Data", "properties": {"loopbackAddresses": {"items": {"type": "string"}, "type": "array", "description": "The loopback addresses in the NE."}, "shelf": {"type": "string", "description": "Shelf number"}, "dynamicLabelRange": {"description": "The operational dynamic label range.", "$ref": "#/definitions/range"}, "staticVcLabelRange": {"description": "The operational static VC label range.", "$ref": "#/definitions/range"}, "eqptGrp": {"type": "string", "description": "The group ID obtained from RTRV-EQPTGRP for the SAOS card on which the entity resides"}, "staticTunnelLabelRange": {"description": "The operational static tunnel label range.", "$ref": "#/definitions/range"}}}, "networkConstructModelType": {"type": "string", "description": "The model type of network construct, TPE, FRE."}, "ipremoval": {"required": ["subnetId", "ospfArea"], "type": "object", "properties": {"subnetId": {"type": "string", "description": "Subnet id"}, "ospfArea": {"type": "string", "description": "ospfArea of the Shelf"}}}, "oneToOneRelationship": {"type": "object", "description": "The one-to-one relationship", "properties": {"data": {"$ref": "#/definitions/relationshipData"}}}, "deployedNetwork": {"items": {"type": "object", "properties": {"projectId": {"type": "string"}, "shelfIP": {"type": "string"}, "usage": {"type": "string"}, "ospfArea": {"type": "string"}, "projectName": {"type": "string"}, "tid": {"type": "string"}, "shelfNumber": {"type": "string"}}}, "type": "array"}, "networkConstructExpectationAttributes": {"type": "object", "properties": {"ipAddress": {"type": "string", "description": "IP address used for expectations.", "title": "IP Address"}, "name": {"type": "string", "description": "Name (e.g. TID) of the Network Construct", "title": "Name"}, "shelfType": {"type": "string", "description": "Shelf type of the network construct(example - ILA, DGE.", "title": "Shelf type"}}}, "networkConstructUserData": {"type": "object", "description": "User data"}, "remoteNetworkConstructRoute": {"type": "object", "description": "The remote NE connection data", "properties": {"additionalAttributes": {"$ref": "#/definitions/additionalAttributes"}, "connectionAddress": {"items": {"$ref": "#/definitions/remoteNetworkConstructRoutingConnectionAddress"}, "type": "array", "description": "Connection addresses of the NE"}, "name": {"type": "string", "description": "TL1 target identifier for an NE (e.g. G4218-2NCP06)"}}}, "relationshipData": {"type": "object", "description": "The relationship type and identifier", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "subnet": {"type": "object", "properties": {"data": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"IP": {"type": "string"}, "ospfArea": {"type": "string"}, "ospfAreaV3": {"type": "string"}, "IP6": {"type": "string"}}}, "type": {"type": "string"}}}}, "title": "IPAddressSubnet"}, "scriptsSummaryData": {"required": ["devicetypesURLs", "projectName", "nodes", "supportedFormats"], "type": "object", "properties": {"devicetypesURLs": {"items": {"required": ["deviceType", "scriptLinks"], "type": "object", "properties": {"deviceType": {"default": "", "type": "string", "description": "The device type value", "examples": ["WaveserverAi", "6500"]}, "scriptLinks": {"items": {"required": ["link", "format"], "type": "object", "properties": {"link": {"type": "string", "description": "A URL to get the commissioning scripts for a device type.", "examples": ["http://localhost:8080/commissioning/api/v1/scripts/?projectname=WS6500Project&devicetype=WaveserverAi&format=ztpScripts"]}, "format": {"type": "string", "description": "Format of the commissioning scripts data, for example - json, cli, ztpScripts", "examples": ["ztpScripts", "cli", "json"]}}}, "type": "array", "description": "The URLs array to get commissioning scripts for each device type."}}}, "type": "array", "description": "The URLs to get commissioning scripts for each device types available in project."}, "projectName": {"type": "string", "description": "Project name for which commissioning scripts are available."}, "nodes": {"items": {"required": ["nodeType", "shelves", "deviceType", "nodeName", "scriptLinks"], "type": "object", "properties": {"deviceType": {"type": "string", "description": "Device type", "examples": ["6500"]}, "scriptLinks": {"items": {"required": ["link", "format"], "type": "object", "properties": {"link": {"type": "string", "description": "The URL to get the commissioning script for a node name.", "examples": ["http://localhost:8080/commissioning/api/v1/scripts/?projectname=WS6500Project&devicetype=6500&nodename=sidtid1"]}, "format": {"type": "string", "description": "Format of the commissioning scripts data, for example - json, cli, ztpScripts", "examples": ["ztpScripts", "cli", "json"]}}}, "type": "array", "description": "The URLs array to get the commissioning script for a node."}, "nodeType": {"type": "string", "description": "Node type of the node.", "examples": ["OADM"]}, "nodeName": {"type": "string", "description": "Node name", "examples": ["NE1"]}, "shelves": {"items": {"required": ["release", "shelfId", "primary"], "type": "object", "properties": {"release": {"type": "string", "description": "Release of the node.", "examples": ["12.1"]}, "shelfId": {"type": "string", "description": "Shelf id or Shelf number", "examples": ["1"]}, "primary": {"type": "string", "description": "Inform if primary is enabled or not.", "examples": ["Enable"]}}}, "type": "array", "description": "Shelves available in the node."}}}, "type": "array", "description": "Nodes available in the project."}, "supportedFormats": {"items": {"type": "string", "examples": ["ztpScripts", "cli", "json"]}, "type": "array", "description": "Support formats of commissioning scripts available for this project."}}}, "planningData": {"type": "object", "description": "Data associated with Resource Planning Tool(RPT).", "properties": {"id": {"type": "string", "description": "This field maps to the project id field in the RPT. This identifier is used by commissioning to retrieve auto-slat data from RPT."}, "name": {"type": "string", "description": "This field maps to the project name field in the RPT."}}}, "commissionProjectData": {"required": ["data"], "type": "object", "properties": {"data": {"required": ["attributes"], "type": "object", "description": "Data for nodes and planning projects identifiers.", "properties": {"attributes": {"type": "object", "description": "Attributes required for commissionining shelves available in planning project.", "properties": {"nodes": {"items": {"$ref": "#/definitions/networkConstructData"}, "type": "array"}, "planning": {"$ref": "#/definitions/planningData"}, "expectations": {"items": {"$ref": "#/definitions/networkConstructExpectationsData"}, "type": "array"}}}}}}}, "location": {"type": "object", "description": "Location of the entity", "properties": {"mplsLabel": {"type": "string", "description": "MPLS tunnel forward/reverse in/out label"}, "baynum": {"type": "string", "description": "Bay number"}, "mcId": {"type": "string", "description": "The identifier of the media channel"}, "frequency": {"type": "string", "description": "The frequency of the channel"}, "subslot": {"type": "string"}, "wavelength": {"type": "string"}, "eqptGrp": {"type": "string", "description": "The group ID obtained from RTRV-EQPTGRP for the SAOS card on which the entity resides"}, "port": {"type": "string"}, "slot": {"type": "string"}, "index": {"type": "string"}, "tunnelRole": {"type": "string", "description": "MPLS tunnel role"}, "vce": {"type": "string", "description": "The VS name of the CTP entity"}, "subport": {"type": "string"}, "logicalPortName": {"type": "string"}, "protectionRole": {"type": "string", "description": "Protection role"}, "lagName": {"type": "string", "description": "Name of the LAG"}, "fic": {"type": "string", "description": "Frame identification code"}, "odu2_index": {"type": "string"}, "pseudoWireId": {"type": "string", "description": "DEPRECATED The identifier of Pseudo-Wire CTP"}, "shelf": {"type": "string", "description": "Shelf number"}, "vlan": {"type": "string", "description": "The VLAN ID of the CTP entity"}, "lspName": {"type": "string", "description": "MPLS tunnel name"}, "logicalId": {"type": "string"}, "primaryLspName": {"type": "string", "description": "The primary MPLS tunnel name"}, "interfaceName": {"type": "string", "description": "Interface name of the IP FTP"}, "odu4_index": {"type": "string"}, "subshelf": {"type": "string"}, "managementType": {"type": "string", "description": "Management protocol type"}, "pseudoWireName": {"type": "string", "description": "The name of the Pseudo-Wire on the CTP"}, "rack": {"type": "string", "description": "Rack number"}, "interfaceIp": {"type": "string", "description": "DEPRECATED The IP address of MPLS interface"}}}, "policy": {"required": ["policyName", "policyType"], "type": "object", "properties": {"policyName": {"type": "string", "description": "Name of policy"}, "description": {"type": "string", "description": "Description of policy"}, "state": {"type": "string", "description": "State of policy. For example: New, Enable, Disable"}, "policyType": {"type": "string", "description": "Type of policy"}, "policyId": {"type": "string", "description": "Id of policy"}, "customerName": {"type": "string", "description": "Customer notes"}}}, "networkConstructRelationships": {"type": "object", "properties": {"physicalLocation": {"$ref": "#/definitions/oneToOneRelationship"}, "parentNetworkConstruct": {"$ref": "#/definitions/oneToOneRelationship"}, "managementSession": {"$ref": "#/definitions/oneToOneRelationship"}, "networkConstructExpectations": {"$ref": "#/definitions/oneToManyRelationship"}, "concrete": {"$ref": "#/definitions/oneToManyRelationship"}, "childrenNetworkConstruct": {"$ref": "#/definitions/oneToManyRelationship"}}}, "equipmentData": {"type": "object", "description": "The equipment data", "properties": {"relationships": {"$ref": "#/definitions/equipmentRelationships"}, "attributes": {"$ref": "#/definitions/equipmentAttributes"}, "type": {"type": "string", "description": "The equipment resource type"}, "id": {"type": "string", "description": "The unique identifier for the equipment resource"}}}, "oneToManyRelationship": {"type": "object", "description": "The one-to-many relationship", "properties": {"data": {"items": {"$ref": "#/definitions/relationshipData"}, "type": "array", "description": "The one-to-many relationship"}}}, "ipaddressdata": {"items": {"type": "object", "properties": {"ipaddress": {"type": "string"}}}, "type": "array"}, "ipsubnet": {"required": ["shelfIP", "ospfArea"], "type": "object", "properties": {"shelfIP": {"type": "string", "description": "Shelf IPv4 subnet with CIDR"}, "usage": {"type": "string", "description": "IPSubnet is allocated for shelf, craft"}, "ospfArea": {"type": "string", "description": "ospfArea of the Shelf"}}}, "networkConstructExpectationRelationships": {"type": "object", "properties": {"physicalLocation": {"type": "object", "description": "The location of the network construct expectation is a one-to-one relationship", "$ref": "#/definitions/oneToOneRelationship"}, "parentNetworkConstruct": {"type": "object", "description": "The parent network construct is a one-to-one relationship", "$ref": "#/definitions/oneToOneRelationship"}, "equipmentIntent": {"type": "object", "description": "The one-to-one relationship to the equipment intent that created the expectation", "$ref": "#/definitions/oneToOneRelationship"}, "serviceIntent": {"type": "object", "description": "The one-to-one relationship to the service intent that created the expectation", "$ref": "#/definitions/oneToOneRelationship"}}}, "displayLabelMap": {"type": "object", "description": "Display label key/value pair map", "properties": {"additionalProperties": {"type": "string"}}}, "syncScope": {"description": "The synchronization scope", "properties": {"name": {"items": {"type": "string"}, "type": "array", "description": "sync scope name"}, "context": {"items": {"type": "string"}, "type": "string", "description": "sync scope context"}}}, "networkConstructIdentifier": {"type": "object", "description": "Various attributes added by a user to identify the device"}, "deployedShelfRemoval": {"required": ["tid", "shelfNumber"], "type": "object", "properties": {"tid": {"type": "string", "description": "Target Identifier of the shelf"}, "shelfNumber": {"type": "string", "description": "Shelf Number"}}}, "remoteNetworkConstructRoutingConnectionAddress": {"type": "object", "description": "The remote NE connection data", "properties": {"cost": {"type": "integer", "description": "Connection cost of the above mentioned address (optional)"}, "address": {"type": "string", "description": "Connection address of the NE"}}}, "equipmentSpec": {"type": "object", "description": "The specification of an equipment; can be either installed specification, the physical representation of the equipment, or provisioned specification, the logic representation of the equipment", "properties": {"additionalAttributes": {"$ref": "#/definitions/additionalAttributes"}, "hardwareVersion": {"type": "string", "description": "The hardware version"}, "serialNumber": {"type": "string", "description": "The serial number"}, "version": {"type": "string", "description": "The software version"}, "partNumber": {"type": "string", "description": "The part number"}, "type": {"type": "string", "description": "The type of equipment"}, "displayLabels": {"$ref": "#/definitions/displayLabelMap"}, "manufacturer": {"type": "string", "description": "The manufacturer"}}}, "reservedIP": {"items": {"type": "object", "properties": {"type": {"type": "string"}, "projectId": {"type": "string"}, "ospfAreaV3": {"type": "string"}, "ospfArea": {"type": "string"}, "IP6": {"type": "string"}, "IP": {"type": "string"}, "tid": {"type": "string"}, "shelfNumber": {"type": "string"}, "projectName": {"type": "string"}}}, "type": "array"}, "newEquipment": {"required": ["data"], "type": "object", "properties": {"data": {"required": ["attributes"], "type": "object", "description": "Data for commissioning an equipment.", "properties": {"attributes": {"type": "object", "description": "Attributes required for an equipment commissioning.", "properties": {"equipment": {"$ref": "#/definitions/equipmentData"}, "planning": {"$ref": "#/definitions/planningData"}, "networkConstruct": {"$ref": "#/definitions/networkConstructData"}}}}}}}, "additionalAttributes": {"type": "object", "description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "properties": {"additionalProperties": {"type": "string"}}}, "geoLocation": {"type": "object", "description": "The geography location of the device", "properties": {"latitude": {"type": "string", "description": "Latitude of the device location"}, "longitude": {"type": "string", "description": "Longitude of the device location"}, "zone": {"type": "string", "description": "Zone of the device location"}}}, "equipmentRelationships": {"type": "object", "description": "The equipment relationships", "properties": {"equipmentExpectations": {"$ref": "#/definitions/oneToManyRelationship"}, "networkConstruct": {"$ref": "#/definitions/oneToOneRelationship"}, "equipmentHolder": {"$ref": "#/definitions/oneToOneRelationship"}}}, "networkConstructExpectationsData": {"required": ["type"], "type": "object", "properties": {"relationships": {"$ref": "#/definitions/networkConstructExpectationRelationships"}, "attributes": {"$ref": "#/definitions/networkConstructExpectationAttributes"}, "type": {"type": "string", "description": "The network construct expectation type"}, "id": {"type": "string", "description": "The unique identifier of the network construct expectation"}}}, "equipmentAttributes": {"type": "object", "description": "The equipment attributes", "properties": {"category": {"type": "string", "description": "The equipment category"}, "additionalAttributes": {"$ref": "#/definitions/additionalAttributes"}, "cardType": {"type": "string", "description": "The card type"}, "siteName": {"type": "string", "description": "The site name associated with the equipment"}, "provisionedSpec": {"$ref": "#/definitions/equipmentSpec"}, "locations": {"items": {"$ref": "#/definitions/location"}, "type": "array", "description": "The list of locations associated with the equipment"}, "syncScopes": {"items": {"$ref": "#/definitions/syncScope"}, "type": "array", "description": "The sync scope for the equipment"}, "state": {"type": "string", "description": "The primary state of the equipment"}, "secondaryState": {"type": "string", "description": "The secondary state of the equipment"}, "siteId": {"type": "string", "description": "The site identifier associated with the equipment"}, "reservationState": {"type": "string", "description": "The reservation state of the equipment"}, "nativeName": {"type": "string", "description": "The native name of the equipment"}, "availabilityState": {"type": "string", "description": "The availability state of the equipment"}, "installedSpec": {"$ref": "#/definitions/equipmentSpec"}, "maintenanceMode": {"type": "boolean", "description": "Maintenance mode to indicate if the equipment is available or not to MCP. While in maintenance mode, MCP will not provision anything against this equipment (including TPE information)"}}}, "networkConstructAttributes": {"type": "object", "properties": {"associationState": {"type": "string", "description": "Association state of the network construct."}, "macAddress": {"type": "string", "description": "MAC address of the device."}, "softwareType": {"type": "string", "description": "Software type (example- OCP)"}, "memberFunction": {"type": "string", "description": "Member function of the network construct."}, "shelfType": {"type": "string", "description": "Shelf type of the network construct."}, "modelType": {"type": "string", "description": "The model type associated with this network construct.", "$ref": "#/definitions/networkConstructModelType"}, "softwareImage": {"type": "string", "description": "Software image"}, "accessIdentifier": {"type": "string", "description": "AID of the device."}, "l2Data": {"items": {"type": "object", "description": "L2 Configuration Data for the NE", "$ref": "#/definitions/l2Data"}, "type": "array"}, "numberOfShelves": {"type": "integer", "description": "Number of shelves (primary + member shelves in case of TIDc)"}, "typeGroup": {"type": "string", "description": "Resource adapter type group."}, "deviceType": {"type": "string", "description": "Device Type."}, "networkConstructType": {"type": "string", "description": "The type of network construct. It is used to represent the physical hierarchy of a network element."}, "capabilitySpecRef": {"type": "string", "description": "Name of the file which contains the constraint rules of the network device."}, "userData": {"$ref": "#/definitions/networkConstructUserData"}, "serialNumber": {"type": "string", "description": "Serial number (e.g. NNTMHQDP0001)."}, "additionalAttributes": {"$ref": "#/definitions/additionalAttributes"}, "geoLocation": {"$ref": "#/definitions/geoLocation"}, "name": {"type": "string", "description": "Name (e.g. TID) of the Network Construct."}, "resourceType": {"type": "string", "description": "Resource Type."}, "identifiers": {"items": {"type": "object", "description": "A list of attributes used to identify a specific Equipment", "$ref": "#/definitions/networkConstructIdentifier"}, "type": "array"}, "softwareVersion": {"type": "string", "description": "Software version running in the device."}, "subnetName": {"type": "string", "description": "Subnet name (e.g. ROADM1---ROADM2---SUBNET)"}, "ipAddress": {"type": "string", "description": "IP Address of Network Construct."}, "deviceVersion": {"type": "string", "description": "Device version (example- 6500 32-SLOT OPTICAL)."}}}, "subnetallocation": {"type": "object", "properties": {"data": {"items": {"type": "object", "properties": {"attribute": {"type": "object", "properties": {"IP": {"items": {"type": "string"}, "type": "array"}, "ospfArea": {"type": "string"}}}, "type": {"type": "string"}, "id": {"type": "string"}}}, "type": "array"}}, "title": "IPSubnet"}, "range": {"type": "object", "description": "Describes a Range attribute", "properties": {"maxValue": {"type": "integer", "description": "This defines the max value for the range."}, "minValue": {"type": "integer", "description": "This defines the min value for the range."}}}, "session": {"required": ["session_id"], "type": "object", "properties": {"session_id": {"type": "string", "description": "The data associated with this request."}}}, "defaults": {"required": ["data"], "type": "object", "properties": {"data": {"type": "object", "description": "Data for defaults of a policy."}}}, "networkConstructData": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/networkConstructRelationships"}, "attributes": {"$ref": "#/definitions/networkConstructAttributes"}, "type": {"type": "string", "description": "The Network Construct resource type"}, "id": {"type": "string", "description": "The unique identifier for the NetworkConstruct resource"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_configure_equipment_planning_and_provisioning_properties.json b/tapi/resources/MCP_4.0.0_configure_equipment_planning_and_provisioning_properties.json
deleted file mode 100644
index 8d749a0a1df7caebd99ea4b34081d0234c1f22eb..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_configure_equipment_planning_and_provisioning_properties.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Creation, deletion and modification of properties used for Equipment Planning and Provisioning", "title": "Configure Equipment Planning and Provisioning Properties"}, "paths": {"/ifd/api/v1/configResource": {"put": {"responses": {"default": {"description": "successful operation"}}, "description": "", "produces": ["application/json"], "tags": ["Configuration Resource v1"], "summary": "Updates and add configuration name and value", "consumes": ["application/json"], "operationId": "putConfiguration"}, "get": {"responses": {"default": {"description": "successful operation"}}, "produces": ["application/json"], "description": "", "tags": ["Configuration Resource v1"], "summary": "Get all existing configuration values", "operationId": "getAllConfigurations"}}, "/ifd/api/configResource/{propertyName}": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/ConfigResourceResponse"}}, "404": {"description": "Config Name Not Found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "PropertyName used for lookup", "required": true, "type": "string", "name": "propertyName", "in": "path"}], "produces": ["application/json"], "tags": ["configuration Resource"], "summary": "Gets the value for the given configName", "consumes": ["application/json"], "operationId": "getConfiguration"}}, "/ifd/api/v1/configResource/{propertyName}": {"get": {"responses": {"default": {"description": "successful operation"}}, "description": "", "parameters": [{"required": true, "type": "string", "name": "propertyName", "in": "path"}], "produces": ["application/json"], "tags": ["Configuration Resource v1"], "summary": "Gets the value for the given configName", "consumes": ["application/json"], "operationId": "getConfiguration"}}, "/ifd/api/configResource": {"put": {"responses": {"201": {"description": "Configuration property has been stored"}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/ConfigResourceResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API allows updating  configuration property ", "parameters": [{"schema": {"$ref": "#/definitions/ConfigResourceRequest"}, "description": "ConfigResource property as JSON Profile wrapper object", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["configuration Resource"], "summary": "Updates and add configuration name and value", "consumes": ["application/json"], "operationId": "putConfiguration"}, "get": {"responses": {"default": {"description": "successful operation"}}, "produces": ["application/json"], "description": "", "tags": ["configuration Resource"], "summary": "Get all existing configuration values", "operationId": "getAllConfigurations"}}}, "schemes": ["http", "https"], "tags": [{"name": "Configuration Resource v1", "description": "Creation, deletion and retrieval of configuration properties"}, {"name": "configuration Resource", "description": "Creation, deletion and retrieval of configuration properties<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version"}], "basePath": "/", "definitions": {"Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "ConfigResourceRequest": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/ConfigResourceData"}, "type": "array", "description": "List of ConfigResourceRequest Object "}}}, "ConfigResourceData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/Attributes"}}}, "ConfigResourceResponse": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/ConfigResourceData"}, "type": "array", "description": "An array of ConfigResources"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "Attributes": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the properties"}, "value": {"type": "string", "description": "The value of the properties"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_correlator_engine.json b/tapi/resources/MCP_4.0.0_correlator_engine.json
deleted file mode 100644
index 819e17fbac1a8384f670729f83193e397fa46b39..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_correlator_engine.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0.0", "description": "Alarm and Service Correlator", "title": "Correlator Engine"}, "paths": {"/debug/logs": {"put": {"responses": {"200": {"description": "The newly active log level", "schema": {"$ref": "#/definitions/LogLevel"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Changes the log level", "parameters": [{"schema": {"$ref": "#/definitions/LogLevel"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Debug"], "summary": "Changes the log level", "consumes": ["application/json"], "operationId": "changeLogLevel"}, "get": {"responses": {"200": {"description": "joy", "schema": {"$ref": "#/definitions/LogLevel"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Retrieves the currently active log level", "produces": ["application/json"], "tags": ["Debug"], "summary": "Retrieves the currently active log level", "consumes": ["application/json"], "operationId": "getLogLevel"}}, "/affectedServices": {"get": {"responses": {"200": {"description": "Affected Services Query completed", "schema": {"$ref": "#/definitions/AffectedServicesData"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Search affected services for an alarm", "parameters": [{"required": true, "type": "string", "name": "alarmId", "in": "query"}], "tags": ["Alarm to Service Query"], "produces": ["application/json"], "summary": "Search affected services for an alarm", "operationId": "getAffectedServices"}}, "/debug/bulkload/bulkLoadWorkers": {"put": {"responses": {"200": {"description": "The newly active bulk load workers", "schema": {"$ref": "#/definitions/BulkLoadWorkers"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Change the bulk load workers for bulkprocessor to ES", "parameters": [{"schema": {"$ref": "#/definitions/BulkLoadWorkers"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Debug"], "summary": "Change the bulk load workers for bulkprocessor to ES", "consumes": ["application/json"], "operationId": "changeBulkLoadWorkers"}}, "/debug/bulkload/bulkActionsNumber": {"put": {"responses": {"200": {"description": "The newly active bulk actions number", "schema": {"$ref": "#/definitions/BulkActionsNumber"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Change the bulk actions number for bulkprocessor to ES", "parameters": [{"schema": {"$ref": "#/definitions/BulkActionsNumber"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Debug"], "summary": "Change the bulk actions number for bulkprocessor to ES", "consumes": ["application/json"], "operationId": "changeBulkActionsNumber"}}, "/affectedServicesCountsByResources": {"get": {"responses": {"200": {"description": "Affected Services Counts By Resources Query completed", "schema": {"$ref": "#/definitions/AffectedServicesCounts"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Get number of affected services for resources", "parameters": [{"items": {"type": "string"}, "required": true, "type": "array", "name": "resourceIds", "in": "query"}], "tags": ["Resource to Service Query"], "produces": ["application/json"], "summary": "Get number of affected services for resources", "operationId": "getAffectedServicesCountsByResources"}}, "/correlatedAlarmsForService": {"get": {"responses": {"200": {"description": "Correlated Alarms Query completed", "schema": {"$ref": "#/definitions/CorrelatedAlarmsData"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Search correlated alarms for a service", "parameters": [{"required": true, "type": "string", "name": "serviceId", "in": "query"}, {"type": "integer", "name": "limit", "in": "query"}], "tags": ["Service to Alarm Query"], "produces": ["application/json"], "summary": "Search correlated alarms for a service", "operationId": "getCorrelatedAlarms"}}, "/affectedServicesCounts": {"get": {"responses": {"200": {"description": "Affected Services Counts Query completed", "schema": {"$ref": "#/definitions/AffectedServicesCounts"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Get number of affected services for alarms", "parameters": [{"items": {"type": "string"}, "required": true, "type": "array", "name": "alarmIds", "in": "query"}], "tags": ["Alarm to Service Query"], "produces": ["application/json"], "summary": "Get number of affected services for alarms", "operationId": "getAffectedServicesCounts"}}, "/affectedServicesAndResources": {"get": {"responses": {"200": {"description": "For each AlarmId specified, returns a list of affected resource Ids and affected service Ids", "schema": {"$ref": "#/definitions/AlarmsToServiceCorrelation"}}, "204": {"description": "No services were correlated to the passed in alarm list"}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Get number of affected services for alarms, returning which services and resources are affected for each alarms", "parameters": [{"items": {"type": "string"}, "required": true, "type": "array", "name": "alarmIds", "in": "query"}], "tags": ["Alarm to Service Query"], "produces": ["application/json"], "summary": "Get number of affected services for alarms, returning which services and resources are affected for each alarms", "operationId": "getAffectedServicesAndResources"}}, "/debug/bulkload/flushInterval": {"put": {"responses": {"200": {"description": "The newly active flush interval", "schema": {"$ref": "#/definitions/FlushInterval"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Change the flushInterval in seconds of bulkprocessor to ES", "parameters": [{"schema": {"$ref": "#/definitions/FlushInterval"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Debug"], "summary": "Change the flushInterval in seconds of bulkprocessor to ES", "consumes": ["application/json"], "operationId": "changeFlushInterval"}}, "/affectedServicesByResource": {"get": {"responses": {"200": {"description": "Affected Services Query By Resource completed", "schema": {"$ref": "#/definitions/AffectedServicesData"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Search affected services for a resource", "parameters": [{"required": true, "type": "string", "name": "resourceId", "in": "query"}], "tags": ["Resource to Service Query"], "produces": ["application/json"], "summary": "Search affected services for a resource", "operationId": "getAffectedServicesByResource"}}}, "tags": [{"description": "Find related services for alarms", "name": "Alarm to Service Query"}, {"description": "Find related alarms for services", "name": "Service to Alarm Query"}, {"description": "Modify logging or elastic search client configuration", "name": "Debug"}], "basePath": "/events-to-service-correlator/api/v1", "definitions": {"InventoryRelationshipAttributes": {"required": ["inventoryInfo"], "type": "object", "properties": {"inventoryInfo": {"description": "Various information for this inventory object", "$ref": "#/definitions/InventoryInfo"}}}, "AffectedService": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/InventoryInfo"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "AlarmData": {"type": "object", "properties": {"attributes": {"description": "Information regarding the individual alarm", "$ref": "#/definitions/AlarmAttributes"}, "type": {"type": "string", "description": "The alarm type"}, "id": {"type": "string", "description": "The unique identifier for the alarm"}}}, "AffectedServicesCounts": {"type": "object", "properties": {"data": {"$ref": "#/definitions/AffectedServicesCountsData"}}}, "LogLevel": {"type": "object", "properties": {"level": {"enum": ["DEBUG", "INFO", "WARNING", "ERROR", "PANIC"], "type": "string", "description": "The log level [DEBUG,INFO,WARNING,ERROR,PANIC]"}}}, "InventoryInfo": {"additionalProperties": {"type": "string"}, "required": ["inventoryType"], "type": "object", "properties": {"inventoryType": {"type": "string", "description": "type of inventory"}}}, "InventoryRelationship": {"properties": {"data": {"$ref": "#/definitions/InventoryRelationshipData"}}, "type": "object", "description": "This is typically what is received via a ChangeEvent from an Inventory system to inform this service on the graph tree against which events are correlated", "title": "Defines relationships properties and linkage between different inventory and services."}, "AlarmsToServiceCorrelation": {"items": {"type": "object", "properties": {"affectedServiceCounts": {"type": "integer"}, "affectedResources": {"items": {"type": "object", "properties": {"resourceId": {"type": "string"}, "affectedServices": {"items": {"type": "object", "properties": {"serviceType": {"type": "string"}, "serviceId": {"type": "string"}}}, "type": "array"}}}, "type": "array"}, "alarmId": {"type": "string"}}}, "type": "array", "description": "Maps Alarm Ids to list of affected resources (and affected services)\n"}, "BulkLoadWorkers": {"type": "object", "properties": {"BulkLoadWorkers": {"type": "integer", "description": "The number of bulk load workers"}}}, "ApiResponse": {"type": "object", "properties": {"message": {"type": "string"}, "code": {"type": "string"}, "level": {"type": "string"}}}, "Relationship": {"required": ["id", "type"], "type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "AffectedServicesCountsData": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"counts": {"additionalProperties": {"type": "string"}, "type": "object"}}}, "type": {"type": "string"}, "id": {"type": "string"}}}, "BulkActionsNumber": {"type": "object", "properties": {"BulkActionsNumber": {"type": "integer", "description": "The bulk actions number for bulk load"}}}, "InventoryRelationshipData": {"required": ["id", "type", "attributes"], "type": "object", "properties": {"relationships": {"type": "object", "description": "Relationship object in describing inventory relationship", "properties": {"children": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/Relationship"}, "type": "array"}}}, "parent": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/Relationship"}, "type": "array"}}}}}, "attributes": {"description": "A qualifier for the relationship", "$ref": "#/definitions/InventoryRelationshipAttributes"}, "type": {"type": "string", "description": "The Inventory Relationship resource type"}, "id": {"type": "string", "description": "Id that uniquely identifies an inventory"}}}, "AffectedServicesData": {"type": "object", "properties": {"meta": {"type": "object", "properties": {"count": {"type": "string"}}}, "data": {"items": {"$ref": "#/definitions/AffectedService"}, "type": "array"}}}, "AlarmAttributes": {"required": ["affected-inventory-ids"], "type": "object", "properties": {"affected-inventory-ids": {"items": {"type": "string"}, "type": "array", "description": "Inventory IDs affected by alarms"}}}, "FlushInterval": {"type": "object", "properties": {"FlushInterval": {"type": "integer", "description": "The flush interval for bulk load"}}}, "FilteredAlarm": {"type": "object", "properties": {"data": {"$ref": "#/definitions/AlarmData"}}}, "CorrelatedAlarmsData": {"type": "object", "properties": {"meta": {"type": "object", "properties": {"count": {"type": "string"}, "total": {"type": "string"}}}, "data": {"items": {"$ref": "#/definitions/AlarmData"}, "type": "array"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_device_cut-through.json b/tapi/resources/MCP_4.0.0_device_cut-through.json
deleted file mode 100644
index 32ce57b7f6a57031804abf6b4e76f52d1a64e037..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_device_cut-through.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0.0", "description": "The Device Cut-Through provides interactive SSH terminals for use in the UI.  This API is for providing credentials so that BPI commands can be executed.", "title": "Device Cut-Through"}, "paths": {"/v1/bpi/credentials/": {"post": {"responses": {"200": {"description": "Credentials successfully added."}, "500": {"description": "Internal server error while processing the request."}, "400": {"description": "Failed to validate the request."}}, "parameters": [{"schema": {"$ref": "#/definitions/Credentials"}, "description": "The credentials to be added.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["credentials"], "summary": "Add credentials for an IP address.", "consumes": ["application/json"], "operationId": "CreateValue"}}}, "tags": [{"name": "credentials", "description": "Add credentials for BPI commands"}], "basePath": "/dct/api", "produces": ["application/json"], "definitions": {"Credentials": {"type": "object", "description": "The credentials expected for BPI commands", "properties": {"data": {"type": "object", "properties": {"username": {"type": "string", "description": "foo"}, "ip": {"type": "string", "description": "foo"}, "password": {"type": "string", "description": "foo"}}}}}}, "swagger": "2.0", "consumes": ["application/json"]}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_equipment.json b/tapi/resources/MCP_4.0.0_equipment.json
deleted file mode 100644
index 71bd91d641f0f6c36fa348c13312d0cb13a7f8e9..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_equipment.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Retrieve, plan and modify equipment resources", "title": "Equipment"}, "paths": {"/nsi/api/v2_0/equipment/{equipmentId}/equipmentExpectations": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentExpectationListRO"}}, "404": {"description": "The requested equipment cannot be found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the expectations for the equipment id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0equipment"], "summary": "Retrieves the expectations of the equipment", "operationId": "getEquipmentExpectations"}}, "/nsi/api/equipment/{equipmentId}/maintenanceMode": {"post": {"responses": {"200": {"description": "The maintenanceMode for the specific equipment has been created", "schema": {"$ref": "#/definitions/EquipmentRO"}}, "404": {"description": "The specified equipment does not exist.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "422": {"description": "No request body was provided"}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "LATEST VERSION: V3", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"schema": {"type": "boolean"}, "description": "maintenanceMode value", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Creates or updates MaintenanceMode for a specific equipment", "consumes": ["application/json"], "operationId": "addMaintenanceMode"}}, "/nsi/api/v3/equipment/{equipmentId}/equipmentExpectations/{equipmentExpectationId}": {"delete": {"responses": {"200": {"description": "Deleted the equipment expectation successfully."}, "204": {"description": "The equipment expectation does not exists."}, "404": {"description": "The equipment does not exists."}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to delete the equipment expectation", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "Equipment expectation identifier", "required": true, "type": "string", "name": "equipmentExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3equipment"], "summary": "Delete a specific equipment expectation", "operationId": "deleteEquipmentExpectationById"}}, "/nsi/api/v3/equipment/{equipmentId}/maintenanceMode": {"post": {"responses": {"200": {"description": "The maintenanceMode for the specific equipment has been created", "schema": {"$ref": "#/definitions/EquipmentRO"}}, "404": {"description": "The specified equipment does not exist.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "422": {"description": "No request body was provided"}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"schema": {"type": "boolean"}, "description": "maintenanceMode value", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3equipment"], "summary": "Creates or updates MaintenanceMode for a specific equipment", "consumes": ["application/json"], "operationId": "addMaintenanceMode"}}, "/nsi/api/v2_0/equipment/{equipmentId}/userData/{userDataKey}": {"put": {"responses": {"200": {"description": "Equipment userData have been created on the server", "schema": {"$ref": "#/definitions/EquipmentRO"}}, "404": {"description": "The specified equipment userData does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "If present, the leading and trailing whitespaces will be trimmed from the userData's key and value.", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "Key of userData to update", "required": true, "type": "string", "name": "userDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired userData value", "required": true, "name": "userDataValue", "in": "body"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0equipment"], "summary": "Create or update an equipment's userData", "consumes": ["text/plain"], "operationId": "putEquipmentUserData"}, "delete": {"responses": {"200": {"description": "The specified equipment userData does not exist"}, "204": {"description": "Deleted equipment userData successfully."}, "404": {"description": "The specified equipment does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to delete equipment userData.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "Key of the UserData to delete", "required": true, "type": "string", "name": "userDataKey", "in": "path"}], "tags": ["998 - nsiapiv2_0equipment"], "description": "", "summary": "Delete a userData from a given equipment", "operationId": "deleteEquipmentUserData"}}, "/nsi/api/v3/equipment/{equipmentId}/expectations/{equipmentExpectationId}": {"patch": {"responses": {"202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/EquipmentExpectationRO"}}, "403": {"description": "Forbidden to access specified Equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The id of the Equipment to be updated", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "The id of the equipmentExpectation to be updated", "required": true, "type": "string", "name": "equipmentExpectationId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentPatchRO"}, "description": "A patch request to the given Equipment.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3equipment"], "summary": "PATCH a specific equipment expectation", "operationId": "patchEquipmentExpectation"}}, "/nsi/api/equipment/{equipmentId}/equipmentExpectations/{equipmentExpectationId}": {"delete": {"responses": {"200": {"description": "Deleted the equipment expectation successfully."}, "204": {"description": "The equipment expectation does not exists."}, "404": {"description": "The equipment does not exists."}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to delete the equipment expectation", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "Equipment expectation identifier", "required": true, "type": "string", "name": "equipmentExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Delete a specific equipment expectation.", "operationId": "deleteEquipmentExpectationById"}, "get": {"responses": {"200": {"description": "Successfully retrieved the equipment expectation.", "schema": {"$ref": "#/definitions/EquipmentExpectationRO"}}, "404": {"description": "The requested equipment expectation cannot be found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the equipment expectation", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "Equipment expectation identifier", "required": true, "type": "string", "name": "equipmentExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Retrieves a specific equipment expectation", "operationId": "getEquipmentExpectationById"}}, "/nsi/api/equipment/{equipmentId}/expectations/{equipmentExpectationId}": {"patch": {"responses": {"202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/EquipmentExpectationRO"}}, "403": {"description": "Forbidden to access specified Equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The id of the Equipment to be updated", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "The id of the equipmentExpectation to be updated", "required": true, "type": "string", "name": "equipmentExpectationId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentPatchRO"}, "description": "A patch request to the given Equipment.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "PATCH a specific equipment expectation", "operationId": "patchEquipmentExpectation"}}, "/nsi/api/equipment/{equipmentId}/equipmentPlanned": {"put": {"responses": {"200": {"description": "Equipment planned with given id has been updated successfully."}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to update equipment planned, internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Bad or invalid parameters were provided.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentPlannedRO"}, "description": "The new equipment data", "required": true, "name": "equipment", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Update a specific planned equipment", "consumes": ["application/json"], "operationId": "putEquipmentPlanned"}, "patch": {"responses": {"202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/EquipmentPlannedRO"}}, "403": {"description": "Forbidden to access specified Equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The id of the Equipment to be updated", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentPatchRO"}, "description": "A patch request to the given Equipment.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "PATCH a specific planned equipment", "operationId": "patchPlannedEquipment"}, "get": {"responses": {"200": {"description": "Successfully retrieved the equipment planned.", "schema": {"$ref": "#/definitions/EquipmentPlannedRO"}}, "404": {"description": "Cannot find the equipment planned", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment planned", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested equipment planned.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>Equipment returned in JSON format", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Retrieves a specific equipment planned", "operationId": "getEquipmentPlannedById"}}, "/nsi/api/v5/equipment": {"get": {"responses": {"200": {"description": "Successfully retrieved the requested equipment.", "schema": {"$ref": "#/definitions/EquipmentListRO"}}, "500": {"description": "Failed to retrieve the requested equipment.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of equipment returned in JSON format.<p>Only one of the following parameters must be specified:<ul><li>networkConstruct.id<li>equipmentExpectations.equipmentIntent.id<li>id</ul>", "parameters": [{"description": "(Optional) Comma separated list of equipment identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) Equipment Intent Identifier", "required": false, "type": "string", "name": "equipmentExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page. Defaulted ALL to return all Equipment at once.", "default": "ALL", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, equipmentDiscovered, equipmentPlanned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["995 - nsiapiv5equipment"], "summary": "Retrieves the equipment satisfying the query parameters", "operationId": "getEquipmentV5"}}, "/nsi/api/v4/equipment": {"post": {"responses": {"201": {"description": "Successfully created the equipment.", "schema": {"$ref": "#/definitions/EquipmentRO"}}, "500": {"description": "Failed to create the equipment", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This REST API is intended to be used by equipment provisioning micro-service IFD only to create planned equipment with an equipment expectation.<p>The following attributes and relationships should be specified in the post request:<ul><li>userData<li>equipmentPlanned id relationship <li>a list of equipment expectation id relationship<li>the equipment planned content - specified in the included section with networkConstructRelationship<ul><li>location - management protocol used to retrieve the information and the physical location of the equipment such as its shelf, slot and subslot<li>Any base equipment attributes.<li>network construct id relationship<ul><li>the equipment expectation content - specified in the included section<ul><li>provisionedSpec - The provisioned specification (logical representation) of the equipment<li>installedSpec - The installed specification (physical representation) of the equipment<li>cardType<li>nativeName<li>category<li>validateParameters - The list of parameters (if any) to be validated against the expectation<ul><li>Valid parameters include all equipment expectation content as specified above.<li>Additionally, provisionedSpec and installedSpec can be validated against their sub-attributes. These include: <ul><li>hardwareVersion<li>serialNumber<li>manufacturer<li>type<li>partNumber<li>version<li>additionalAttributes<li>displayLabels</ul></ul></ul></ul><p>The response returns equipment that is created.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\",\n    \"type\": \"equipment\",\n    \"attributes\": {\n    },\n    \"relationships\": {\n      \"equipmentExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"equipmentExpectations\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        ]\n      },\n      \"equipmentPlanned\": {\n        \"data\": {\n          \"type\": \"equipmentPlanned\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n        }\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\",\n      \"type\": \"equipmentExpectations\",\n      \"attributes\": {\n        \"provisionedSpec\": {\n          \"partNumber\": \"NTK539UJ\"\n        },\n        \"installedSpec\": {\n          \"partNumber\": \"NTK539UJ\"\n        },\n        \"cardType\": \"100GOCLD\",\n        \"validateParameters\": {\n          \"include\": \"provisionedSpec.partNumber, installedSpec.partNumber, cardType\"\n        }\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    },\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\",\n      \"type\": \"equipmentPlanned\",\n      \"attributes\": {\n        \"provisionedSpec\": {\n          \"partNumber\": \"NTK539UJ\"\n        },\n        \"installedSpec\": {\n          \"partNumber\": \"NTK539UJ\"\n        },\n        \"cardType\": \"100GOCLD\"\n      },\n      \"relationships\": {\n      \"networkConstruct\": {\n        \"data\": {\n          \"type\": \"networkConstructs\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\"\n         }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/EquipmentRO"}, "description": "Equipment to create or update", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4equipment"], "summary": "Creates an equipment", "consumes": ["application/json"], "operationId": "postEquipment"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested equipment.", "schema": {"$ref": "#/definitions/EquipmentListRO"}}, "500": {"description": "Failed to retrieve the requested equipment.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "List of equipment returned in JSON format.", "parameters": [{"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.siteName). If provided, must also provide searchText parameter", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of resource states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "(Optional) Network Construct name", "required": false, "type": "string", "name": "networkConstruct.name", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) Equipment Intent Identifier", "required": false, "type": "string", "name": "equipmentExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) Site Identifier for equipment", "required": false, "type": "string", "name": "siteId", "in": "query"}, {"description": "(Optional) Comma separated list of equipment states. The allowed values are: IS, OOS, OOS_AU, OOS_MA, OOS_AUMA", "required": false, "type": "string", "name": "state", "in": "query"}, {"description": "(Optional) Comma separated list of equipment shelves", "required": false, "type": "string", "name": "shelf", "in": "query"}, {"description": "(Optional) Comma separated list of equipment slots", "required": false, "type": "string", "name": "slot", "in": "query"}, {"description": "(Optional) Comma separated list of equipment sub-slots", "required": false, "type": "string", "name": "subSlot", "in": "query"}, {"description": "(Optional) Comma separated list of equipment sub-shelves", "required": false, "type": "string", "name": "subShelf", "in": "query"}, {"description": "(Optional) List of Equipment availabilityState. The allowed values are: PLANNED, AVAILABLE, UNVALIDATED, INUSE", "required": false, "type": "string", "name": "availabilityState", "in": "query"}, {"description": "(Optional) List of Equipment reservationState. The allowed values are: Unknown, Not reserved, Reserved for maintenance, Reserved for facility, Reserved for reversion", "required": false, "type": "string", "name": "reservationState", "in": "query"}, {"description": "(Optional) List of Equipment maintenanceMode. The allowed values are: true, false", "required": false, "type": "string", "name": "maintenanceMode", "in": "query"}, {"description": "(Optional) List of Equipment cardType", "required": false, "type": "string", "name": "cardType", "in": "query"}, {"description": "(Optional) List of Equipment specificationMismatch. The allowed values are: true, false", "required": false, "type": "string", "name": "specificationMismatch", "in": "query"}, {"description": "(Optional) List of Equipment category. The allowed values are: rack, shelf, pluggable, standalone", "required": false, "type": "string", "name": "category", "in": "query"}, {"description": "(Optional) List of neContactState. The allowed values are: IN, OUT", "required": false, "type": "string", "name": "neContactState", "in": "query"}, {"description": "(Optional) Network Construct macAddress", "required": false, "type": "string", "name": "networkConstruct.macAddress", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of meta data to be included. The allowed values are: specificationMismatch, state, availabilityState, reservationState, maintenanceMode, cardType, category, ncMacAddress", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, planned, discovered, networkConstructs, equipmentPlanned, equipmentDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["996 - nsiapiv4equipment"], "summary": "Retrieves the equipment satisfying the query parameters", "operationId": "getEquipment"}}, "/nsi/api/equipment/{eqpId}/expectations": {"post": {"responses": {"201": {"description": "Equipment expectation has been created on the server", "schema": {"$ref": "#/definitions/EquipmentExpectationRO"}}, "200": {"description": "An existing Equipment expectation have been updated on the server", "schema": {"$ref": "#/definitions/EquipmentExpectationRO"}}, "404": {"description": "The specified Equipment does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "eqpId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentExpectationRO"}, "description": "EquipmentExpectation to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Create an Equipment expectation given the Equipment id", "consumes": ["application/json"], "operationId": "postExpectation"}}, "/nsi/api/v2_0/equipment/{equipmentId}/equipmentExpectations/{equipmentExpectationId}": {"get": {"responses": {"200": {"description": "Successfully retrieved the equipment expectation.", "schema": {"$ref": "#/definitions/EquipmentExpectationRO"}}, "404": {"description": "The requested equipment expectation cannot be found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the equipment expectation", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "Equipment expectation identifier", "required": true, "type": "string", "name": "equipmentExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0equipment"], "summary": "Retrieves a specific equipment expectation", "operationId": "getEquipmentExpectationById"}}, "/nsi/api/equipment/{equipmentId}/userData/{userDataKey}": {"put": {"responses": {"200": {"description": "Equipment userData have been created on the server", "schema": {"$ref": "#/definitions/EquipmentRO"}}, "404": {"description": "The specified equipment userData does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0<p>If present, the leading and trailing whitespaces will be trimmed from the userData's key and value.<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "Key of userData to update", "required": true, "type": "string", "name": "userDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired userData value", "required": true, "name": "userDataValue", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Create or update an equipment's userData", "consumes": ["text/plain"], "operationId": "putEquipmentUserData"}, "delete": {"responses": {"200": {"description": "The specified equipment userData does not exist"}, "404": {"description": "The specified equipment does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted equipment userData successfully."}, "500": {"description": "Failed to delete equipment userData.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "Key of the UserData to delete", "required": true, "type": "string", "name": "userDataKey", "in": "path"}], "tags": ["000 - nsiapiequipment"], "description": "<p>LATEST VERSION: V2_0", "summary": "Delete a userData from a given equipment", "operationId": "deleteEquipmentUserData"}}, "/nsi/api/v3/equipment/{equipmentId}/equipmentPlanned": {"put": {"responses": {"200": {"description": "Equipment planned with given id has been updated successfully."}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to update equipment planned, internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Bad or invalid parameters were provided.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentPlannedRO"}, "description": "The new equipment data", "required": true, "name": "equipment", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3equipment"], "summary": "Update a specific planned equipment", "consumes": ["application/json"], "operationId": "putEquipmentPlanned"}, "patch": {"responses": {"202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/EquipmentPlannedRO"}}, "403": {"description": "Forbidden to access specified Equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The id of the Equipment to be updated", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentPatchRO"}, "description": "A patch request to the given Equipment.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3equipment"], "summary": "PATCH a specific planned equipment", "operationId": "patchPlannedEquipment"}, "get": {"responses": {"200": {"description": "Successfully retrieved the equipment.", "schema": {"$ref": "#/definitions/EquipmentPlannedRO"}}, "404": {"description": "Cannot find the equipment", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested equipment.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Equipment Planned returned in JSON format", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3equipment"], "summary": "Retrieves  the planned attributes of the given equipment.", "operationId": "getEquipmentPlannedById"}}, "/nsi/api/equipment/{equipmentId}": {"put": {"responses": {"200": {"description": "Equipment with given id has been updated successfully."}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to update equipment, internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Bad or invalid parameters were provided.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentRO"}, "description": "The new equipment data", "required": true, "name": "equipment", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Update a specific equipment", "consumes": ["application/json"], "operationId": "putEquipment"}, "delete": {"responses": {"200": {"description": "Successfully deleted the equipment."}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "The specified equipment does not exist."}, "500": {"description": "Failed to delete equipment.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Deletes a specific equipment", "consumes": ["application/json"], "operationId": "deleteEquipmentById"}, "get": {"responses": {"200": {"description": "Successfully retrieved the equipment.", "schema": {"$ref": "#/definitions/EquipmentRO"}}, "404": {"description": "Cannot find the equipment", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested equipment.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>Equipment returned in JSON format", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, equipmentDiscovered, equipmentPlanned", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Retrieves a specific equipment", "operationId": "getEquipmentById"}}, "/nsi/api/v3/equipment/{equipmentId}": {"put": {"responses": {"200": {"description": "Equipment with given id has been updated successfully."}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to update equipment, internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Bad or invalid parameters were provided.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentRO"}, "description": "The new equipment data", "required": true, "name": "equipment", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3equipment"], "summary": "Create or Update a specific equipment with planned attributes, userData, expectations", "consumes": ["application/json"], "operationId": "putEquipment"}, "delete": {"responses": {"200": {"description": "Successfully deleted the equipment."}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "The specified equipment does not exist."}, "500": {"description": "Failed to delete equipment.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3equipment"], "summary": "Deletes a specific equipment", "consumes": ["application/json"], "operationId": "deleteEquipmentById"}, "get": {"responses": {"200": {"description": "Successfully retrieved the equipment.", "schema": {"$ref": "#/definitions/EquipmentRO"}}, "404": {"description": "Cannot find the equipment", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested equipment.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Equipment returned in JSON format", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, equipmentPlanned, equipmentDiscovered.", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3equipment"], "summary": "Retrieves a specific equipment", "operationId": "getEquipmentById"}}, "/nsi/api/v3/equipment": {"post": {"responses": {"201": {"description": "Successfully created the equipment.", "schema": {"$ref": "#/definitions/EquipmentRO"}}, "500": {"description": "Failed to create the equipment", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This REST API is intended to be used by equipment provisioning micro-service IFD only to create or update an equipment expectation.<p>The following attributes and relationships should be specified in the post request:<ul><li>location - management protocol used to retrieve the information and the physical location of the equipment such as its shelf, slot and subslot<li>network construct id relationship<li>a list of equipment expectation id relationship<li>the equipment expectation content - specified in the included section<ul><li>provisionedSpec - The provisioned specification (logical representation) of the equipment<li>installedSpec - The installed specification (physical representation) of the equipment<li>cardType<li>nativeName<li>category<li>validateParameters - The list of parameters (if any) to be validated against the expectation<ul><li>Valid parameters include all equipment expectation content as specified above.<li>Additionally, provisionedSpec and installedSpec can be validated against their sub-attributes. These include: <ul><li>hardwareVersion<li>serialNumber<li>manufacturer<li>type<li>partNumber<li>version<li>additionalAttributes<li>displayLabels</ul></ul></ul></ul><p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\",\n    \"type\": \"equipment\",\n    \"attributes\": {\n      \"cardType\": \"100GOCLD\",\n      \"locations\": [\n        {\n          \"managementType\": \"tl1\",\n          \"shelf\": \"12\",\n          \"slot\": \"11\"\n        }\n      ],\n      \"availabilityState\": \"PLANNED\",\n      \"maintenanceMode\": false\n    },\n    \"relationships\": {\n      \"networkConstruct\": {\n        \"data\": {\n          \"type\": \"networkConstructs\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\"\n        }\n      },\n      \"equipmentExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"equipmentExpectations\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\",\n      \"type\": \"equipmentExpectations\",\n      \"attributes\": {\n        \"provisionedSpec\": {\n          \"partNumber\": \"NTK539UJ\"\n        },\n        \"installedSpec\": {\n          \"partNumber\": \"NTK539UJ\"\n        },\n        \"cardType\": \"100GOCLD\",\n        \"validateParameters\": {\n          \"include\": \"provisionedSpec.partNumber, installedSpec.partNumber, cardType\"\n        }\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/EquipmentRO"}, "description": "Equipment to create or update", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["997 - nsiapiv3equipment"], "summary": "Creates or updates an equipment", "consumes": ["application/json"], "operationId": "postEquipment"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested equipment.", "schema": {"$ref": "#/definitions/EquipmentListRO"}}, "500": {"description": "Failed to retrieve the requested equipment.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "List of equipment returned in JSON format.<p>At least one of the following parameters must be specified:<ul><li>ncId (Deprecated)<li>networkConstruct.id<li>equipmentExpectations.equipmentIntent.id<li>id<li>siteId<li>searchText</ul>", "parameters": [{"description": "(Optional, Deprecated) Network Construct identifier", "required": false, "type": "string", "name": "ncId", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) Comma separated list of equipment identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) Status for equipment", "required": false, "type": "string", "name": "state", "in": "query"}, {"description": "(Optional) Shelf for equipment", "required": false, "type": "string", "name": "shelf", "in": "query"}, {"description": "(Optional) Slot for equipment", "required": false, "type": "string", "name": "slot", "in": "query"}, {"description": "(Optional) Subslot for equipment", "required": false, "type": "string", "name": "subSlot", "in": "query"}, {"description": "(Optional) Subshelf for equipment", "required": false, "type": "string", "name": "subShelf", "in": "query"}, {"description": "(Optional) Equipment Intent Identifier", "required": false, "type": "string", "name": "equipmentExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) Site Identifier for equipment", "required": false, "type": "string", "name": "siteId", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.siteName). If provided, must also provide searchText parameter", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, equipmentDiscovered, equipmentPlanned", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page. Defaulted ALL to return all Equipment at once.", "default": "ALL", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["997 - nsiapiv3equipment"], "summary": "Retrieves the equipment satisfying the query parameters", "operationId": "getEquipment"}}, "/nsi/api/equipment": {"post": {"responses": {"201": {"description": "Successfully created/updated the equipment.", "schema": {"$ref": "#/definitions/EquipmentRO"}}, "500": {"description": "Failed to create or update the equipment", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4<p>This REST API is intended to be used by equipment provisioning micro-service IFD only to create or update an equipment expectation.<p>The following attributes and relationships should be specified in the post request:<ul><li>location - management protocol used to retrieve the information and the physical location of the equipment such as its shelf, slot and subslot<li>network construct id relationship<li>a list of equipment expectation id relationship<li>the equipment expectation content - specified in the included section<ul><li>provisionedSpec - The provisioned specification (logical representation) of the equipment<li>installedSpec - The installed specification (physical representation) of the equipment<li>cardType<li>nativeName<li>category<li>validateParameters - The list of parameters (if any) to be validated against the expectation<ul><li>Valid parameters include all equipment expectation content as specified above.<li>Additionally, provisionedSpec and installedSpec can be validated against their sub-attributes. These include: <ul><li>hardwareVersion<li>serialNumber<li>manufacturer<li>type<li>partNumber<li>version<li>additionalAttributes<li>displayLabels</ul></ul></ul></ul><p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\",\n    \"type\": \"equipment\",\n    \"attributes\": {\n    },\n    \"relationships\": {\n      \"equipmentExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"equipmentExpectations\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        ]\n      },\n      \"equipmentPlanned\": {\n        \"data\": {\n          \"type\": \"equipmentPlanned\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n        }\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\",\n      \"type\": \"equipmentExpectations\",\n      \"attributes\": {\n        \"provisionedSpec\": {\n          \"partNumber\": \"NTK539UJ\"\n        },\n        \"installedSpec\": {\n          \"partNumber\": \"NTK539UJ\"\n        },\n        \"cardType\": \"100GOCLD\",\n        \"validateParameters\": {\n          \"include\": \"provisionedSpec.partNumber, installedSpec.partNumber, cardType\"\n        }\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    },\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\",\n      \"type\": \"equipmentPlanned\",\n      \"attributes\": {\n        \"provisionedSpec\": {\n          \"partNumber\": \"NTK539UJ\"\n        },\n        \"installedSpec\": {\n          \"partNumber\": \"NTK539UJ\"\n        },\n        \"cardType\": \"100GOCLD\"\n      },\n      \"relationships\": {\n      \"networkConstruct\": {\n        \"data\": {\n          \"type\": \"networkConstructs\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\"\n         }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/EquipmentRO"}, "description": "Equipment to create or update", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Creates or updates an equipment", "consumes": ["application/json"], "operationId": "postEquipment"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested equipment.", "schema": {"$ref": "#/definitions/EquipmentListRO"}}, "500": {"description": "Failed to retrieve the requested equipment.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V5\n List of equipment returned in JSON format.<p>Only one of the following parameters must be specified:<ul><li>networkConstruct.id<li>equipmentExpectations.equipmentIntent.id<li>id</ul>", "parameters": [{"description": "(Optional) Comma separated list of equipment identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) Equipment Intent Identifier", "required": false, "type": "string", "name": "equipmentExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page. Defaulted ALL to return all Equipment at once.", "default": "ALL", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, equipmentDiscovered, equipmentPlanned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Retrieves the equipment satisfying the query parameters", "operationId": "getEquipment"}}, "/nsi/api/v3/equipment/{eqpId}/expectations": {"post": {"responses": {"201": {"description": "Equipment expectation has been created on the server", "schema": {"$ref": "#/definitions/EquipmentExpectationRO"}}, "200": {"description": "An existing Equipment expectation have been updated on the server", "schema": {"$ref": "#/definitions/EquipmentExpectationRO"}}, "404": {"description": "The specified Equipment does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "eqpId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentExpectationRO"}, "description": "EquipmentExpectation to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3equipment"], "summary": "Create an Equipment expectation given the Equipment id", "consumes": ["application/json"], "operationId": "postExpectation"}}, "/nsi/api/equipment/{equipmentId}/equipmentExpectations": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentExpectationListRO"}}, "404": {"description": "The requested equipment cannot be found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the expectations for the equipment id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "Equipment identifier", "required": true, "type": "string", "name": "equipmentId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipment"], "summary": "Retrieves the expectations of the equipment.", "operationId": "getEquipmentExpectations"}}}, "schemes": ["http", "https"], "tags": [{"name": "000 - nsiapiequipment", "description": "Retrieve, plan, and manage the equipment resources.<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "995 - nsiapiv5equipment", "description": "Retrieve, plan, and manage the equipment resources (version 5)."}, {"name": "996 - nsiapiv4equipment", "description": "Retrieve, plan, and manage the equipment resources (version 4)."}, {"name": "997 - nsiapiv3equipment", "description": "Retrieve, plan, and manage the equipment resources (version 3)."}, {"name": "998 - nsiapiv2_0equipment", "description": "Retrieve, plan, and manage the equipment resources (version 2)"}], "definitions": {"AttributeMatchingRuleRO": {"type": "object", "properties": {"impact": {"enum": ["trafficImpactingWithNoMatch", "noTrafficImpactWithNoMatch"], "type": "string"}, "matchRequired": {"default": false, "type": "boolean"}, "matchingScope": {"enum": ["e2e", "local"], "type": "string"}}}, "Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "EquipmentRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to equipment, such as EquipmentExpectationData"}, "data": {"description": "The equipment data", "$ref": "#/definitions/EquipmentDataRO"}}}, "LocationIndexesRO": {"type": "object"}, "EquipmentExpectationDataRO": {"type": "object", "properties": {"relationships": {"description": "The equipment expectation relationships", "$ref": "#/definitions/EquipmentExpectationRelationshipsRO"}, "attributes": {"description": "The equipment expectation attributes", "$ref": "#/definitions/EquipmentExpectationAttributesRO"}, "type": {"enum": ["equipmentExpectations"], "type": "string", "description": "The equipment resource type"}, "id": {"type": "string", "description": "The unique identifier for the equipment expectation"}}}, "EquipmentRelationshipsRO": {"type": "object", "properties": {"equipmentDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "equipmentHolder": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentPlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "EquipmentExpectationRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Side loaded relationship resources"}, "data": {"description": "The equipment expectation data", "$ref": "#/definitions/EquipmentExpectationDataRO"}}}, "AdditionalAttributesRO": {"type": "object"}, "OneToOneRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipDataRO"}}}, "ErrorSourceRO": {"type": "object", "properties": {"parameter": {"type": "string", "description": "URI query parameter that caused the error"}, "pointer": {"type": "string", "description": "JSON Pointer to the associated entity in the request document"}}}, "EquipmentExpectationListRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/EquipmentExpectationDataRO"}, "type": "array", "description": "The list of equipment expectation"}}}, "CapabilitySpecRO": {"type": "object", "properties": {"attributeSpecs": {"items": {"$ref": "#/definitions/AttributeSpecRO"}, "type": "array", "description": "List of attributes defined in the capability specification that can be acted upon."}}}, "IdentifierRO": {"type": "object"}, "AggregationRO": {"type": "object", "properties": {"buckets": {"items": {"$ref": "#/definitions/AggregationBucketRO"}, "type": "array", "description": "Aggregation results for different criteria"}, "name": {"type": "string", "description": "The name of the aggregation"}}}, "EquipmentPatchRO": {"type": "object", "properties": {"operations": {"items": {"$ref": "#/definitions/EquipmentPatchOperationRO"}, "type": "array"}}}, "AttributePoliciesRO": {"type": "object", "properties": {"defaultAttributeSourcePolicy": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string", "description": "Source of attribute."}, "overrides": {"items": {"$ref": "#/definitions/AttributePolicyOverrideRO"}, "type": "array"}}}, "EquipmentDataRO": {"type": "object", "properties": {"relationships": {"description": "The equipment relationships", "$ref": "#/definitions/EquipmentRelationshipsRO"}, "attributes": {"description": "The equipment attributes", "$ref": "#/definitions/EquipmentAttributesRO"}, "type": {"enum": ["equipment"], "type": "string", "description": "The equipment resource type"}, "id": {"type": "string", "description": "The unique identifier for the equipment resource"}}}, "AttributeSpecRO": {"type": "object", "properties": {"modificationRules": {"items": {"$ref": "#/definitions/AttributeModificationRuleRO"}, "type": "array", "description": "List of operations that are permitted on the attribute."}, "name": {"type": "string", "description": "Name of attribute."}, "defaultValue": {"type": "string", "description": "Default value for attribute."}, "location": {"type": "string", "description": "Location of attribute, using dot notation e.g. attributes.layerTerminations[DSR].additionalAttributes."}, "valueOptions": {"description": "Provides a means to specify the possible values for an attribute.", "$ref": "#/definitions/AttributeValueOptionRO"}, "matchingRules": {"items": {"$ref": "#/definitions/AttributeMatchingRuleRO"}, "type": "array", "description": "List of matching rules that apply to this attribute."}}}, "SyncScopeRO": {"type": "object", "properties": {"name": {"items": {"type": "string"}, "type": "array", "description": "The synchronization scope name"}, "context": {"type": "string", "description": "The synchronization scope context"}}}, "AttributeValueOptionRO": {"type": "object", "properties": {"selectFrom": {"items": {"type": "string"}, "type": "array", "description": "A comma separated list of the choices available for selection."}, "range": {"type": "string", "description": "A range of values in the format of '<from>,<to>,[step]' whereby from is the initial value, to is the end value, and an optional step value to indicate the increment."}}}, "ValidateParametersRO": {"type": "object", "properties": {"include": {"type": "string", "description": "The list of comma separated parameters (if any) to be validated against the expectation"}}}, "RelationshipMetaDataRO": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean", "description": "Flags whether the included relationship object is partially populated or not"}}}, "EquipmentExpectationAttributesRO": {"type": "object", "properties": {"validateParameters": {"description": "Attribute containing the list of parameters (if any) to be validated against the expectation", "$ref": "#/definitions/ValidateParametersRO"}, "startDate": {"type": "string", "description": "The scheduled start date and time of the expectation, with RFC 3339 date-time format"}, "validationState": {"enum": ["UNSET", "VALID", "INVALID"], "type": "string", "description": "Validation state is used by RNC to denote that this equipment has either not been examined by RNC, or been examined by RNC and found to match (valid) or not match (invalid) customer expectations"}, "endDate": {"type": "string", "description": "The scheduled end date and time of the expectation, with RFC 3339 date-time format"}, "siteName": {"type": "string", "description": "The site name associated with the equipment"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "provisionedSpec": {"description": "An equipment specification. Is either an installed specification (physical representation) or a provisioned specification (logical representation) of an equipment", "$ref": "#/definitions/EquipmentSpecRO"}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array", "description": "The list of locations associated with the equipment"}, "availabilityState": {"enum": ["PLANNED", "AVAILABLE", "UNVALIDATED", "INUSE"], "type": "string", "description": "The availability state of the equipment"}, "customerCode": {"type": "string", "description": "Customer code"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "cardType": {"type": "string", "description": "The card type"}, "secondaryState": {"type": "string", "description": "The secondary state of the equipment"}, "siteId": {"type": "string", "description": "The site identifier associated with the equipment"}, "reservationState": {"enum": ["UNKNOWN", "NOT_RESERVED", "RESERVED_FOR_MAINTENANCE", "RESERVED_FOR_FACILITY", "RESERVED_FOR_REVERSION"], "type": "string", "description": "The reservation state of the equipment"}, "nativeName": {"type": "string", "description": "The native name of the equipment"}, "category": {"enum": ["rack", "shelf", "pluggable", "standalone"], "type": "string", "description": "The equipment category"}, "installedSpec": {"description": "An equipment specification. Is either an installed specification (physical representation) or a provisioned specification (logical representation) of an equipment", "$ref": "#/definitions/EquipmentSpecRO"}, "maintenanceMode": {"default": false, "type": "boolean", "description": "Maintenance mode to indicate if the equipment is available or not to MCP. While in maintenance mode, MCP will not provision anything against this equipment (including TPE information)"}}}, "LinksRO": {"type": "object", "properties": {"last": {"type": "string", "description": "The last page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "next": {"type": "string", "description": "The next page of data", "format": "uri"}, "current": {"type": "string", "description": "The current page of data", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "EquipmentPatchOperationRO": {"type": "object", "properties": {"relationships": {"description": "The equipment planned relationships", "$ref": "#/definitions/EquipmentPlannedRelationshipsRO"}, "keys": {"items": {"type": "string"}, "type": "array", "description": "Used to target specific key(s) of the attribute to be deleted"}, "attribute": {"type": "string", "description": "name of an attribute to be deleted"}, "path": {"type": "string", "description": "path of the object/attribute to be patched"}, "attributes": {"description": "The equipment attributes", "$ref": "#/definitions/EquipmentAttributesRO"}, "op": {"enum": ["replace"], "type": "string", "description": "supported operation on an Equipment resource"}}}, "MetaDataRO": {"type": "object", "properties": {"absoluteTotal": {"type": "integer", "description": "The unfiltered total number of entities in the data", "format": "int64"}, "total": {"type": "integer", "description": "The total number of entities in the data", "format": "int64"}, "aggregations": {"items": {"$ref": "#/definitions/AggregationRO"}, "type": "array", "description": "The aggregated data based on a requested aggregation name and criteria"}}}, "SRLGOneToManyRelationshipRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/SRLGDataRO"}, "type": "array", "description": "The SRLG one-to-many relationship"}}}, "EquipmentSpecRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "hardwareVersion": {"type": "string", "description": "The hardware version"}, "serialNumber": {"type": "string", "description": "The serial number"}, "version": {"type": "string", "description": "The software version"}, "partNumber": {"type": "string", "description": "The part number"}, "type": {"type": "string", "description": "The type of equipment"}, "displayLabels": {"description": "Display label key/value pair map", "$ref": "#/definitions/DisplayLabelMapRO"}, "manufacturer": {"type": "string", "description": "The manufacturer"}}}, "AttributeModificationRuleRO": {"type": "object", "properties": {"permittedOperation": {"enum": ["writeAtCreationTime", "readWrite", "readOnly"], "type": "string"}, "constraint": {"enum": ["writeAtFarEnd"], "type": "string"}}}, "LocationRO": {"type": "object", "properties": {"mplsLabel": {"type": "string", "description": "MPLS tunnel forward/reverse in/out label"}, "interfaceIp": {"type": "string", "description": "DEPRECATED The IP address of MPLS interface"}, "baynum": {"type": "string", "description": "Bay number"}, "mcId": {"type": "string", "description": "The identifier of the media channel"}, "fiberPairTermination": {"type": "string", "description": "The terminating fiber pair id within a Branching Unit (BU)"}, "frequency": {"type": "string", "description": "The frequency of the channel"}, "subshelf": {"type": "string"}, "wavelength": {"type": "string"}, "ringId": {"type": "string", "description": "ID of the ring"}, "eqptGrp": {"type": "string", "description": "The group ID obtained from RTRV-EQPTGRP for the SAOS card on which the entity resides"}, "port": {"type": "string"}, "leg": {"enum": ["trunk", "a1", "a2"], "type": "string", "description": "Branching Unit (BU) leg e.g. Trunk, A1 or A2"}, "slot": {"type": "string"}, "index": {"type": "string"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string", "description": "MPLS tunnel role"}, "vce": {"type": "string", "description": "The VS name of the CTP entity"}, "fic": {"type": "string", "description": "Frame identification code"}, "subport": {"type": "string"}, "neName": {"type": "string", "description": "Name of the networkConstruct. For example, the OSRP node name in controlPlane."}, "logicalPortName": {"type": "string"}, "protectionRole": {"enum": ["primary", "backup"], "type": "string", "description": "Protection role"}, "lagName": {"type": "string", "description": "Name of the LAG"}, "instance": {"type": "string"}, "locationIndex": {"items": {"$ref": "#/definitions/LocationIndexesRO"}, "type": "array", "description": "List of location indexes"}, "odu2_index": {"type": "string"}, "rapsVid": {"type": "string", "description": "R-APS VID"}, "iclName": {"type": "string", "description": "Name of the ICL"}, "channel": {"type": "string"}, "nmcId": {"type": "string", "description": "OSTi CTP for the SNC"}, "direction": {"enum": ["tx", "rx"], "type": "string", "description": "The direction of the traffic flow e.g. Tx or Rx"}, "mgmtNmcId": {"type": "string", "description": "TBD"}, "peerIp": {"type": "string", "description": "Address of the BGP peer"}, "shelf": {"type": "string"}, "peerAs": {"type": "integer", "description": "Autonomous System number of the BGP peer", "format": "int64"}, "vlan": {"type": "string", "description": "The VLAN ID of the CTP entity"}, "oduCn_index": {"type": "string"}, "lspName": {"type": "string", "description": "MPLS tunnel name"}, "virtualRingName": {"type": "string", "description": "Name of the virtual ring"}, "logicalId": {"type": "string"}, "mgmtMcId": {"type": "string", "description": "TBD"}, "primaryLspName": {"type": "string", "description": "The primary MPLS tunnel name"}, "interfaceName": {"type": "string", "description": "Interface name of the IP FTP"}, "odu4_index": {"type": "string"}, "subsubslot": {"type": "string"}, "managementType": {"enum": ["tl1", "saos", "netconf", "rest", "corba", "submarineConf"], "type": "string", "description": "Management protocol type"}, "sncId": {"type": "string", "description": "Snc id number"}, "eth_index": {"type": "string"}, "pseudoWireId": {"type": "string", "description": "DEPRECATED The identifier of Pseudo-Wire CTP"}, "srcIp": {"type": "string", "description": "Source IP of the node"}, "pseudoWireName": {"type": "string", "description": "The name of the Pseudo-Wire on the CTP"}, "rack": {"type": "string"}, "subslot": {"type": "string"}}}, "SRLGDataRO": {"type": "object", "properties": {"type": {"enum": ["SRLG"], "type": "string", "description": "The SRLG Attribute type"}, "id": {"type": "string", "description": "The identifier value of the SRLG. It's same as the native value of structured srlg attributes"}}}, "EquipmentExpectationRelationshipsRO": {"type": "object", "properties": {"srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "equipmentIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentHolder": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "EquipmentPlannedRelationshipsRO": {"type": "object", "properties": {"dynamicPropagatedSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentHolder": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "dynamicInheritedSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "manualSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "dynamicAutoSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}}}, "ErrorsRO": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/ErrorRO"}, "type": "array", "description": "A list of errors"}}}, "EquipmentAttributesRO": {"type": "object", "properties": {"siteName": {"type": "string", "description": "The site name associated with the equipment"}, "specificationMismatchStatus": {"type": "string", "description": "Indicates the status of a mismatch between either the planned, installed, or provisioned specifications"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array", "description": "The list of locations associated with the equipment"}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "displayData": {"description": "The equipment display data", "$ref": "#/definitions/EquipmentDisplayDataRO"}, "secondaryState": {"type": "string", "description": "The secondary state of the equipment"}, "installedSpec": {"description": "An equipment specification. Is either an installed specification (physical representation) or a provisioned specification (logical representation) of an equipment", "$ref": "#/definitions/EquipmentSpecRO"}, "maintenanceMode": {"default": false, "type": "boolean", "description": "Maintenance mode to indicate if the equipment is available or not to MCP. While in maintenance mode, MCP will not provision anything against this equipment (including TPE information)"}, "category": {"enum": ["rack", "shelf", "pluggable", "standalone"], "type": "string", "description": "The equipment category"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the equipment"}, "provisionedSpec": {"description": "An equipment specification. Is either an installed specification (physical representation) or a provisioned specification (logical representation) of an equipment", "$ref": "#/definitions/EquipmentSpecRO"}, "state": {"enum": ["IS", "OOS", "OOS_AU", "OOS_MA", "OOS_AUMA"], "type": "string", "description": "The primary state of the equipment"}, "neContactState": {"enum": ["IN", "OUT"], "type": "string", "description": "The connection status of a shelf"}, "specificationMismatch": {"default": false, "type": "boolean", "description": "Indicates if there's a mismatch between either the planned, installed, or provisioned specifications"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "capabilitySpecification": {"description": "Defines a capability specification; normally for a TPE but can be utilized elsewhere in the future.", "$ref": "#/definitions/CapabilitySpecRO"}, "cardType": {"type": "string", "description": "The card type"}, "siteId": {"type": "string", "description": "The site identifier associated with the equipment"}, "reservationState": {"enum": ["UNKNOWN", "NOT_RESERVED", "RESERVED_FOR_MAINTENANCE", "RESERVED_FOR_FACILITY", "RESERVED_FOR_REVERSION"], "type": "string", "description": "The reservation state of the equipment"}, "nativeName": {"type": "string", "description": "The native name of the equipment"}, "availabilityState": {"enum": ["PLANNED", "AVAILABLE", "UNVALIDATED", "INUSE"], "type": "string", "description": "The availability state of the equipment"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "validationState": {"enum": ["UNSET", "VALID", "INVALID"], "type": "string", "description": "Validation state is used by RNC to denote that this equipment has either not been examined by RNC, or been examined by RNC and found to match (valid) or not match (invalid) customer expectations"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "customerCode": {"type": "string", "description": "Customer code"}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePoliciesRO"}}}, "EquipmentListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to equipment, such as EquipmentExpectationData"}, "meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "data": {"items": {"$ref": "#/definitions/EquipmentDataRO"}, "type": "array", "description": "A list of equipment"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "ErrorRO": {"type": "object", "properties": {"source": {"description": "Error source", "$ref": "#/definitions/ErrorSourceRO"}, "code": {"type": "string", "description": "Error code"}, "detail": {"type": "string", "description": "Error details"}, "title": {"type": "string", "description": "Error title"}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "AggregationBucketRO": {"type": "object", "properties": {"absoluteTotal": {"type": "string", "description": "The unfiltered total number of entities in the data"}, "subAggregations": {"description": "The aggregated data based on a requested aggregation name and criteria", "$ref": "#/definitions/AggregationRO"}, "bucketValue": {"type": "string", "description": "The result of the aggregation"}, "bucketKey": {"type": "string", "description": "The key of the aggregation criteria"}}}, "DisplayLabelMapRO": {"type": "object"}, "OneToManyRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array", "description": "The one-to-many relationship"}}}, "EquipmentPlannedDataRO": {"type": "object", "properties": {"relationships": {"description": "The equipment planned relationships", "$ref": "#/definitions/EquipmentPlannedRelationshipsRO"}, "attributes": {"description": "The equipment planned attributes that are set by REST API and used to validate the expectation", "$ref": "#/definitions/EquipmentPlannedAttributesRO"}, "type": {"enum": ["equipmentPlanned"], "type": "string", "description": "The equipment resource type"}, "id": {"type": "string", "description": "The unique identifier for the planned equipment"}}}, "EquipmentDisplayDataRO": {"type": "object", "properties": {"displayName": {"type": "string", "description": "Display name of the equipment"}, "displayNameFormat": {"type": "string", "description": "Format of the display name"}}}, "AttributePolicyOverrideRO": {"type": "object", "properties": {"attributeSource": {"type": "string", "description": "Attribute source, in case it has the value from some other references, (e.g. attributes.srlg is relationships.srlgs.id"}, "attributeName": {"type": "string", "description": "Attribute path(e.g. attribute.customerCode or relationship.endpoints)"}, "policies": {"items": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string"}, "type": "array"}}}, "EquipmentPlannedAttributesRO": {"type": "object", "properties": {"category": {"enum": ["rack", "shelf", "pluggable", "standalone"], "type": "string", "description": "The equipment category"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "validationState": {"enum": ["UNSET", "VALID", "INVALID"], "type": "string", "description": "Validation state is used by RNC to denote that this equipment has either not been examined by RNC, or been examined by RNC and found to match (valid) or not match (invalid) customer expectations"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "siteName": {"type": "string", "description": "The site name associated with the equipment"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "provisionedSpec": {"description": "An equipment specification. Is either an installed specification (physical representation) or a provisioned specification (logical representation) of an equipment", "$ref": "#/definitions/EquipmentSpecRO"}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array", "description": "The list of locations associated with the equipment"}, "availabilityState": {"enum": ["PLANNED", "AVAILABLE", "UNVALIDATED", "INUSE"], "type": "string", "description": "The availability state of the equipment"}, "customerCode": {"type": "string", "description": "Customer code"}, "cardType": {"type": "string", "description": "The card type"}, "secondaryState": {"type": "string", "description": "The secondary state of the equipment"}, "siteId": {"type": "string", "description": "The site identifier associated with the equipment"}, "reservationState": {"enum": ["UNKNOWN", "NOT_RESERVED", "RESERVED_FOR_MAINTENANCE", "RESERVED_FOR_FACILITY", "RESERVED_FOR_REVERSION"], "type": "string", "description": "The reservation state of the equipment"}, "nativeName": {"type": "string", "description": "The native name of the equipment"}, "installedSpec": {"description": "An equipment specification. Is either an installed specification (physical representation) or a provisioned specification (logical representation) of an equipment", "$ref": "#/definitions/EquipmentSpecRO"}, "maintenanceMode": {"default": false, "type": "boolean", "description": "Maintenance mode to indicate if the equipment is available or not to MCP. While in maintenance mode, MCP will not provision anything against this equipment (including TPE information)"}}}, "EquipmentPlannedRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Side loaded relationship resources"}, "data": {"description": "The equipment planned data", "$ref": "#/definitions/EquipmentPlannedDataRO"}}}, "UserDataRO": {"type": "object"}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_equipment_and_topology_planning.json b/tapi/resources/MCP_4.0.0_equipment_and_topology_planning.json
deleted file mode 100644
index bd47ddfd693df023a472f2e3f0c86882d065a3a8..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_equipment_and_topology_planning.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "v1", "description": "Equipment and Topology Planning REST API", "title": "Equipment and Topology Planning"}, "paths": {"/equipmenttopologyplanning/api/v1/HeatDissipationReport": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/HeatDissipationReport.HeatDissipationReport"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "description": "Get Heat Dissipation Report API with support for different filters i.e.\r\nphysicalLocations, tidNames, nodeIdentities, racks\r\n<para />Note: Use '|' as separator between mulitple values for any query parameter.\r\n<para />Following are some valid example query formats:\r\n<para /> 1. HeatDissipationReport?tidnames=tid1|tid2|tid3\r\n<para /> 2. HeatDissipationReport?tidnames=tid1&amp;racks=1|2\r\n<para /> 3. HeatDissipationReport?nodeidentities=clli1::1|clli2::2\r\n<para /> 4. HeatDissipationReport?nodeidentities=clli1::1&amp;racks=1|2\r\n<para /> 5. HeatDissipationReport?physicalLocations=site1|site2", "parameters": [{"description": "Accepts one or more valid physicalLocations separated by '|'.", "required": false, "type": "string", "name": "physicalLocations", "in": "query"}, {"description": "Accepts one or more valid tidNames separated by '|'.", "required": false, "type": "string", "name": "tidNames", "in": "query"}, {"description": "Accepts one or more valid nodeIdentities separated by '|' and \r\n            each nodeIdentity with Clli and NodeId separated with \"::\" e.g. \"clli1::1\".", "required": false, "type": "string", "name": "nodeIdentities", "in": "query"}, {"description": "Accepts one or more valid racks separated with '|'.", "required": false, "type": "string", "name": "racks", "in": "query"}], "produces": ["application/json"], "tags": ["HeatDissipationReport"], "summary": "Get Heat Dissipation Report", "consumes": [], "operationId": "Get"}}, "/equipmenttopologyplanning/api/v1/GlobalConfigurationData/SingleILASiteLabel/{singleILASiteLabelValue}": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "parameters": [{"description": "", "required": true, "type": "string", "name": "singleILASiteLabelValue", "in": "path"}], "produces": ["application/json"], "tags": ["GlobalConfigurationData"], "summary": "Update the single ILA site label", "consumes": [], "operationId": "UpdateSingleILASiteLabel"}}, "/equipmenttopologyplanning/api/v1/PlanningPolicies": {"post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/PlanningPolicy.PlanningPolicy"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.ErrorList"}}}, "description": "- Planning policy id :\r\n    - this planningPolicy parameter will be assigned internally and will be returned in the response body upon sucessful operation\r\n    - specifying planningPolicy id in the reqest body will result in bad request response\r\n- Planning policy name : \r\n    - valid name is any combinations of characters except empty string or series of white spaces\r\n    - duplicate names are not allowed\r\n- Planning policy userActivityInfo : \r\n    - this property values are internally assigned and will be returned in the response body upon sucessful operation\r\n    - specifying userActivityInfo in the request body will result in bad request response\r\n- ServiceProvisioningPolicy :\r\n    - cardPec property is validated as follows:\r\n        - cardPec cannot be left blank\r\n        - cardPec has to match one of the supported card pecs for the current release\r\n        - same cardPec cannot be used in two different CardPolicies\r\n    - certifiedMatePecs property is validated as follows:\r\n        - mate pec strings are validated against supported card pecs for the current release\r\n        - mate pecs and cardPec are validated if they are actually compatible (can be mated) in the current release\r\n        - certifiedMatePecs section should be left blank for OTR or MOTR cards. Cards that host client and line ports on the same card should leave this section blank since same card is used as mate\r\n    - certifiedClientPluggables property is validated as follows:\r\n        - client pluggables pec and rate combinations are validated if they are actually supported by cardPec in current release\r\n        - client pluggables pec and rate combinations have to be unique, meaning duplicate definitions are not allowed  \r\n        - client pluggable pec cannot be left blank\r\n        - certifiedClientPluggables section should be left blank for cards that do not have any supported client pluggable (like line cards or client cards with built in client port)\r\n        - certifiedClientPluggables cannot be left blank if card supports at least one client pluggable", "parameters": [{"schema": {"$ref": "#/definitions/PlanningPolicy.PlanningPolicy"}, "description": "The planning policy.", "required": false, "name": "planningPolicy", "in": "body"}], "produces": ["application/json"], "tags": ["PlanningPolicy"], "summary": "Create a new planning policy", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "Create"}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PlanningPolicy.PlanningPolicy"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The planning policy name", "required": false, "type": "string", "name": "name", "in": "query"}], "produces": ["application/json"], "tags": ["PlanningPolicy"], "summary": "Gets planning policies", "consumes": [], "operationId": "GetAll"}}, "/equipmenttopologyplanning/api/v1/AutoSlatData/name/{projectName}": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/AutoSlat.Network"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The project name", "required": true, "type": "string", "name": "projectName", "in": "path"}], "produces": ["text/plain", "application/json", "text/json"], "tags": ["AutoSlatData"], "summary": "Generate the Auto-SLAT data using project name", "consumes": [], "operationId": "Get"}}, "/equipmenttopologyplanning/api/v1/GlobalConfigurationData/HeatDissipationLimitThreshold1/{heatDissipationLimitThreshold1Value}": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "description": "NOTE: This operation should not be used, please use planning policies to set the global heat dissipation threshold", "parameters": [{"description": "Heat dissipation limit threshold 1 value to be updated.", "required": true, "type": "string", "name": "heatDissipationLimitThreshold1Value", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["GlobalConfigurationData"], "summary": "Update config value corresponding to heat dissipation limit per bay threshold 1.", "consumes": [], "operationId": "UpdateHeatDissipationLimitThreshold1"}}, "/equipmenttopologyplanning/api/v1/Reports/importvalidation/{projectId}/execute": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Reports.RuleExecutionReport"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The planning project ID", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectId"}], "produces": ["application/json"], "tags": ["Reports"], "summary": "Executes import validation on the project", "consumes": [], "operationId": "ExecuteImportValidation"}}, "/equipmenttopologyplanning/api/v1/Reports/nodeandequipmentdata/{projectId}": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Reports.ProjectNodeAndEquipmentDataReport"}}, "404": {"description": "Not Found", "schema": {"$ref": "#/definitions/Common.Error"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The planning project id", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectId"}], "produces": ["application/json"], "tags": ["Reports"], "summary": "Generate the node and equipment data report for the project network", "consumes": [], "operationId": "GetNodeAndEquipmentDataReport"}}, "/equipmenttopologyplanning/api/v1/FiberRoutes": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/FiberRoute.FiberRouteDelta"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"schema": {"$ref": "#/definitions/FiberRoute.AddFiberRouteRequest"}, "description": "", "required": false, "name": "request", "in": "body"}], "produces": ["text/plain", "application/json", "text/json"], "tags": ["FiberRoutes"], "summary": "Roll fiber Route. The method detects the affected fiber route and returns the delta between the affected route and the new route.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "Roll"}, "post": {"responses": {"201": {"description": "Success"}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "description": "New fiber routes can be created between existing or new ROADM nodes. The request may contain any number of nodes with the restriction that the route\r\nmust begin and end with a ROADM.", "parameters": [{"schema": {"$ref": "#/definitions/FiberRoute.AddFiberRouteRequest"}, "description": "The fiber route request.", "required": false, "name": "request", "in": "body"}], "produces": ["text/plain", "application/json", "text/json"], "tags": ["FiberRoutes"], "summary": "Create a new fiber route.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "Create"}}, "/equipmenttopologyplanning/api/v1/GlobalConfigurationData/DefaultProfilePreferencesValue/{defaultProfilePreferencesValue}": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "parameters": [{"description": "New profile to be used {ROD, Generic}.", "required": true, "type": "string", "name": "defaultProfilePreferencesValue", "in": "path"}], "produces": ["application/json"], "tags": ["GlobalConfigurationData"], "summary": "Update config value corresponding to default preferences profile.", "consumes": [], "operationId": "UpdateDefaultProfilePreferencesData"}}, "/equipmenttopologyplanning/api/v1/Reports/importvalidation/execute": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Reports.RuleExecutionReport"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The planning project name", "required": false, "type": "string", "name": "projectName", "in": "query"}], "produces": ["application/json"], "tags": ["Reports"], "summary": "Executes import validation on the project", "consumes": [], "operationId": "ExecuteImportValidation"}}, "/equipmenttopologyplanning/api/v1/GlobalConfigurationData": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}, "description": "The update request of configuration item.", "required": false, "name": "configData", "in": "body"}], "produces": ["application/json"], "tags": ["GlobalConfigurationData"], "summary": "Updates the value for config data item.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "UpdateDefaultGlobalConfigurationData"}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/GlobalConfigurationData.ConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "parameters": [], "produces": ["application/json"], "tags": ["GlobalConfigurationData"], "summary": "Get all config data", "consumes": [], "operationId": "GetAll"}}, "/equipmenttopologyplanning/api/v1/GlobalConfigurationData/DgeWithSingleILASiteLabel/{DgeWithSingleILASiteLabelValue}": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "parameters": [{"description": "", "required": true, "type": "string", "name": "dgeWithSingleILASiteLabelValue", "in": "path"}], "produces": ["application/json"], "tags": ["GlobalConfigurationData"], "summary": "Update the DGE with single ILA site label", "consumes": [], "operationId": "UpdateDgeWithSingleILASiteLabel"}}, "/equipmenttopologyplanning/api/v1/Reports/importvalidation": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Reports.RuleExecutionReport"}}, "404": {"description": "Not Found", "schema": {"$ref": "#/definitions/Common.Error"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The planning project name", "required": false, "type": "string", "name": "projectName", "in": "query"}], "produces": ["application/json"], "tags": ["Reports"], "summary": "Get the import validation report for a project\r\n\r\n<para />Returns a cached version of the report if it exists.", "consumes": [], "operationId": "GetImportValidationReport"}}, "/equipmenttopologyplanning/api/v1/Reports/importvalidation/{projectId}": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Reports.RuleExecutionReport"}}, "404": {"description": "Not Found", "schema": {"$ref": "#/definitions/Common.Error"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The planning project ID", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectId"}], "produces": ["application/json"], "tags": ["Reports"], "summary": "Get the import validation report for a project\r\n\r\n<para />Returns a cached version of the report if it exists.", "consumes": [], "operationId": "GetImportValidationReport"}}, "/equipmenttopologyplanning/api/v1/Equipment": {"post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/Equipment.EquipmentResponse"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "description": "Adds equipment to an existing node. The node may be in the planned state but must have been committed prior to adding equipment.", "parameters": [{"schema": {"$ref": "#/definitions/Equipment.AddEquipmentRequest"}, "description": "The add equipment request.", "required": false, "name": "request", "in": "body"}], "produces": ["application/json"], "tags": ["Equipment"], "summary": "Adds equipment to a node.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "Post"}}, "/equipmenttopologyplanning/api/v1/GlobalConfigurationData/HeatDissipationLimitThreshold2/{heatDissipationLimitThreshold2Value}": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "description": "NOTE: This operation should not be used, please use planning policies to set the global heat dissipation threshold", "parameters": [{"description": "Heat dissipation limit threshold 2 value to be updated.", "required": true, "type": "string", "name": "heatDissipationLimitThreshold2Value", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["GlobalConfigurationData"], "summary": "Update config value corresponding to heat dissipation limit per bay threshold 2.", "consumes": [], "operationId": "UpdateHeatDissipationLimitThreshold2"}}, "/equipmenttopologyplanning/api/v2/PlannedData/fiberLoss": {"patch": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PlannedData.FiberList"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.ErrorList"}}}, "description": "This request may be used in two ways:\r\n            \r\n1) Specifying only freId. The following properties are supported:\r\n- Loss: Total planned loss of the fiber span\r\n- Margin: Total planned margin of the fiber span\r\n- FiberLossReconciled: Indicates whether the planned fiber loss has been reconciled with measured fiber loss\r\n            \r\n2) Specifying freId and fiberId. The following properties are supported:\r\n- Loss: Planned fiber loss of the fiber\r\n- Margin: Planned margin of the fiber\r\n- HeadPPL: Planned head-end patch-panel loss of the fiber\r\n- TailPPL: Planned tail-end patch-panel loss of the fiber\r\n- FiberLossReconciled: Indicates whether the planned fiber loss has been reconciled with measured fiber loss", "parameters": [{"schema": {"$ref": "#/definitions/PlannedData.FiberList"}, "description": "fiberLoss", "required": false, "name": "fibers", "in": "body"}], "produces": ["text/plain", "application/json", "text/json"], "tags": ["PlannedDataV2"], "summary": "Partially updates a list of fibers", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "PatchFiberLosses"}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PlannedData.FiberList"}}, "204": {"description": "Success"}}, "description": "The request may contain any number of freIds for which loss values are to be fetched.\r\n            \r\nThe properties returned by this request for each freId are:\r\n- Loss: Total planned loss of the fiber span\r\n- Head-end patch-panel loss: Planned loss of the patch panel at the head of the fiber\r\n- Tail-end patch-panel loss: Planned loss of the patch panel at the tail of the fiber\r\n- Margin: Total planned margin of the fiber span\r\n- FiberLossReconciled: Indicates whether the planned fiber loss of the span has been reconciled with measured fiber loss", "parameters": [{"description": "Comma separated FreIDs for fibers.", "required": true, "type": "string", "name": "freIds", "in": "query"}], "produces": ["text/plain", "application/json", "text/json"], "tags": ["PlannedDataV2"], "summary": "Get fiber loss data for one or more freIds", "consumes": [], "operationId": "GetFiberLosses"}}, "/equipmenttopologyplanning/api/v1/EquipmentKitNameMappings/{kitName}": {"put": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/EquipmentSummary.KitToOinMappingItem"}}, "200": {"description": "Success", "schema": {"$ref": "#/definitions/EquipmentSummary.KitToOinMappingItem"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.ErrorList"}}}, "description": "Updates kit name mapping if mapping with supplied kitName exists or creates new mapping otherwise.\r\n- kitName:\r\n    - unique record identifier, meaning no duplicate records with the same kit name are allowed\r\n    - can't be null\r\n    - can't be series of white spaces\r\n    - valid string length is between 1 and 100 characters (inclusive)\r\n    - kitName parameter in URL and in request body have to match, otherwise BadRequest is returned\r\n- oin: \r\n    - can't be null\r\n    - can't be series of white spaces\r\n    - valid string length is between 1 and 100 characters (inclusive) \r\n- comments:\r\n    - valid string length is between 0 and 600 characters (inclusive)\r\n- enabled:\r\n    - by default (if not specified) set to false", "parameters": [{"description": "The equipment kit name.", "required": true, "type": "string", "name": "kitName", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentSummary.KitToOinMappingItem"}, "description": "The equipment kit name mapping.", "required": false, "name": "kitNameMapping", "in": "body"}], "produces": ["application/json"], "tags": ["EqptKitNameMappings"], "summary": "Updates or creates kit name mapping", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "Update"}, "delete": {"responses": {"404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "204": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.ErrorList"}}}, "parameters": [{"description": "The equipment kit name.", "required": true, "type": "string", "name": "kitName", "in": "path"}], "produces": ["application/json"], "tags": ["EqptKitNameMappings"], "summary": "Deletes equipment kit name mapping for a given kitName", "consumes": [], "operationId": "Delete"}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/EquipmentSummary.KitToOinMappingItem"}}, "404": {"description": "Not Found", "schema": {"$ref": "#/definitions/Common.Error"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The equipment kit name", "required": true, "type": "string", "name": "kitName", "in": "path"}], "produces": ["application/json"], "tags": ["EqptKitNameMappings"], "summary": "Get the equipment kit name mapping for a given kitName", "consumes": [], "operationId": "GetEqptKitNameMappingByKitName"}}, "/equipmenttopologyplanning/api/v1/GlobalConfigurationData/DgeWithDualILASiteLabel/{DgeWithDualILASiteLabelValue}": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "parameters": [{"description": "", "required": true, "type": "string", "name": "dgeWithDualILASiteLabelValue", "in": "path"}], "produces": ["application/json"], "tags": ["GlobalConfigurationData"], "summary": "Update the DGE with dual ILA site label", "consumes": [], "operationId": "UpdateDgeWithDualILASiteLabel"}}, "/equipmenttopologyplanning/api/v1/EquipmentSummary": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/EquipmentSummary.EquipmentSummaryResponse"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "parameters": [{"description": "The project name", "required": false, "type": "string", "name": "projectName", "in": "query"}, {"description": "The project list ID.", "format": "uuid", "required": false, "in": "query", "type": "string", "name": "projectListId"}, {"description": "The project list name.", "required": false, "type": "string", "name": "projectListName", "in": "query"}], "produces": ["application/json"], "tags": ["EquipmentSummaryV1"], "summary": "Generates an equipment summary for a project or project list using query parameters.", "consumes": [], "operationId": "GetByName"}}, "/equipmenttopologyplanning/api/v2/EquipmentSummary": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/EquipmentSummary.EquipmentSummaryResponseOrganizedByProject"}}, "204": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "description": "One of the following combinations is allowed per request:\r\n1. physicalLocations:\r\nSummary for equipment at committed/deployed locations.\r\n2. physicalLocations and projects:\r\nSummary for equipment at committed/deployed locations that are part of any of the projects provided.\r\n3. projectId and/or projectName:\r\nSummary for planned equipment for the project provided.\r\n4. projectListId and/or projectListName:\r\nSummary for planned equipment for the project list provided. If organizeByProject is set to true then group\r\nequipment by projects in the list. Otherwise combine the equipment of all the projects together.", "parameters": [{"description": "List of comma-separated (deployed or committed) physical locations", "required": false, "type": "string", "name": "physicalLocations", "in": "query"}, {"description": "List of comma-separated project names", "required": false, "type": "string", "name": "projects", "in": "query"}, {"description": "The project ID", "format": "uuid", "required": false, "in": "query", "type": "string", "name": "projectId"}, {"description": "The project name", "required": false, "type": "string", "name": "projectName", "in": "query"}, {"description": "The project list ID", "format": "uuid", "required": false, "in": "query", "type": "string", "name": "projectListId"}, {"description": "The project list name", "required": false, "type": "string", "name": "projectListName", "in": "query"}, {"description": "Organize by project, defaults to true.", "default": true, "required": false, "in": "query", "type": "boolean", "name": "organizeByProject"}], "produces": ["application/json"], "tags": ["EquipmentSummaryV2"], "summary": "Generate equipment summary for projects, project lists, or physical locations.", "consumes": [], "operationId": "GetByQueryParams"}}, "/equipmenttopologyplanning/api/v1/Reports/equipment/{projectId}/delta": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Reports.EquipmentDeltaReport"}}, "404": {"description": "Not Found", "schema": {"$ref": "#/definitions/Common.Error"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The planning project id", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectId"}], "produces": ["application/json"], "tags": ["Reports"], "summary": "Generate the equipment delta report for the project network", "consumes": [], "operationId": "GetEquipmentDeltaReport"}}, "/equipmenttopologyplanning/api/v1/GlobalConfigurationData/{itemKey}": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The config item key", "required": true, "type": "string", "name": "itemKey", "in": "path"}], "produces": ["application/json"], "tags": ["GlobalConfigurationData"], "summary": "Get a config item corresponding to a given key", "consumes": [], "operationId": "GetConfigItem"}}, "/equipmenttopologyplanning/api/v1/Reports/equipment/{projectId}": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Reports.EquipmentReport"}}, "404": {"description": "Not Found", "schema": {"$ref": "#/definitions/Common.Error"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The planning project id", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectId"}], "produces": ["application/json"], "tags": ["Reports"], "summary": "Generate the equipment report for the project network", "consumes": [], "operationId": "GetEquipmentReport"}}, "/equipmenttopologyplanning/api/v1/Reports/oms/{projectId}": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Reports.OmsReport"}}, "404": {"description": "Not Found", "schema": {"$ref": "#/definitions/Common.Error"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The planning project id", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectId"}], "produces": ["application/json"], "tags": ["Reports"], "summary": "Generate the OMS report for the project network", "consumes": [], "operationId": "GetOmsReport"}}, "/equipmenttopologyplanning/api/v1/EquipmentKitNameMappings": {"post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/EquipmentSummary.KitToOinMappingItem"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.ErrorList"}}}, "description": "- kitName:\r\n   - unique record identifier, meaning no duplicate records with the same kit name are allowed\r\n   - can't be null\r\n   - can't be series of white spaces\r\n    - valid string length is between 1 and 100 characters(inclusive)\r\n- oin: \r\n    - can't be null\r\n    - can't be series of white spaces\r\n    - valid string length is between 1 and 100 characters(inclusive)\r\n- comments:\r\n    - valid string length is between 0 and 600 characters(inclusive)\r\n- enabled:\r\n    - by default (if not specified) set to false", "parameters": [{"schema": {"$ref": "#/definitions/EquipmentSummary.KitToOinMappingItem"}, "description": "The equipment kit name mapping.", "required": false, "name": "kitNameMapping", "in": "body"}], "produces": ["application/json"], "tags": ["EqptKitNameMappings"], "summary": "Creates a new equipment kit name mapping", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "Create"}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/EquipmentSummary.KitToOinMapping"}}, "404": {"description": "Not Found", "schema": {"$ref": "#/definitions/Common.Error"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [], "produces": ["application/json"], "tags": ["EqptKitNameMappings"], "summary": "Gets all equipment kit name mappings", "consumes": [], "operationId": "GetAll"}}, "/equipmenttopologyplanning/api/v1/EquipmentSummary/{projectId}": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/EquipmentSummary.EquipmentSummaryResponse"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "parameters": [{"description": "The project ID", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectId"}], "produces": ["application/json"], "tags": ["EquipmentSummaryV1"], "summary": "Generate an equipment summary for a project.", "consumes": [], "operationId": "GetByGuid"}}, "/equipmenttopologyplanning/api/v1/GlobalConfigurationData/DgeWithAtoZDualILAZtoASingleILASiteLabel/{DgeWithAtoZDualILAZtoASingleILASiteLabelValue}": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "parameters": [{"description": "", "required": true, "type": "string", "name": "dgeWithAtoZDualILAZtoASingleILASiteLabelValue", "in": "path"}], "produces": ["application/json"], "tags": ["GlobalConfigurationData"], "summary": "Update the DGE with dual ILA in A-Z and single ILA in Z-A site label", "consumes": [], "operationId": "UpdateDgeWithAtoZDualILAZtoASingleILASiteLabel"}}, "/equipmenttopologyplanning/api/v1/EquipmentSummary/projectView": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/EquipmentSummary.EquipmentSummaryResponseOrganizedByProject"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The project list name.", "required": false, "type": "string", "name": "projectListName", "in": "query"}], "produces": ["application/json"], "tags": ["EquipmentSummaryV1"], "summary": "Generates an equipment summary for a project list using query parameters. Equipment data are organized by projects.", "consumes": [], "operationId": "ViewProjectListEquipmentSummaryByProject"}}, "/equipmenttopologyplanning/api/v1/PlanningPolicies/{id}": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PlanningPolicy.PlanningPolicy"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.ErrorList"}}}, "description": "- Planning policy id :\r\n    - if planningPolicy parameter contains id it shall match id parameter, otherwise bad request response is returned. It is ok to ommit id value in the planningPolicy body\r\n- Planning policy name :\r\n    -  planningPolicy name parameter shall be unique. If duplicate request will result in bad request response\r\n    -  planningPolicy name parameter can't be empty string or series of white spaces and request with such values will result in bad request response\r\n- Planning policy userActivityInfo : \r\n    - this property values are internally assigned and will be returned in the response body upon sucessful operation\r\n    - specifying userActivityInfo in the request body will result in bad request response\r\n- ServiceProvisioningPolicy :\r\n    - cardPec property is validated as follows:\r\n        - cardPec cannot be left blank\r\n        - cardPec has to match one of the supported card pecs for the current release\r\n        - same cardPec cannot be used in two different CardPolicies\r\n    - certifiedMatePecs property is validated as follows:\r\n        - mate pec strings are validated against supported card pecs for the current release\r\n        - mate pecs and cardPec are validated if they are actually compatible (can be mated) in the current release\r\n        - certifiedMatePecs section should be left blank for OTR or MOTR cards. Cards that host client and line ports on the same card should leave this section blank since same card is used as mate\r\n    - certifiedClientPluggables property is validated as follows:\r\n        - client pluggables pec and rate combinations are validated if they are actually supported by cardPec in current release\r\n        - client pluggables pec and rate combinations have to be unique, meaning duplicate definitions are not allowed  \r\n        - client pluggable pec cannot be left blank\r\n        - certifiedClientPluggables section should be left blank for cards that do not have any supported client pluggable (like line cards or client cards with built in client port)\r\n        - certifiedClientPluggables cannot be left blank if card supports at least one client pluggable", "parameters": [{"description": "The planning policy ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}, {"schema": {"$ref": "#/definitions/PlanningPolicy.PlanningPolicy"}, "description": "The planning policy.", "required": false, "name": "planningPolicy", "in": "body"}], "produces": ["application/json"], "tags": ["PlanningPolicy"], "summary": "Updates the specified planning policy", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "Update"}, "delete": {"responses": {"404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "204": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The planning policy Id.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["PlanningPolicy"], "summary": "Deletes a planning policy", "consumes": [], "operationId": "Delete"}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PlanningPolicy.PlanningPolicy"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "The planning policy Id", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["PlanningPolicy"], "summary": "Get a planning policy by Id", "consumes": [], "operationId": "GetPolicyByGuid"}}, "/equipmenttopologyplanning/api/v3/EquipmentSummary": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/EquipmentSummary.EquipmentSummaryResponseOrganizedByProject"}}, "204": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Common.Error"}}}, "description": "One of the following combinations is allowed per request:\r\n1. physicalLocations:\r\nSummary for equipment at committed/deployed locations.\r\n2. physicalLocations and projects:\r\nSummary for equipment at committed/deployed locations that are part of any of the projects provided.\r\n3. physicalLocations and projectLists\r\nSummary for equipment at committed/deployed locations and equipment at those locations that are part of the project list (project list name)\r\nprovided\r\n4. physicalLocations and projectListIds\r\nSummary for equipment at committed/deployed locations and equipment at those locations that are part of the project list (project list id)\r\nprovided\r\n5. physicalLocations and projects and projectLists\r\nSummary for equipment at committed/deployed locations and equipment at those locations that are part of the project list (project list name)\r\nprovided and are part of any of the projects (project names) provided\r\n6. physicalLocations and projects and projectListIds\r\nSummary for equipment at committed/deployed locations and equipment at those locations that are part of the project list (project list id)\r\nprovided and are part of any of the projects (project names) provided\r\n7. projects:\r\nSummary for equipment that are part of any of the projects (project names) provided.\r\n8. projectIds:\r\nSummary for equipment that are part of any of the projects (project ids) provided.\r\n9. projectListIds:\r\nSummary for planned equipment that are part of project lists (project list ids) provided. If organizeByProject is set to true, display \r\nequipment for each project in a project list.\r\n10. projectLists:\r\nSummary for planned equipment that are part of project lists (project list names) provided. If organizeByProject is set to true, display\r\nequipment for each project in a project list.\r\n\r\nReturn codes for the different query scenarios:\r\n1. Return BadRequest (400) if the service cannot parse the query parameters or the combinations of those parameters.\r\n2. Return BadRequest (400) if the service cannot successfully parse the strings, \"physicalLocations\", \"projects\", \"projectIds\", \"projectListIds\", and \"projectLists\".\r\n3. Return BadRequest (400) if the service fails to retrieve project data using the project name which is specified in \"projects\".\r\n4. Return BadRequest (400) if the service fails to retrieve project data using the project id which is specified in \"projectIds\".\r\n5. Return BadRequest (400) if the service fails to retrieve project data using the project list id which is specified in \"projectListIds\".\r\n6. Return BadRequest (400) if the service fails to retrieve project data using the project list name which is specified in \"projectListIds\".\r\n7. Return NoContent (204) if there are no equipment being returned from any of physical locations and projects that are specified.\r\n8. Return NoContent (204) if there are no equipment being returned for any of the projectLists that are specified.\r\n9. Return Ok (200) if the service successfully retrieves equipment using the input query parameters.\r\n10.Return Internal Server Error (500) if the service encounters an unexpected error.", "parameters": [{"description": "List of comma-separated (deployed or committed) physical locations", "required": false, "type": "string", "name": "physicalLocations", "in": "query"}, {"description": "List of comma-separated (deployed or committed) project names", "required": false, "type": "string", "name": "projects", "in": "query"}, {"description": "List of comma-separated project identifiers", "required": false, "type": "string", "name": "projectIds", "in": "query"}, {"description": "List of comma-separated project list identifiers", "required": false, "type": "string", "name": "projectListIds", "in": "query"}, {"description": "List of comma-separated project list names", "required": false, "type": "string", "name": "projectLists", "in": "query"}, {"description": "Organize by project, defaults to true.", "default": true, "required": false, "in": "query", "type": "boolean", "name": "organizeByProject"}], "produces": ["application/json"], "tags": ["EquipmentSummary"], "summary": "Generate equipment summary for projects, project lists, or physical locations.", "consumes": [], "operationId": "ComplexQueryParameters"}}, "/equipmenttopologyplanning/api/v1/AutoSlatData/{projectId}": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/AutoSlat.Network"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}}, "parameters": [{"description": "", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectId"}], "produces": ["text/plain", "application/json", "text/json"], "tags": ["AutoSlatData"], "summary": "Generate the Auto-SLAT data using project id", "consumes": [], "operationId": "Get"}}, "/equipmenttopologyplanning/api/v1/GlobalConfigurationData/DgeWithAtoZSingleILAZtoADualILASiteLabel/{DgeWithAtoZSingleILAZtoADualILASiteLabelValue}": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "parameters": [{"description": "", "required": true, "type": "string", "name": "dgeWithAtoZSingleILAZtoADualILASiteLabelValue", "in": "path"}], "produces": ["application/json"], "tags": ["GlobalConfigurationData"], "summary": "Update the DGE with single ILA in A-Z and dualILA in Z-A site label", "consumes": [], "operationId": "UpdateDgeWithAtoZSingleILAZtoADualILASiteLabel"}}, "/equipmenttopologyplanning/api/v1/GlobalConfigurationData/DualILASiteLabel/{dualILASiteLabelValue}": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Model.GlobalConfigurationData"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Common.Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Logging.Error"}}}, "parameters": [{"description": "", "required": true, "type": "string", "name": "dualILASiteLabelValue", "in": "path"}], "produces": ["application/json"], "tags": ["GlobalConfigurationData"], "summary": "Update the dual ILA site label", "consumes": [], "operationId": "UpdateDualILASiteLabel"}}}, "swagger": "2.0", "definitions": {"Common.Source": {"type": "object", "properties": {"project": {"$ref": "#/definitions/Common.Identifier"}, "projectList": {"$ref": "#/definitions/Common.Identifier"}}}, "Equipment.TerminationEquipmentGroup": {"required": ["equipments"], "type": "object", "properties": {"equipments": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.Equipment"}, "type": "array"}, "regen": {"type": "boolean"}}}, "Common.LinePortConnections": {"required": ["linePortConnections"], "type": "object", "properties": {"linePortConnections": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.LinePortConnection"}, "type": "array"}}}, "Equipment.Cmd": {"required": ["equipmentSpec", "addDropBankId", "totalCount"], "type": "object", "properties": {"totalCount": {"type": "integer", "format": "int64"}, "equipmentSpec": {"$ref": "#/definitions/Common.EquipmentSpec"}, "addDropBankId": {"type": "integer", "format": "int64"}}}, "FiberRoute.Section": {"required": ["fiberPairs", "aEndPointAttributes", "zEndPointAttributes", "facilities"], "type": "object", "properties": {"zEndPointAttributes": {"$ref": "#/definitions/Common.EndPointAttributes"}, "aEndPointAttributes": {"$ref": "#/definitions/Common.EndPointAttributes"}, "fiberPairs": {"uniqueItems": false, "items": {"$ref": "#/definitions/FiberRoute.FiberPair"}, "type": "array"}, "facilities": {"$ref": "#/definitions/FiberRoute.SectionFacilityPair"}}}, "HeatDissipationThresholdPolicy.HeatDissipationThreshold": {"type": "object", "properties": {"warningThreshold": {"type": "string"}, "blockingThreshold": {"type": "string"}}}, "AutoSlat.Photonic": {"required": ["LASEROFFFARENDFAIL", "fiberLossDetection", "siteName", "alarmCorrelation", "siteId", "csControl", "oscMode", "autoRoute", "controlModeDefault", "mcDeadband"], "type": "object", "properties": {"LASEROFFFARENDFAIL": {"type": "string"}, "fiberLossDetection": {"type": "string"}, "controlModeDefault": {"type": "string"}, "siteName": {"type": "string"}, "autoRoute": {"type": "string"}, "siteId": {"type": "string"}, "csControl": {"type": "string"}, "mcDeadband": {"type": "string"}, "oscMode": {"type": "string"}, "alarmCorrelation": {"type": "string"}}}, "Common.RuleExecutionResult": {"type": "object", "properties": {"status": {"enum": ["Passed", "Failed"], "type": "string"}, "severity": {"enum": ["Error", "Warning", "Information"], "type": "string"}, "title": {"type": "string"}, "generationDate": {"type": "string", "format": "date-time"}, "source": {"$ref": "#/definitions/Common.Source"}, "version": {"type": "string"}, "details": {"type": "string"}, "description": {"type": "string"}}}, "EquipmentSummary.KitToOinMapping": {"required": ["kitToOinMapping"], "type": "object", "properties": {"kitToOinMapping": {"uniqueItems": false, "items": {"$ref": "#/definitions/EquipmentSummary.KitToOinMappingItem"}, "type": "array"}}}, "AutoSlat.ShelfAttrs": {"required": ["function", "provShelfPowerLimit", "physicalShelfNumber", "logicalShelfNumber", "shelfType", "csControl", "primaryShelf", "tidConsolidationEnabled", "neMode", "frameIdentificationCode", "bayNumber", "planningStatus"], "type": "object", "properties": {"function": {"type": "string"}, "provShelfPowerLimit": {"type": "string"}, "physicalShelfNumber": {"type": "string"}, "groupName": {"type": "string"}, "siteName": {"type": "string"}, "memberName": {"type": "string"}, "logicalShelfNumber": {"type": "string"}, "hostName": {"type": "string"}, "shelfType": {"type": "string"}, "planningStatus": {"type": "string"}, "neMode": {"type": "string"}, "siteId": {"type": "string"}, "primaryShelf": {"type": "string"}, "tidConsolidationEnabled": {"type": "string"}, "csControl": {"type": "string"}, "frameIdentificationCode": {"type": "string"}, "memberId": {"type": "string"}, "groupId": {"type": "string"}, "bayNumber": {"type": "string"}}}, "FiberRoute.SectionFacilityPair": {"required": ["facilityAtoZ", "facilityZtoA"], "type": "object", "properties": {"facilityZtoA": {"type": "string"}, "facilityAtoZ": {"type": "string"}}}, "Reports.Oms": {"required": ["sourceNode", "destinationNode"], "type": "object", "properties": {"domain": {"type": "string"}, "destinationNode": {"$ref": "#/definitions/Reports.OmsNode"}, "sourceNode": {"$ref": "#/definitions/Reports.OmsNode"}, "roadmLineLabel": {"type": "string"}}}, "Common.LinePortConnection": {"required": ["linePortId", "photonicNodeIdentity", "photonicPortLocation"], "type": "object", "properties": {"photonicNodeIdentity": {"$ref": "#/definitions/Common.NodeIdentity"}, "linePortId": {"type": "integer", "format": "int64"}, "photonicPortLocation": {"$ref": "#/definitions/Common.Location"}}}, "AutoSlat.Line": {"required": ["spanLossTarget", "spanLossMargin", "fiberType"], "type": "object", "properties": {"spanLossTarget": {"type": "string"}, "oscPfib": {"type": "string"}, "spanLossMargin": {"type": "string"}, "fiberType": {"type": "string"}}}, "Reports.ProjectNodeAndEquipmentDataReport": {"required": ["source"], "type": "object", "properties": {"generationDate": {"type": "string", "format": "date-time"}, "source": {"$ref": "#/definitions/Common.Source"}, "nodes": {"uniqueItems": false, "items": {"$ref": "#/definitions/Reports.ProjectNodeAndEquipmentDataItem"}, "type": "array"}}}, "Common.Pluggable": {"required": ["equipmentSpec", "location"], "type": "object", "properties": {"customerCode": {"type": "string"}, "equipmentSpec": {"$ref": "#/definitions/Common.EquipmentSpec"}, "location": {"$ref": "#/definitions/Common.Location"}}}, "AutoSlat.CraftIP": {"required": ["craftIPV4"], "type": "object", "properties": {"craftIPV4": {"type": "string"}}}, "Common.EndPointAttributes": {"type": "object", "properties": {"totalNumberOfCmds": {"type": "integer", "format": "int64"}, "shelf": {"type": "integer", "format": "int64"}, "directionId": {"type": "integer", "format": "int64"}}}, "HeatDissipationThresholdPolicy.BayHeatDissipationPolicy": {"required": ["bay", "heatDissipationThreshold"], "type": "object", "properties": {"heatDissipationThreshold": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.HeatDissipationThreshold"}, "bay": {"$ref": "#/definitions/Common.EndpointLocation"}}}, "AutoSlat.DCnComms": {"required": ["slot", "dcnIPV4", "dcnNetMaskV4", "shelf", "dcnDefaultGatewayV4", "staticRtIPV4", "port"], "type": "object", "properties": {"slot": {"type": "string"}, "dcnIPV4": {"type": "string"}, "dcnNetMaskV4": {"type": "string"}, "shelf": {"type": "string"}, "dcnDefaultGatewayV4": {"type": "string"}, "staticRtIPV4": {"type": "string"}, "port": {"type": "string"}}}, "Common.ErrorSource": {"type": "object", "properties": {"parameter": {"type": "string"}, "pointer": {"type": "string"}}}, "FiberRoute.AdditionalEquipmentConfiguration": {"required": ["nodeIdentity"], "type": "object", "properties": {"transponderBays": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.Bay"}, "type": "array"}, "nodeIdentity": {"$ref": "#/definitions/Common.NodeIdentity"}}}, "AutoSlat.EthDefaults": {"required": ["ETHGFPRFIUPI", "CSFMCASTMAC", "ETH10GMAPPING", "ETHGFPRFI"], "type": "object", "properties": {"ETHGFPRFIUPI": {"type": "string"}, "CSFMCASTMAC": {"type": "string"}, "ETH10GMAPPING": {"type": "string"}, "ETHGFPRFI": {"type": "string"}}}, "HeatDissipationReport.RackHeatDissipationReport": {"required": ["rack", "calculatedHeatDissipationInWatts", "perShelfHeatDissipation", "thresholdType"], "type": "object", "properties": {"calculatedHeatDissipationInWatts": {"type": "integer", "format": "int64"}, "heatDissipationThreshold": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.HeatDissipationThreshold"}, "thresholdType": {"enum": ["Global", "Site", "Rack", "NotSet"], "type": "string"}, "perShelfHeatDissipation": {"uniqueItems": false, "items": {"$ref": "#/definitions/HeatDissipationReport.ShelfHeatDissipation"}, "type": "array"}, "rack": {"$ref": "#/definitions/Common.Location"}, "heatDissipationThresholdCrossed": {"enum": ["warning", "blocking"], "type": "string"}}}, "Common.EquipmentSpec": {"required": ["partNumber"], "type": "object", "properties": {"partNumber": {"type": "string"}, "description": {"type": "string"}, "aidType": {"type": "string"}}}, "HeatDissipationReport.HeatDissipationReport": {"required": ["sites"], "type": "object", "properties": {"sites": {"uniqueItems": false, "items": {"$ref": "#/definitions/HeatDissipationReport.SiteHeatDissipationReport"}, "type": "array"}}}, "AutoSlat.ShelfIP": {"required": ["shelfOSPFV2Area", "shelfIPV4", "shelfNetMaskV4"], "type": "object", "properties": {"shelfOSPFV2Area": {"type": "string"}, "shelfIPV4": {"type": "string"}, "shelfNetMaskV4": {"type": "string"}}}, "Common.Error": {"type": "object", "properties": {"source": {"$ref": "#/definitions/Common.ErrorSource"}, "code": {"type": "string"}, "detail": {"type": "string"}, "title": {"type": "string"}}}, "Common.EquipmentKeyValuePair": {"required": ["key", "value"], "type": "object", "properties": {"value": {"type": "string"}, "key": {"enum": ["ADDDROPBANK", "TOTALCMDCOUNT", "MATELINECARDSLOT", "MATELINECARDPARTNUMBER"], "type": "string"}}}, "Common.HeatDissipationThresholdStatus": {"required": ["status"], "type": "object", "properties": {"status": {"enum": ["Ok", "Warning", "Exceeded"], "type": "string"}, "unslottedEquipmentGroups": {"uniqueItems": false, "items": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.UnslottedEquipmentGroup"}, "type": "array"}, "warningThreshold": {"uniqueItems": false, "items": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.BayHeatDissipation"}, "type": "array"}, "blockingThreshold": {"uniqueItems": false, "items": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.BayHeatDissipation"}, "type": "array"}}}, "PlanningPolicy.PlanningPolicy": {"required": ["name"], "type": "object", "properties": {"serviceProvisioningPolicy": {"$ref": "#/definitions/ServiceProvisioningPolicy.ServiceProvisioningPolicy"}, "heatDissipationThresholdPolicy": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.HeatDissipationThresholdPolicy"}, "id": {"type": "string"}, "userActivityInfo": {"$ref": "#/definitions/PlanningPolicy.UserActivityInfo"}, "name": {"type": "string"}}}, "AutoSlat.DropSequence": {"required": ["card"], "type": "object", "properties": {"card": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.Card"}, "type": "array"}}}, "Reports.EquipmentReportItem": {"required": ["equipmentSpec", "location", "changeType"], "type": "object", "properties": {"node": {"$ref": "#/definitions/Common.NodeIdentity"}, "changeType": {"enum": ["Added", "Removed", "Modified", "Undefined"], "type": "string"}, "equipmentSpec": {"$ref": "#/definitions/Common.EquipmentSpec"}, "location": {"$ref": "#/definitions/Common.Location"}}}, "Common.GeoLocation": {"required": ["latitude", "longitude"], "type": "object", "properties": {"latitude": {"type": "number", "format": "double"}, "longitude": {"type": "number", "format": "double"}}}, "AutoSlat.NodeFunction": {"required": ["nodeType"], "type": "object", "properties": {"nodeType": {"type": "string"}}}, "HeatDissipationReport.TidHeatDissipationReport": {"required": ["nodeIdentity", "racks"], "type": "object", "properties": {"racks": {"uniqueItems": false, "items": {"$ref": "#/definitions/HeatDissipationReport.RackHeatDissipationReport"}, "type": "array"}, "nodeIdentity": {"$ref": "#/definitions/Common.NodeIdentity"}}}, "Common.EndpointLocation": {"required": ["nodeIdentity"], "type": "object", "properties": {"location": {"$ref": "#/definitions/Common.Location"}, "nodeIdentity": {"$ref": "#/definitions/Common.NodeIdentity"}}}, "EquipmentSummary.EquipmentSummaryResponseOrganizedByProject": {"required": ["projectEquipmentSummary"], "type": "object", "properties": {"source": {"$ref": "#/definitions/Common.Source"}, "projectEquipmentSummary": {"uniqueItems": false, "items": {"$ref": "#/definitions/EquipmentSummary.EquipmentSummaryResponse"}, "type": "array"}}}, "ServiceProvisioningPolicy.PluggableRecord": {"required": ["rate", "pec"], "type": "object", "properties": {"rate": {"enum": ["DSR_10GE", "DSR_100GE", "OTM2", "OTM4", "OC192", "STM64"], "type": "string"}, "pec": {"type": "string"}}}, "Reports.ProjectNodeAndEquipmentDataItem": {"required": ["node", "changeType"], "type": "object", "properties": {"node": {"$ref": "#/definitions/Common.NodeIdentity"}, "equipment": {"uniqueItems": false, "items": {"$ref": "#/definitions/Reports.EquipmentReportItem"}, "type": "array"}, "changeType": {"enum": ["Added", "Removed", "Modified", "Undefined"], "type": "string"}}}, "HeatDissipationThresholdPolicy.BayHeatDissipation": {"required": ["bay", "calculatedHeatDissipation", "heatDissipationThreshold", "thresholdType"], "type": "object", "properties": {"thresholdType": {"enum": ["Global", "Site", "Bay"], "type": "string"}, "calculatedHeatDissipation": {"type": "integer", "format": "int64"}, "heatDissipationThreshold": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.HeatDissipationThreshold"}, "bay": {"$ref": "#/definitions/Common.EndpointLocation"}}}, "Common.NodeAttributes": {"required": ["siteId"], "type": "object", "properties": {"siteName": {"type": "string"}, "siteId": {"type": "integer", "format": "int64"}, "groupId": {"type": "integer", "format": "int64"}, "memberId": {"type": "integer", "format": "int64"}}}, "HeatDissipationReport.ShelfHeatDissipation": {"required": ["physicalShelf", "calculatedHeatDissipationInWatts"], "type": "object", "properties": {"calculatedHeatDissipationInWatts": {"type": "integer", "format": "int64"}, "physicalShelf": {"type": "integer", "format": "int64"}}}, "Common.Chassis": {"required": ["equipmentSpec", "location", "nodeAttributes"], "type": "object", "properties": {"nodeAttributes": {"$ref": "#/definitions/Common.NodeAttributes"}, "equipmentSpec": {"$ref": "#/definitions/Common.EquipmentSpec"}, "location": {"$ref": "#/definitions/Common.Location"}}}, "Equipment.EquipmentResponse": {"required": ["heatDissipationThresholdStatus"], "type": "object", "properties": {"heatDissipationThresholdStatus": {"$ref": "#/definitions/Common.HeatDissipationThresholdStatus"}}}, "AutoSlat.Gne": {"required": ["gneIPSubnet", "gneOSPFArea", "gneIPSubnetMask"], "type": "object", "properties": {"gneIPSubnet": {"type": "string"}, "gneOSPFArea": {"type": "string"}, "gneIPSubnetMask": {"type": "string"}}}, "AutoSlat.SlotSequence": {"required": ["anchorPort", "anchorSlot", "addSequence", "ots", "dropSequence", "id"], "type": "object", "properties": {"anchorPort": {"type": "string"}, "anchorSlot": {"type": "string"}, "addSequence": {"$ref": "#/definitions/AutoSlat.AddSequence"}, "ots": {"type": "string"}, "dropSequence": {"$ref": "#/definitions/AutoSlat.DropSequence"}, "id": {"type": "string"}}}, "EquipmentSummary.EquipmentSummaryResponse": {"required": ["source", "equipmentSummary"], "type": "object", "properties": {"equipmentSummary": {"uniqueItems": false, "items": {"$ref": "#/definitions/EquipmentSummary.NodalEquipmentKitSummary"}, "type": "array"}, "source": {"$ref": "#/definitions/Common.Source"}}}, "AutoSlat.RamanFacility": {"type": "object", "properties": {"gainMode": {"type": "string"}, "portNumber": {"type": "string"}, "totalPumpPower": {"type": "string"}, "targetGain": {"type": "string"}, "aidType": {"type": "string"}, "fiberType": {"type": "string"}}}, "AutoSlat.Node": {"required": ["nodeFunction", "product", "clli", "name", "shelf", "nodeID", "location", "defaults", "release", "osrpNodeName", "osrpNodeId", "cpMode"], "type": "object", "properties": {"nodeFunction": {"$ref": "#/definitions/AutoSlat.NodeFunction"}, "product": {"type": "string"}, "clli": {"type": "string"}, "name": {"type": "string"}, "shelf": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.Shelf"}, "type": "array"}, "nodeID": {"type": "string"}, "longitude": {"type": "string"}, "release": {"type": "string"}, "osrpNodeId": {"type": "string"}, "location": {"type": "string"}, "ncId": {"type": "string"}, "tidSlotSequence": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.TidSlotSequence"}, "type": "array"}, "latitude": {"type": "string"}, "osrpNodeName": {"type": "string"}, "cpMode": {"type": "string"}, "defaults": {"$ref": "#/definitions/AutoSlat.Defaults"}}}, "AutoSlat.Optmon": {"required": ["portNumber", "primaryState", "secondaryStatesAutoInServiceState"], "type": "object", "properties": {"portNumber": {"type": "string"}, "primaryState": {"type": "string"}, "secondaryStatesAutoInServiceState": {"type": "string"}}}, "AutoSlat.GenDefaults": {"required": ["subnetName", "autoProvFac", "shelfSync", "bayFICinAO", "bitsMode"], "type": "object", "properties": {"subnetName": {"type": "string"}, "autoProvFac": {"type": "string"}, "bitsMode": {"type": "string"}, "shelfSync": {"type": "string"}, "bayFICinAO": {"type": "string"}}}, "EquipmentSummary.NodalEquipmentKitSummary": {"required": ["node", "equipmentKits"], "type": "object", "properties": {"node": {"$ref": "#/definitions/Common.Node"}, "equipmentKits": {"uniqueItems": false, "items": {"$ref": "#/definitions/EquipmentSummary.EquipmentKit"}, "type": "array"}}}, "AutoSlat.MSPPDefaults": {"required": ["NDPMode", "PTHAISINSERT", "PATHSDTH", "LINEPEVSTAT", "PATHSWCRIT", "PATHPEVSTAT", "PATHEBERTH"], "type": "object", "properties": {"NDPMode": {"type": "string"}, "PTHAISINSERT": {"type": "string"}, "PATHSDTH": {"type": "string"}, "LINEPEVSTAT": {"type": "string"}, "PATHSWCRIT": {"type": "string"}, "PATHPEVSTAT": {"type": "string"}, "PATHEBERTH": {"type": "string"}}}, "AutoSlat.Adjacency": {"required": ["adjShelf", "adjSlot", "farEndAddressForm", "adjBay", "adjPort", "adjOts", "portNumber", "mode", "adjPhysicalShelf", "adjTid", "type", "aidType", "excessLoss"], "type": "object", "properties": {"adjShelf": {"type": "string"}, "adjSlot": {"type": "string"}, "clfi": {"type": "string"}, "farEndAddressForm": {"type": "string"}, "adjBay": {"type": "string"}, "adjPort": {"type": "string"}, "adjTid": {"type": "string"}, "adjOts": {"type": "string"}, "portNumber": {"type": "string"}, "mode": {"type": "string"}, "excessLoss": {"type": "string"}, "adjPhysicalShelf": {"type": "string"}, "line": {"$ref": "#/definitions/AutoSlat.Line"}, "type": {"type": "string"}, "aidType": {"type": "string"}}}, "Common.NodeIdentity": {"type": "object", "properties": {"tid": {"type": "string"}, "clli": {"type": "string"}, "nodeId": {"type": "integer", "format": "int64"}, "ncId": {"type": "string"}}}, "GlobalConfigurationData.ConfigurationData": {"type": "object", "properties": {"configurationData": {"uniqueItems": false, "items": {"$ref": "#/definitions/GlobalConfigurationData.KeyValue"}, "type": "array"}}}, "Reports.OmsReport": {"required": ["data"], "type": "object", "properties": {"data": {"uniqueItems": false, "items": {"$ref": "#/definitions/Reports.Oms"}, "type": "array"}}}, "AutoSlat.TidSlotSequence": {"required": ["anchorPort", "anchorSlot", "addSequence", "dropSequence"], "type": "object", "properties": {"anchorPort": {"type": "string"}, "anchorSlot": {"type": "string"}, "anchorShelf": {"type": "string"}, "addSequence": {"$ref": "#/definitions/AutoSlat.AddSequence"}, "ots": {"type": "string"}, "dropSequence": {"$ref": "#/definitions/AutoSlat.DropSequence"}}}, "Common.ErrorList": {"type": "object", "properties": {"errors": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.Error"}, "type": "array"}}}, "AutoSlat.Defaults": {"required": ["ethDefaults", "gccDefaults", "eqptDefaults", "photonic", "genDefaults", "alarmDefaults", "dwdmLine", "msppDefaults"], "type": "object", "properties": {"ethDefaults": {"$ref": "#/definitions/AutoSlat.EthDefaults"}, "gccDefaults": {"$ref": "#/definitions/AutoSlat.GCCDefaults"}, "eqptDefaults": {"$ref": "#/definitions/AutoSlat.EqptDefaults"}, "photonic": {"$ref": "#/definitions/AutoSlat.Photonic"}, "genDefaults": {"$ref": "#/definitions/AutoSlat.GenDefaults"}, "alarmDefaults": {"$ref": "#/definitions/AutoSlat.AlarmDefaults"}, "dwdmLine": {"$ref": "#/definitions/AutoSlat.DWDMLine"}, "msppDefaults": {"$ref": "#/definitions/AutoSlat.MSPPDefaults"}}}, "AutoSlat.EqptDefaults": {"required": ["airFilterReplacementTimer", "enhEqptMgmt", "autoEquipping", "minCooling", "airFilterReplacementAlarm"], "type": "object", "properties": {"airFilterReplacementTimer": {"type": "string"}, "enhEqptMgmt": {"type": "string"}, "autoEquipping": {"type": "string"}, "minCooling": {"type": "string"}, "airFilterReplacementAlarm": {"type": "string"}}}, "AutoSlat.FileData": {"required": ["applicationName", "timestamp", "applicationVersion", "applicationBuildNumber"], "type": "object", "properties": {"applicationName": {"type": "string"}, "timestamp": {"type": "string"}, "applicationVersion": {"type": "string"}, "applicationBuildNumber": {"type": "string"}}}, "Model.GlobalConfigurationData": {"type": "object", "description": "Provides a Global table to store configuration data in key value pair", "properties": {"Value": {"type": "string", "description": "Gets or sets the Value"}, "Key": {"type": "string", "description": "Gets or sets the Key"}}}, "AutoSlat.Shelf": {"required": ["shelfIP", "equipment", "ots", "shelfAttrs", "slotSequence"], "type": "object", "properties": {"slotSequence": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.SlotSequence"}, "type": "array"}, "shelfAttrs": {"$ref": "#/definitions/AutoSlat.ShelfAttrs"}, "shelfIP": {"$ref": "#/definitions/AutoSlat.ShelfIP"}, "equipment": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.Equipment"}, "type": "array"}, "gne": {"$ref": "#/definitions/AutoSlat.Gne"}, "ots": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.OTS"}, "type": "array"}, "dcnComms": {"$ref": "#/definitions/AutoSlat.DCnComms"}}}, "EquipmentSummary.KitToOinMappingItem": {"required": ["kitName", "oin"], "type": "object", "properties": {"oin": {"type": "string"}, "kitName": {"type": "string"}, "enabled": {"type": "boolean"}, "comments": {"type": "string"}}}, "PlannedData.FiberAttributes": {"type": "object", "properties": {"lengthKm": {"type": "string"}, "fiberLossReconciled": {"type": "boolean"}, "cableId": {"type": "string"}, "endDate": {"type": "string"}, "lossDb": {"type": "string"}, "startDate": {"type": "string"}, "headPPL": {"type": "string"}, "notes": {"type": "string"}, "fiberOrl": {"enum": ["NOT_YET_SPECIFIED", "STANDARD", "BAD"], "type": "string"}, "fiberNumber": {"type": "string"}, "fiberId": {"type": "string"}, "freId": {"type": "string"}, "specialMaintMargin": {"type": "string"}, "pmdCoefficient": {"type": "string"}, "tailPPL": {"type": "string"}, "margin": {"type": "string"}, "fiberType": {"type": "string"}}}, "Equipment.EquipmentAddition": {"required": ["nodeIdentity"], "type": "object", "properties": {"transponderBays": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.Bay"}, "type": "array"}, "pluggables": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.Pluggable"}, "type": "array"}, "Chassis": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.Chassis"}, "type": "array"}, "nodeIdentity": {"$ref": "#/definitions/Common.NodeIdentity"}, "cmds": {"uniqueItems": false, "items": {"$ref": "#/definitions/Equipment.Cmd"}, "type": "array"}, "addDropBanks": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.AddDropBank"}, "type": "array"}, "terminationEquipmentGroups": {"uniqueItems": false, "items": {"$ref": "#/definitions/Equipment.TerminationEquipmentGroup"}, "type": "array"}}}, "Equipment.AddEquipmentRequest": {"required": ["project", "equipmentAdditions"], "type": "object", "properties": {"project": {"$ref": "#/definitions/Common.Identifier"}, "projectList": {"$ref": "#/definitions/Common.Identifier"}, "additionalAttributes": {"additionalProperties": {"type": "string"}, "type": "object"}, "equipmentAdditions": {"uniqueItems": false, "items": {"$ref": "#/definitions/Equipment.EquipmentAddition"}, "type": "array"}}}, "PlannedData.FiberData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/PlannedData.FiberAttributes"}, "type": {"enum": ["fiber"], "type": "string"}, "id": {"type": "string"}}}, "ServiceProvisioningPolicy.CardPolicy": {"required": ["cardPec", "certifiedMatePecs", "certifiedClientPluggables"], "type": "object", "properties": {"cardPec": {"type": "string"}, "certifiedClientPluggables": {"uniqueItems": false, "items": {"$ref": "#/definitions/ServiceProvisioningPolicy.PluggableRecord"}, "type": "array"}, "certifiedMatePecs": {"uniqueItems": false, "items": {"type": "string"}, "type": "array"}, "certifiedTPTs": {"uniqueItems": false, "items": {"type": "string"}, "type": "array"}}}, "Common.Node": {"required": ["nodeIdentity", "nodeType"], "type": "object", "properties": {"geoLocation": {"$ref": "#/definitions/Common.GeoLocation"}, "nodeType": {"enum": ["ILA", "LGX", "ROADM", "ROADMSMALL", "ROADMLARGE", "SPLICEPOINT", "DGE", "ROADMETSI"], "type": "string"}, "nodeIdentity": {"$ref": "#/definitions/Common.NodeIdentity"}, "amplifierConfigurationType": {"enum": ["Unsupported", "NoAmp", "SingleAmp", "DualAmps", "SingleCascadedAmps_Aend", "SingleCascadedAmps_Zend", "DualCascadedAmps", "DualSra", "Sra_Aend", "Sra_Zend", "SraCascadedAmps_Aend", "SraCascadedAmps_Zend"], "type": "string"}}}, "AutoSlat.Xcvr": {"required": ["portNumber", "mode", "frequency", "spli", "portType", "plugPec"], "type": "object", "properties": {"spli": {"type": "string"}, "frequency": {"type": "string"}, "portNumber": {"type": "string"}, "mode": {"type": "string"}, "plugPec": {"type": "string"}, "portType": {"type": "string"}}}, "Logging.Error": {"type": "object", "properties": {"Message": {"readOnly": true, "type": "string"}, "Severity": {"readOnly": true, "enum": ["_Critical", "_Error", "_Warning", "_Verbose", "_Information"], "type": "string"}}}, "AutoSlat.AmpFacility": {"required": ["outputLosThreshold", "dropLimTargetGain", "ampPeakMode", "controlMode", "inputLoss", "gainMode", "outputLoss", "inputLosThreshold", "aidType", "topOffset", "portNumber", "targetTotalPower", "gainOffset", "forcedShutOff", "targetPeakPower", "peakPowerControlState", "targetGain", "targetGainTilt", "shutoffThreshold", "refBw"], "type": "object", "properties": {"shutoffThreshold": {"type": "string"}, "peakPowerControlState": {"type": "string"}, "dropLimTargetGain": {"type": "string"}, "ampPeakMode": {"type": "string"}, "inputLoss": {"type": "string"}, "targetGain": {"type": "string"}, "outputLoss": {"type": "string"}, "inputLosThreshold": {"type": "string"}, "aidType": {"type": "string"}, "topOffset": {"type": "string"}, "portNumber": {"type": "string"}, "targetTotalPower": {"type": "string"}, "refBw": {"type": "string"}, "targetGainTilt": {"type": "string"}, "forcedShutOff": {"type": "string"}, "outputLosThreshold": {"type": "string"}, "gainOffset": {"type": "string"}, "gainMode": {"type": "string"}, "controlMode": {"type": "string"}, "targetPeakPower": {"type": "string"}}}, "Reports.RuleExecutionReport": {"type": "object", "properties": {"generationDate": {"type": "string", "format": "date-time"}, "source": {"$ref": "#/definitions/Common.Source"}, "version": {"type": "string"}, "results": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.RuleExecutionResult"}, "type": "array"}}}, "AutoSlat.GCCDefaults": {"required": ["gcc0Mode", "gcc1Mode"], "type": "object", "properties": {"gcc0Mode": {"type": "string"}, "gcc1Mode": {"type": "string"}}}, "Common.Equipment": {"required": ["equipmentSpec"], "type": "object", "properties": {"additionalAttributes": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.EquipmentKeyValuePair"}, "type": "array"}, "lineSideConnection": {"$ref": "#/definitions/Common.Location"}, "pluggables": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.Pluggable"}, "type": "array"}, "linePortConnections": {"$ref": "#/definitions/Common.LinePortConnections"}, "equipmentProfile": {"type": "string"}, "equipmentState": {"enum": ["SPARE", "MAINTENANCESPARE", "INSERVICE", "OUTOFSERVICE", "RESERVED"], "type": "string"}, "maintenanceSpare": {"type": "boolean"}, "customerCode": {"type": "string"}, "location": {"$ref": "#/definitions/Common.Location"}, "regen": {"type": "boolean"}, "serviceIdentifier": {"type": "string"}, "equipmentSpec": {"$ref": "#/definitions/Common.EquipmentSpec"}}}, "AutoSlat.DocModClassFacility": {"required": ["modClassBias2G5", "modClassBias40G", "modClassBias100G", "modClassBias10G", "modClassBiasCustom6", "modClassBias100GWL3", "aidType", "modClassBias40GULH", "modClassBias100GWLBPSK3", "modClassBiasCustom1", "modClassBiasCustom3", "modClassBiasCustom2", "modClassBiasCustom5", "modClassBiasCustom4", "modClassBias10GNGM"], "type": "object", "properties": {"modClassBias2G5": {"type": "string"}, "modClassBias10GNGM": {"type": "string"}, "modClassBias40G": {"type": "string"}, "modClassBias100G": {"type": "string"}, "modClassBias10G": {"type": "string"}, "modClassBias100GWL3": {"type": "string"}, "modClassBias40GULH": {"type": "string"}, "modClassBias100GWLBPSK3": {"type": "string"}, "modClassBiasCustom1": {"type": "string"}, "modClassBiasCustom4": {"type": "string"}, "modClassBiasCustom3": {"type": "string"}, "modClassBiasCustom2": {"type": "string"}, "modClassBiasCustom5": {"type": "string"}, "aidType": {"type": "string"}, "modClassBiasCustom6": {"type": "string"}}}, "ServiceProvisioningPolicy.ServiceProvisioningPolicy": {"required": ["cardPolicies"], "type": "object", "properties": {"cardPolicies": {"uniqueItems": false, "items": {"$ref": "#/definitions/ServiceProvisioningPolicy.CardPolicy"}, "type": "array"}}}, "PlannedData.FiberList": {"type": "object", "properties": {"data": {"uniqueItems": false, "items": {"$ref": "#/definitions/PlannedData.FiberData"}, "type": "array"}}}, "FiberRoute.FiberRouteDelta": {"type": "object", "properties": {"removedFibers": {"uniqueItems": false, "items": {"$ref": "#/definitions/FiberRoute.FiberPair"}, "type": "array"}, "removedNodes": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.NodeIdentity"}, "type": "array"}, "addedFibers": {"uniqueItems": false, "items": {"$ref": "#/definitions/FiberRoute.FiberPair"}, "type": "array"}, "addedNodes": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.NodeIdentity"}, "type": "array"}}}, "AutoSlat.Ptp": {"required": ["modemClass", "reachClass", "transMode"], "type": "object", "properties": {"transMode": {"type": "string"}, "modemClass": {"type": "string"}, "reachClass": {"type": "string"}}}, "AutoSlat.Network": {"required": ["node", "fileData"], "type": "object", "properties": {"node": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.Node"}, "type": "array"}, "fileData": {"$ref": "#/definitions/AutoSlat.FileData"}}}, "PlanningPolicy.UserActivityInfo": {"type": "object", "properties": {"lastModifiedByUserName": {"type": "string"}, "createdByUserName": {"type": "string"}, "creationTime": {"type": "string", "format": "date-time"}, "lastModifiedTime": {"type": "string", "format": "date-time"}}}, "FiberRoute.AddFiberRouteRequest": {"required": ["project", "sections", "nodes"], "type": "object", "properties": {"project": {"$ref": "#/definitions/Common.Identifier"}, "additionalAttributes": {"additionalProperties": {"type": "string"}, "type": "object"}, "nodes": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.Node"}, "type": "array"}, "sections": {"uniqueItems": false, "items": {"$ref": "#/definitions/FiberRoute.Section"}, "type": "array"}, "additionalEquipmentConfiguration": {"uniqueItems": false, "items": {"$ref": "#/definitions/FiberRoute.AdditionalEquipmentConfiguration"}, "type": "array"}}}, "HeatDissipationThresholdPolicy.SiteHeatDissipationPolicy": {"required": ["clli", "heatDissipationThreshold"], "type": "object", "properties": {"clli": {"type": "string"}, "heatDissipationThreshold": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.HeatDissipationThreshold"}}}, "HeatDissipationThresholdPolicy.UnslottedEquipmentGroup": {"required": ["unslottedEquipmentHeatDissipation"], "type": "object", "properties": {"unslottedEquipmentHeatDissipation": {"uniqueItems": false, "items": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.UnslottedEquipmentHeatDissipation"}, "type": "array"}}}, "AutoSlat.AlarmDefaults": {"required": ["ainsTimeout", "alarmHoldoff", "alarminfo", "tcaSuppression"], "type": "object", "properties": {"alarmHoldoff": {"type": "string"}, "tcaSuppression": {"type": "string"}, "alarminfo": {"type": "string"}, "ainsTimeout": {"type": "string"}}}, "Reports.OmsNode": {"required": ["node", "aid"], "type": "object", "properties": {"node": {"$ref": "#/definitions/Common.NodeIdentity"}, "aid": {"type": "string"}}}, "Common.Identifier": {"type": "object", "properties": {"id": {"type": "string"}, "name": {"type": "string"}}}, "Common.AddDropBank": {"required": ["addDropBankId"], "type": "object", "properties": {"totalCmdCount": {"type": "integer", "format": "int64"}, "addDropBankId": {"type": "integer", "format": "int64"}}}, "Common.LocationAddress": {"required": ["key", "value"], "type": "object", "properties": {"pattern": {"type": "string"}, "value": {"type": "string"}, "key": {"enum": ["RACK", "SHELF", "PHYSICAL_SHELF", "SLOT", "SUBSLOT", "SUBSUBSLOT", "PORT", "SUBPORT"], "type": "string"}}}, "Common.Bay": {"required": ["bayId"], "type": "object", "properties": {"bayId": {"type": "integer", "format": "int64"}}}, "Reports.EquipmentReport": {"required": ["data"], "type": "object", "properties": {"data": {"uniqueItems": false, "items": {"$ref": "#/definitions/Reports.EquipmentReportItem"}, "type": "array"}}}, "AutoSlat.VoaFacility": {"required": ["aidType", "averageTargetPower", "lossThreshold", "portNumber", "targetLoss", "targetPad", "targetPower", "targetPeakPower", "voaControlMode", "voaResetRequired"], "type": "object", "properties": {"targetLoss": {"type": "string"}, "voaResetRequired": {"type": "string"}, "targetPower": {"type": "string"}, "targetPad": {"type": "string"}, "averageTargetPower": {"type": "string"}, "lossThreshold": {"type": "string"}, "portNumber": {"type": "string"}, "targetPeakPower": {"type": "string"}, "aidType": {"type": "string"}, "voaControlMode": {"type": "string"}}}, "AutoSlat.DWDMLine": {"required": ["lineFlappingRaiseTime", "lineFlappingClearTime", "lineFlappingThreshold", "lineFlappingAlarm"], "type": "object", "properties": {"lineFlappingRaiseTime": {"type": "string"}, "lineFlappingClearTime": {"type": "string"}, "lineFlappingThreshold": {"type": "string"}, "lineFlappingAlarm": {"type": "string"}}}, "Reports.EquipmentDeltaReport": {"required": ["added", "removed"], "type": "object", "properties": {"removed": {"uniqueItems": false, "items": {"$ref": "#/definitions/Reports.EquipmentReportItem"}, "type": "array"}, "added": {"uniqueItems": false, "items": {"$ref": "#/definitions/Reports.EquipmentReportItem"}, "type": "array"}}}, "FiberRoute.Fiber": {"required": ["number", "fiberType"], "type": "object", "properties": {"lossDb": {"type": "number", "format": "double"}, "fiberOrl": {"enum": ["NOT_YET_SPECIFIED", "STANDARD", "BAD"], "type": "string"}, "number": {"type": "integer", "format": "int64"}, "name": {"type": "string"}, "pmdMean": {"type": "number", "format": "double"}, "fiberType": {"enum": ["NDSF", "ELEAF", "LEAF", "TWRS", "TWPLUS", "TWC", "DSF", "LS", "OTHER", "TERA", "TWREACH", "PSC", "NDSF_LWP", "EX2000", "EX3000", "TERAWAVE_ULL"], "type": "string"}}}, "AutoSlat.AddSequence": {"required": ["card"], "type": "object", "properties": {"card": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.Card"}, "type": "array"}}}, "GlobalConfigurationData.KeyValue": {"type": "object", "properties": {"value": {"type": "string"}, "key": {"type": "string"}}}, "AutoSlat.OTS": {"required": ["minMuxPout", "cmd8Slot", "cfgType", "cmd9Slot", "dscm2Slot", "limSlot", "dscm1Slot", "cmd7Slot", "dscm4Slot", "cmd5Slot", "ampMate", "dwid", "oscSlotPort", "derived", "csInd", "subType", "cmd6Slot", "cmd2Slot", "cmd4Slot", "cmd1Slot", "bmdSlot", "dropLimSlot", "autoRoute", "cmd3Slot", "casLimSlot", "osid", "otsInstance", "dscm3Slot", "wssSlot", "txPath", "smdSlot", "provAssociatedOts", "isDocSite", "planningStatus", "provControlMode", "refBw", "subnetName"], "type": "object", "properties": {"cmd5Slot": {"type": "string"}, "ampMate": {"type": "string"}, "casLimSlot": {"type": "string"}, "cmd8Slot": {"type": "string"}, "refBw": {"type": "string"}, "csInd": {"type": "string"}, "subType": {"type": "string"}, "cmd6Slot": {"type": "string"}, "cmd2Slot": {"type": "string"}, "osid": {"type": "string"}, "provAssociatedOts": {"type": "string"}, "isDocSite": {"type": "string"}, "minMuxPout": {"type": "string"}, "cmd1Slot": {"type": "string"}, "bmdSlot": {"type": "string"}, "wssSlot": {"type": "string"}, "planningStatus": {"type": "string"}, "autoRoute": {"type": "string"}, "cmd3Slot": {"type": "string"}, "cmd4Slot": {"type": "string"}, "dscm3Slot": {"type": "string"}, "dwid": {"type": "string"}, "otsInstance": {"type": "string"}, "oscSlotPort": {"type": "string"}, "derived": {"type": "string"}, "cmd9Slot": {"type": "string"}, "txPath": {"type": "string"}, "limSlot": {"type": "string"}, "smdSlot": {"type": "string"}, "cps": {"type": "string"}, "docModClassFacility": {"$ref": "#/definitions/AutoSlat.DocModClassFacility"}, "cfgType": {"type": "string"}, "dscm2Slot": {"type": "string"}, "dropLimSlot": {"type": "string"}, "subnetName": {"type": "string"}, "dscm1Slot": {"type": "string"}, "cmd7Slot": {"type": "string"}, "dscm4Slot": {"type": "string"}, "provControlMode": {"type": "string"}}}, "AutoSlat.Equipment": {"required": ["slotNumber", "aidType", "pec", "planningStatus"], "type": "object", "properties": {"optmon": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.Optmon"}, "type": "array"}, "ots": {"type": "string"}, "slotNumber": {"type": "string"}, "ptp": {"$ref": "#/definitions/AutoSlat.Ptp"}, "ampFacility": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.AmpFacility"}, "type": "array"}, "adjacency": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.Adjacency"}, "type": "array"}, "isSpare": {"type": "string"}, "planningStatus": {"type": "string"}, "equipment": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.Equipment"}, "type": "array"}, "xcvr": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.Xcvr"}, "type": "array"}, "craftIP": {"$ref": "#/definitions/AutoSlat.CraftIP"}, "ramanFacility": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.RamanFacility"}, "type": "array"}, "aidType": {"type": "string"}, "voaFacility": {"uniqueItems": false, "items": {"$ref": "#/definitions/AutoSlat.VoaFacility"}, "type": "array"}, "pec": {"type": "string"}}}, "HeatDissipationThresholdPolicy.HeatDissipationThresholdPolicy": {"type": "object", "properties": {"bayHeatDissipationPolicies": {"uniqueItems": false, "items": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.BayHeatDissipationPolicy"}, "type": "array"}, "globalHeatDissipationPolicy": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.HeatDissipationThreshold"}, "siteHeatDissipationPolicies": {"uniqueItems": false, "items": {"$ref": "#/definitions/HeatDissipationThresholdPolicy.SiteHeatDissipationPolicy"}, "type": "array"}}}, "HeatDissipationReport.SiteHeatDissipationReport": {"required": ["name", "tids"], "type": "object", "properties": {"name": {"type": "string"}, "tids": {"uniqueItems": false, "items": {"$ref": "#/definitions/HeatDissipationReport.TidHeatDissipationReport"}, "type": "array"}}}, "AutoSlat.Card": {"required": ["slot", "shelf", "subSlot"], "type": "object", "properties": {"slot": {"type": "string"}, "shelf": {"type": "string"}, "subSlot": {"type": "string"}}}, "FiberRoute.FiberPair": {"required": ["aEndNode", "zEndNode", "cableId", "aTozFiber", "zToaFiber"], "type": "object", "properties": {"lengthKm": {"type": "number", "format": "double"}, "cableId": {"type": "string"}, "zToaFiber": {"$ref": "#/definitions/FiberRoute.Fiber"}, "aTozFiber": {"$ref": "#/definitions/FiberRoute.Fiber"}, "zEndNode": {"$ref": "#/definitions/Common.NodeIdentity"}, "aEndNode": {"$ref": "#/definitions/Common.NodeIdentity"}}}, "EquipmentSummary.EquipmentKit": {"required": ["equipmentKitId"], "type": "object", "properties": {"equipment": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.Equipment"}, "type": "array"}, "oin": {"type": "string"}, "maintenanceSpare": {"type": "boolean"}, "equipmentKitId": {"type": "string"}, "shelves": {"uniqueItems": false, "items": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.LocationAddress"}, "type": "array"}, "type": "array"}}}, "HeatDissipationThresholdPolicy.UnslottedEquipmentHeatDissipation": {"required": ["pec", "power"], "type": "object", "properties": {"power": {"type": "integer", "format": "int64"}, "pec": {"type": "string"}}}, "Common.Location": {"required": ["mgmtAccess", "address"], "type": "object", "properties": {"address": {"uniqueItems": false, "items": {"$ref": "#/definitions/Common.LocationAddress"}, "type": "array"}, "mgmtAccess": {"enum": ["TL1_ACCESS", "SAOS_ACCESS"], "type": "string"}}}}}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_equipment_groups.json b/tapi/resources/MCP_4.0.0_equipment_groups.json
deleted file mode 100644
index d90ce64a6e1ba270908f49793d24a45308bb8ae8..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_equipment_groups.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Retrieve, plan and modify equipment group resources", "title": "Equipment groups"}, "paths": {"/nsi/api/equipmentGroups": {"post": {"responses": {"201": {"description": "Equipment group created or updated successfully.", "schema": {"$ref": "#/definitions/EquipmentGroupRO"}}, "500": {"description": "Failed to create or update EquipmentGroup.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid data to create or update equipment group.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V2_0<p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\": {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQG_SLOTSEQ_12_11_1\",\n      \"type\": \"equipmentGroup\",\n      \"attributes\": {\n        \"type\": \"SLOTSEQUENCE\"\n      },\n      \"relationships\": {\n        \"networkConstruct\": {\n          \"data\": {\n            \"type\": \"networkConstructs\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\"\n          }\n        }\n      }\n    }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/EquipmentGroupRO"}, "description": "Equipment group to create or update", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipmentGroups"], "summary": "Creates or updates an equipment group", "consumes": ["application/json"], "operationId": "postEquipmentGroup"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentGroupRO"}}, "500": {"description": "Failed to retrieve the equipment groups with given query parameters.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0<p>At least one of the following parameters must be specified:<ul><li>ncId (Deprecated)<li>networkConstruct.id<li>equipmentGroupExpectations.equipmentIntent.id<li>equipment.id<li>type</ul>", "parameters": [{"description": "(Optional, Deprecated) Network Construct identifier", "required": false, "type": "string", "name": "ncId", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"enum": ["ROADM", "COADM", "DIAOADM", "SLOTSEQUENCE", "OTS", "OTNBBPAIRING"], "description": "(Optional) Equipment group type.", "required": false, "in": "query", "type": "string", "name": "type"}, {"description": "(Optional) Comma separated list of equipment identifiers", "required": false, "type": "string", "name": "equipment.id", "in": "query"}, {"description": "(Optional) Equipment Intent Identifier", "required": false, "type": "string", "name": "equipmentGroupExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: actualizations, expectations", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page. Defaulted ALL to return all Equipment at once.", "default": "ALL", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipmentGroups"], "summary": "Retrieves equipment groups satisfying the provided parameters", "operationId": "getEquipmentGroup"}}, "/nsi/api/v2_0/equipmentGroups/{equipmentGroupId}": {"delete": {"responses": {"200": {"description": "Deleted EquipmentGroupResource successfully."}, "403": {"description": "Forbidden to delete specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to delete EquipmentGroupResource.", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "Id of the equipment group to be deleted", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}], "tags": ["998 - nsiapiv2_0equipmentGroups"], "description": "", "summary": "Delete a specific equipment group", "operationId": "deleteEquipmentGroupById"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentGroupRO"}}, "404": {"description": "Cannot find the equipment group with given Id", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the equipment group with given Id.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query param was specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Id of the equipment group to retrieve", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: actualizations, expectations", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0equipmentGroups"], "summary": "Retrieves a specific equipment group", "operationId": "getEquipmentGroupById"}}, "/nsi/api/v2_0/equipmentGroups/{equipmentGroupId}/equipmentGroupExpectations/{equipmentGroupExpectationId}": {"delete": {"responses": {"200": {"description": "Deleted equipment group expectation successfully."}, "403": {"description": "Forbidden to update specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to delete equipment group expectation.", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "Id of the equipment group under which to delete an expectation", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}, {"description": "Id of the expectation to delete", "required": true, "type": "string", "name": "equipmentGroupExpectationId", "in": "path"}], "tags": ["998 - nsiapiv2_0equipmentGroups"], "description": "", "summary": "Delete a specific equipment group expectation", "operationId": "deleteEquipmentGroupExpectationById"}, "get": {"responses": {"200": {"description": "Successfully retrieved the equipment group expectation.", "schema": {"$ref": "#/definitions/EquipmentGroupExpectationRO"}}, "404": {"description": "The requested equipment group expectation can't be found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to update specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the equipment group expectation", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid request for equipment group expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Id of the equipment group under which to retrieve an expectation", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}, {"description": "Id of the expectation to retrieve", "required": true, "type": "string", "name": "equipmentGroupExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0equipmentGroups"], "summary": "Retrieves a specific equipment group expectation", "operationId": "getEquipmentExpectationById"}}, "/nsi/api/v2_0/equipmentGroups": {"post": {"responses": {"201": {"description": "Equipment group created or updated successfully.", "schema": {"$ref": "#/definitions/EquipmentGroupRO"}}, "500": {"description": "Failed to create or update EquipmentGroupResource.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid data to create or update equipment group.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\": {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQG_SLOTSEQ_12_11_1\",\n      \"type\": \"equipmentGroup\",\n      \"attributes\": {\n        \"type\": \"SLOTSEQUENCE\"\n      },\n      \"relationships\": {\n        \"networkConstruct\": {\n          \"data\": {\n            \"type\": \"networkConstructs\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\"\n          }\n        }\n      }\n    }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/EquipmentGroupRO"}, "description": "Equipment group to create or update", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0equipmentGroups"], "summary": "Creates or updates an equipment group", "consumes": ["application/json"], "operationId": "postEquipmentGroup"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentGroupRO"}}, "500": {"description": "Failed to retrieve the equipment groups with given query parameters.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query param was specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>At least one of the following parameters must be specified:<ul><li>ncId (Deprecated)<li>networkConstruct.id<li>equipmentGroupExpectations.equipmentIntent.id<li>equipment.id<li>type</ul>", "parameters": [{"description": "(Optional, Deprecated) Network Construct identifier", "required": false, "type": "string", "name": "ncId", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"enum": ["ROADM", "COADM", "DIAOADM", "SLOTSEQUENCE", "OTS", "OTNBBPAIRING"], "description": "(Optional) Equipment group type.", "required": false, "in": "query", "type": "string", "name": "type"}, {"description": "(Optional) Comma separated list of equipment identifiers", "required": false, "type": "string", "name": "equipment.id", "in": "query"}, {"description": "(Optional) Equipment Intent Identifier", "required": false, "type": "string", "name": "equipmentGroupExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: actualizations, expectations", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page. Defaulted ALL to return all Equipment at once.", "default": "ALL", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0equipmentGroups"], "summary": "Retrieves equipment groups satisfying the provided parameters", "operationId": "getEquipmentGroup"}}, "/nsi/api/equipmentGroups/{equipmentGroupId}/equipmentGroupExpectations/{equipmentGroupExpectationId}": {"delete": {"responses": {"200": {"description": "Deleted equipment group expectation successfully."}, "403": {"description": "Forbidden to update specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to delete equipment group expectation.", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "Id of the equipment group under which to delete an expectation", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}, {"description": "Id of the expectation to delete", "required": true, "type": "string", "name": "equipmentGroupExpectationId", "in": "path"}], "tags": ["000 - nsiapiequipmentGroups"], "description": "<p>LATEST VERSION: V2_0", "summary": "Delete a specific equipment group expectation", "operationId": "deleteEquipmentGroupExpectationById"}, "get": {"responses": {"200": {"description": "Successfully retrieved the equipment group expectation.", "schema": {"$ref": "#/definitions/EquipmentGroupExpectationRO"}}, "404": {"description": "The requested equipment group expectation can't be found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to update specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the equipment group expectation", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid request for equipment group expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "Id of the equipment group under which to retrieve an expectation", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}, {"description": "Id of the expectation to retrieve", "required": true, "type": "string", "name": "equipmentGroupExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipmentGroups"], "summary": "Retrieves a specific equipment group expectation", "operationId": "getEquipmentExpectationById"}}, "/nsi/api/equipmentGroups/{equipmentGroupId}/equipmentGroupExpectations": {"post": {"responses": {"201": {"description": "Equipment group expectation created or updated successfully.", "schema": {"$ref": "#/definitions/EquipmentGroupExpectationRO"}}, "403": {"description": "Forbidden to update specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to create or update equipment group expectation.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid data to create or update equipment group expectation.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V2_0<p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\":     {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQG_SLOTSEQ_12_11_1_Expectation1\",\n      \"type\": \"equipmentGroupExpectations\",\n      \"attributes\": {\n        \"name\": \"Expectation1\",  \n        \"additionalAttributes\": {\n          \"add\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\",\n          \"drop\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\",\n          \"label\": \"Main-Expected\",\n          \"aid\": \"SLOTSEQ-12-11-1\"\n        }\n      },\n      \"relationships\": {\n        \"equipment\": {\n          \"data\": [\n            {\n              \"type\": \"equipment\",\n              \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\"\n            }\n          ]\n        },\n        \"parent\": {\n          \"data\": {\n            \"type\": \"equipmentGroup\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQG_OTS_12_11\"\n          }\n        },\n        \"equipmentIntent\": {\n          \"data\": {\n              \"type\": \"equipmentIntents\",\n              \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8:EquipmentIntent1\"\n          }\n        }\n      }\n    }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Id of the equipment group under which to create the expectation", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentGroupExpectationRO"}, "description": "The equipment group expectation to be created or updated", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipmentGroups"], "summary": "Create or update an equipment group expectation under a given equipment group", "consumes": ["application/json"], "operationId": "postEquipmentGroupExpectation"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentGroupExpectationListRO"}}, "404": {"description": "The requested equipment group can't be found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to update specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the expectations for the equipment group id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid request for equipment group.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "Id of the equipment group whose expectations are to be retrieved", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipmentGroups"], "summary": "Retrieves the expectations of an equipment group", "operationId": "getEquipmentGroupExpectations"}}, "/nsi/api/v2_0/equipmentGroups/{equipmentGroupId}/equipmentGroupExpectations": {"post": {"responses": {"201": {"description": "Equipment group expectation created or updated successfully.", "schema": {"$ref": "#/definitions/EquipmentGroupExpectationRO"}}, "403": {"description": "Forbidden to update specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to create or update equipment group expectation.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid data to create or update equipment group expectation.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\":     {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQG_SLOTSEQ_12_11_1_Expectation1\",\n      \"type\": \"equipmentGroupExpectations\",\n      \"attributes\": {\n        \"name\": \"Expectation1\",  \n        \"additionalAttributes\": {\n          \"add\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\",\n          \"drop\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\",\n          \"label\": \"Main-Expected\",\n          \"aid\": \"SLOTSEQ-12-11-1\"\n        }\n      },\n      \"relationships\": {\n        \"equipment\": {\n          \"data\": [\n            {\n              \"type\": \"equipment\",\n              \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\"\n            }\n          ]\n        },\n        \"parent\": {\n          \"data\": {\n            \"type\": \"equipmentGroup\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQG_OTS_12_11\"\n          }\n        },\n        \"equipmentIntent\": {\n          \"data\": {\n              \"type\": \"equipmentIntents\",\n              \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8:EquipmentIntent1\"\n          }\n        }\n      }\n    }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Id of the equipment group under which to create the expectation", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}, {"schema": {"$ref": "#/definitions/EquipmentGroupExpectationRO"}, "description": "The equipment group expectation to be created or updated", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0equipmentGroups"], "summary": "Create or update an equipment group expectation under a given equipment group", "consumes": ["application/json"], "operationId": "postEquipmentGroupExpectation"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentGroupExpectationListRO"}}, "404": {"description": "The requested equipment group can't be found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to update specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the expectations for the equipment group id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid request for equipment group.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Id of the equipment group whose expectations are to be retrieved", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0equipmentGroups"], "summary": "Retrieves the expectations of an equipment group", "operationId": "getEquipmentGroupExpectations"}}, "/nsi/api/equipmentGroups/{equipmentGroupId}": {"delete": {"responses": {"200": {"description": "Deleted EquipmentGroup successfully."}, "403": {"description": "Forbidden to delete specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to delete EquipmentGroup.", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "Id of the equipment group to be deleted", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}], "tags": ["000 - nsiapiequipmentGroups"], "description": "<p>LATEST VERSION: V2_0", "summary": "Delete a specific equipment group", "operationId": "deleteEquipmentGroupById"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentGroupRO"}}, "404": {"description": "Cannot find the equipment group with given Id", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified equipment group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the equipment group with given Id.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "Id of the equipment group to retrieve", "required": true, "type": "string", "name": "equipmentGroupId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: actualizations, expectations", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipmentGroups"], "summary": "Retrieves a specific equipment group", "operationId": "getEquipmentGroupById"}}}, "schemes": ["http", "https"], "tags": [{"name": "000 - nsiapiequipmentGroups", "description": "Retrieve, plan, and manage the equipment group resources<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "998 - nsiapiv2_0equipmentGroups", "description": "Retrieve, plan, and manage the equipment group resources (version 2)"}], "definitions": {"IdentifierRO": {"type": "object"}, "ErrorsRO": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/ErrorRO"}, "type": "array", "description": "A list of errors"}}}, "EquipmentGroupExpectationRelationshipsRO": {"type": "object", "properties": {"equipment": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "equipmentIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "parent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "ErrorRO": {"type": "object", "properties": {"source": {"description": "Error source", "$ref": "#/definitions/ErrorSourceRO"}, "code": {"type": "string", "description": "Error code"}, "detail": {"type": "string", "description": "Error details"}, "title": {"type": "string", "description": "Error title"}}}, "EquipmentGroupExpectationRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/EquipmentGroupExpectationDataRO"}}}, "EquipmentGroupRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Referenced sub-resources"}, "data": {"$ref": "#/definitions/EquipmentGroupDataRO"}}}, "OneToOneRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipDataRO"}}}, "EquipmentGroupExpectationListRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/EquipmentGroupExpectationDataRO"}, "type": "array"}}}, "OneToManyRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array", "description": "The one-to-many relationship"}}}, "Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "RelationshipMetaDataRO": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean", "description": "Flags whether the included relationship object is partially populated or not"}}}, "AdditionalAttributesRO": {"type": "object"}, "EquipmentGroupElementAttributesRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "startDate": {"type": "string", "description": "The scheduled start date and time of the expectation, with RFC 3339 date-time format"}, "endDate": {"type": "string", "description": "The scheduled end date and time of the expectation, with RFC 3339 date-time format"}, "name": {"type": "string"}}}, "EquipmentGroupRelationshipsRO": {"type": "object", "properties": {"equipment": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "actualization": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "parent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "expectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "EquipmentGroupDataRO": {"type": "object", "properties": {"relationships": {"description": "The equipment group relationships", "$ref": "#/definitions/EquipmentGroupRelationshipsRO"}, "attributes": {"description": "The equipment group attributes", "$ref": "#/definitions/EquipmentGroupAttributesRO"}, "type": {"enum": ["equipmentGroup"], "type": "string", "description": "The equipmentGroup resource type"}, "id": {"type": "string", "description": "The unique identifier for the equipment group resource"}}}, "EquipmentGroupAttributesRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "name": {"type": "string", "description": "Deprecated"}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "type": {"type": "string", "description": "The equipment group type"}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "EquipmentGroupExpectationDataRO": {"type": "object", "properties": {"relationships": {"description": "The equipment group expectation relationships", "$ref": "#/definitions/EquipmentGroupExpectationRelationshipsRO"}, "attributes": {"description": "The equipment group element attributes", "$ref": "#/definitions/EquipmentGroupElementAttributesRO"}, "type": {"enum": ["equipmentGroupExpectations"], "type": "string", "description": "The equipment group expectation resource type"}, "id": {"type": "string", "description": "The unique identifier for the equipment group expectation"}}}, "ErrorSourceRO": {"type": "object", "properties": {"parameter": {"type": "string", "description": "URI query parameter that caused the error"}, "pointer": {"type": "string", "description": "JSON Pointer to the associated entity in the request document"}}}, "UserDataRO": {"type": "object"}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_equipment_holders.json b/tapi/resources/MCP_4.0.0_equipment_holders.json
deleted file mode 100644
index cd2b3ef208df9e100213e8160a6b82a56b91ccef..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_equipment_holders.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Retrieve, plan and modify equipment holder resources", "title": "Equipment holders"}, "paths": {"/nsi/api/v2_0/equipmentHolders": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentHolderRO"}}, "500": {"description": "Failed to retrieve the equipment holders with given query parameters.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query param was specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>At least one of the following parameters must be specified:<ul><li>networkConstructId (Deprecated)<li>networkConstruct.id</ul>", "parameters": [{"description": "(Deprecated) Network Construct identifier", "required": false, "type": "string", "name": "networkConstructId", "in": "query"}, {"description": "Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page. Defaulted ALL to return all Equipment at once.", "default": "ALL", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0equipmentHolders"], "summary": "Retrieves equipment holders satisfying the provided parameters", "operationId": "getEquipmentHolder"}}, "/nsi/api/equipmentHolders": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentHolderRO"}}, "500": {"description": "Failed to retrieve the equipment holders with given query parameters.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V2_0<p>At least one of the following parameters must be specified:<ul><li>networkConstructId (Deprecated)<li>networkConstruct.id</ul>", "parameters": [{"description": "(Deprecated) Network Construct identifier", "required": false, "type": "string", "name": "networkConstructId", "in": "query"}, {"description": "Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page. Defaulted ALL to return all Equipment at once.", "default": "ALL", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipmentHolders"], "summary": "Retrieves equipment holders satisfying the provided parameters", "operationId": "getEquipmentHolder"}}, "/nsi/api/v2_0/equipmentHolders/{equipmentHolderId}": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentHolderRO"}}, "404": {"description": "Cannot find the equipment holder with given id.", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified equipment holder", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the equipment holder with given id.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid query param was specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Id of the equipment holder to retrieve", "required": true, "type": "string", "name": "equipmentHolderId", "in": "path"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0equipmentHolders"], "summary": "Retrieves a specific equipment holder", "operationId": "getEquipmentHolderById"}}, "/nsi/api/equipmentHolders/{equipmentHolderId}": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentHolderRO"}}, "404": {"description": "Cannot find the equipment holder with given id.", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified equipment holder", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the equipment holder with given id.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "Id of the equipment holder to retrieve", "required": true, "type": "string", "name": "equipmentHolderId", "in": "path"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapiequipmentHolders"], "summary": "Retrieves a specific equipment holder", "operationId": "getEquipmentHolderById"}}}, "schemes": ["http", "https"], "tags": [{"name": "000 - nsiapiequipmentHolders", "description": "Retrieve and manage the equipment holder resources<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "998 - nsiapiv2_0equipmentHolders", "description": "Retrieve and manage the equipment holder resources (version 2)"}], "definitions": {"IdentifierRO": {"type": "object"}, "EquipmentHolderRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/EquipmentHolderDataRO"}}}, "Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "EquipmentHolderDataRO": {"type": "object", "properties": {"relationships": {"description": "The equipment attributes", "$ref": "#/definitions/EquipmentHolderRelationshipsRO"}, "attributes": {"description": "The equipment holder attributes", "$ref": "#/definitions/EquipmentHolderAttributesRO"}, "type": {"enum": ["equipmentHolders"], "type": "string", "description": "The equipment holder resource type"}, "id": {"type": "string", "description": "The unique identifier for the equipment holder resource"}}}, "EquipmentHolderAttributesRO": {"type": "object", "properties": {"category": {"enum": ["slot", "subslot"], "type": "string"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "state": {"enum": ["EMPTY", "INSTALLED_AND_EXPECTED", "EXPECTED_AND_NOT_INSTALLED", "INSTALLED_AND_NOT_EXPECTED", "MISMATCH_OF_INSTALLED_AND_EXPECTED", "UNAVAILABLE"], "type": "string"}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array"}, "parentEquipmentLocation": {"description": "Location of the entity", "$ref": "#/definitions/LocationRO"}, "nativeName": {"type": "string"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}}}, "LocationRO": {"type": "object", "properties": {"mplsLabel": {"type": "string", "description": "MPLS tunnel forward/reverse in/out label"}, "interfaceIp": {"type": "string", "description": "DEPRECATED The IP address of MPLS interface"}, "baynum": {"type": "string", "description": "Bay number"}, "mcId": {"type": "string", "description": "The identifier of the media channel"}, "fiberPairTermination": {"type": "string", "description": "The terminating fiber pair id within a Branching Unit (BU)"}, "frequency": {"type": "string", "description": "The frequency of the channel"}, "subshelf": {"type": "string"}, "wavelength": {"type": "string"}, "ringId": {"type": "string", "description": "ID of the ring"}, "eqptGrp": {"type": "string", "description": "The group ID obtained from RTRV-EQPTGRP for the SAOS card on which the entity resides"}, "port": {"type": "string"}, "leg": {"enum": ["trunk", "a1", "a2"], "type": "string", "description": "Branching Unit (BU) leg e.g. Trunk, A1 or A2"}, "slot": {"type": "string"}, "index": {"type": "string"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string", "description": "MPLS tunnel role"}, "vce": {"type": "string", "description": "The VS name of the CTP entity"}, "fic": {"type": "string", "description": "Frame identification code"}, "subport": {"type": "string"}, "neName": {"type": "string", "description": "Name of the networkConstruct. For example, the OSRP node name in controlPlane."}, "logicalPortName": {"type": "string"}, "protectionRole": {"enum": ["primary", "backup"], "type": "string", "description": "Protection role"}, "lagName": {"type": "string", "description": "Name of the LAG"}, "instance": {"type": "string"}, "locationIndex": {"items": {"$ref": "#/definitions/LocationIndexesRO"}, "type": "array", "description": "List of location indexes"}, "odu2_index": {"type": "string"}, "rapsVid": {"type": "string", "description": "R-APS VID"}, "iclName": {"type": "string", "description": "Name of the ICL"}, "channel": {"type": "string"}, "nmcId": {"type": "string", "description": "OSTi CTP for the SNC"}, "direction": {"enum": ["tx", "rx"], "type": "string", "description": "The direction of the traffic flow e.g. Tx or Rx"}, "mgmtNmcId": {"type": "string", "description": "TBD"}, "peerIp": {"type": "string", "description": "Address of the BGP peer"}, "shelf": {"type": "string"}, "peerAs": {"type": "integer", "description": "Autonomous System number of the BGP peer", "format": "int64"}, "vlan": {"type": "string", "description": "The VLAN ID of the CTP entity"}, "oduCn_index": {"type": "string"}, "lspName": {"type": "string", "description": "MPLS tunnel name"}, "virtualRingName": {"type": "string", "description": "Name of the virtual ring"}, "logicalId": {"type": "string"}, "mgmtMcId": {"type": "string", "description": "TBD"}, "primaryLspName": {"type": "string", "description": "The primary MPLS tunnel name"}, "interfaceName": {"type": "string", "description": "Interface name of the IP FTP"}, "odu4_index": {"type": "string"}, "subsubslot": {"type": "string"}, "managementType": {"enum": ["tl1", "saos", "netconf", "rest", "corba", "submarineConf"], "type": "string", "description": "Management protocol type"}, "sncId": {"type": "string", "description": "Snc id number"}, "eth_index": {"type": "string"}, "pseudoWireId": {"type": "string", "description": "DEPRECATED The identifier of Pseudo-Wire CTP"}, "srcIp": {"type": "string", "description": "Source IP of the node"}, "pseudoWireName": {"type": "string", "description": "The name of the Pseudo-Wire on the CTP"}, "rack": {"type": "string"}, "subslot": {"type": "string"}}}, "LocationIndexesRO": {"type": "object"}, "RelationshipMetaDataRO": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean", "description": "Flags whether the included relationship object is partially populated or not"}}}, "AdditionalAttributesRO": {"type": "object"}, "EquipmentHolderRelationshipsRO": {"type": "object", "properties": {"networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "OneToOneRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipDataRO"}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "UserDataRO": {"type": "object"}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_equipment_planning_and_provisioning.json b/tapi/resources/MCP_4.0.0_equipment_planning_and_provisioning.json
deleted file mode 100644
index 045ad8f27eea844ff87961f7c3faf8e1e0d3633b..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_equipment_planning_and_provisioning.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Creation, deletion and realization of planned equipment (cards, pluggables, etc.)", "title": "Equipment planning and provisioning"}, "paths": {"/ifd/api/v1/equipmentIntents/{id}": {"delete": {"responses": {"500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "404": {"description": "Equipment Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Equipment Intent deleted"}, "409": {"description": "Equipment Intent state conflicted", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "The intent ID used for intent lookup", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}, {"description": "(Optional) Bypassing equipment provisioning state validation if set to true", "default": false, "required": false, "in": "query", "type": "boolean", "name": "ignoreEquipmentProvisioning"}], "tags": ["Equipment Intents v1"], "deprecated": true, "description": "This API deletes an Equipment Intent based on ID.<p>Prerequisite: An Equipment Intent must exist with the given ID.</p>", "summary": "Delete an Equipment Intent based on its identifier", "operationId": "deleteEquipmentIntent"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentIntentResponse"}}, "404": {"description": "Intent is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Fetches a uniquely identified Equipment Intent.<p>Prerequisite: An Equipment Intent must exist with the given ID.</p>", "parameters": [{"description": "The intent ID used for intent lookup", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "deprecated": true, "tags": ["Equipment Intents v1"], "summary": "Get an Equipment Intent based on its identifier", "operationId": "getEquipmentIntent"}}, "/ifd/api/v1/equipmentIntents": {"post": {"responses": {"201": {"description": "Equipment Intent is created, Equipment realized and planned"}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/EquipmentIntentResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API validates Equipment Intent attributes, plans Equipment Intent realization for deployment.<p>Prerequisite: The entered Equipment Intent is valid.</p>", "parameters": [{"schema": {"$ref": "#/definitions/EquipmentIntentRequest"}, "description": "Equipment Intent as a JSON Profile wrapper object", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["Equipment Intents v1"], "summary": "Create Equipment Intents", "consumes": ["application/json"], "operationId": "createEquipmentIntent"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentIntentResponseArray"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "deprecated": true, "description": "The operation is used to fetch all Equipment Intents submitted to the Intent Fulfillment Designer.<p>Prerequisite: At least one Equipment Intent must exist.</p>", "tags": ["Equipment Intents v1"], "summary": "Get all Equipment Intents", "operationId": "getAllEquipmentIntents"}}, "/ifd/api/updatedExpectations/{intentId}": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/UpdatedExpectationsResponse"}}}, "description": "", "parameters": [{"description": "The intent ID used for updated expectations lookup", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "intentId"}], "produces": ["application/json"], "tags": ["Updated Expectations Resource"], "summary": "Gets updated expectations for a given intent id", "operationId": "getUpdatedExpectations"}}, "/ifd/api/v1/updatedExpectations/{intentId}": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/UpdatedExpectationsResponse"}}}, "description": "", "parameters": [{"description": "The intent ID used for updated expectations lookup", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "intentId"}], "produces": ["application/json"], "tags": ["Updated Expectations Resource v1"], "summary": "Gets updated expectations for a given intent id", "operationId": "getUpdatedExpectations"}}, "/ifd/api/v3/equipmentIntents/postUpgrade/projectName": {"post": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/EquipmentIntentResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API update Equipment's projectName attribute in NSI based on project ID in Equipment Intent ", "produces": ["application/json"], "tags": ["Equipment Intents v3"], "summary": "Updates Equipment projectName", "consumes": ["application/json"], "operationId": "upgradeEquipmentIntentsProjectName"}}, "/ifd/api/equipmentIntents": {"put": {"responses": {"201": {"description": "Equipment Intent is created, Equipment realized and planned"}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/EquipmentIntentResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API validates Equipment Intent attributes, plans Equipment Intent realization for deployment.<p>Prerequisite: The entered Equipment Intent is valid.</p>", "parameters": [{"schema": {"$ref": "#/definitions/EquipmentIntentEditRequest"}, "description": "Equipment Intent as a JSON Profile wrapper object", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Equipment Intents"], "summary": "Updates Equipment Intents", "consumes": ["application/json"], "operationId": "updateEquipmentIntent"}, "post": {"responses": {"201": {"description": "Equipment Intent is created, Equipment realized and planned"}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/EquipmentIntentResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API validates Equipment Intent attributes, plans Equipment Intent realization for deployment.<p>Prerequisite: The entered Equipment Intent is valid.</p>", "parameters": [{"schema": {"$ref": "#/definitions/EquipmentIntentRequest"}, "description": "Equipment Intent as a JSON Profile wrapper object", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Equipment Intents"], "summary": "Create Equipment Intents", "consumes": ["application/json"], "operationId": "createEquipmentIntent"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentIntentResponseArray"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "The operation is used to fetch all Equipment Intents submitted to the Intent Fulfillment Designer.<p>Prerequisite: At least one Equipment Intent must exist.</p>", "tags": ["Equipment Intents"], "summary": "Get all Equipment Intents", "operationId": "getAllEquipmentIntents"}}, "/ifd/api/v3/equipmentIntents": {"post": {"responses": {"201": {"description": "Equipment Intent is created, Equipment realized and planned"}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/EquipmentIntentResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API validates Equipment Intent attributes, plans Equipment Intent realization for deployment.<p>Prerequisite: The entered Equipment Intent is valid.</p>", "parameters": [{"schema": {"$ref": "#/definitions/EquipmentIntentRequest"}, "description": "Equipment Intent as a JSON Profile wrapper object", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Equipment Intents v3"], "summary": "Create Equipment Intents", "consumes": ["application/json"], "operationId": "createEquipmentIntent"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentIntentResponseArray"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "The operation is used to fetch all Equipment Intents submitted to the Intent Fulfillment Designer.<p>Prerequisite: At least one Equipment Intent must exist.</p>", "tags": ["Equipment Intents v3"], "summary": "Get all Equipment Intents", "operationId": "getAllEquipmentIntents"}}, "/ifd/api/v3/equipmentIntents/postUpgrade": {"post": {"responses": {"201": {"description": "Equipment Intent is created, Equipment realized and planned"}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/EquipmentIntentResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API validates Equipment Intent attributes, plans Equipment Intent realization for deployment.<p>Prerequisite: The entered Equipment Intent is valid.</p>", "produces": ["application/json"], "tags": ["Equipment Intents v3"], "summary": "Updates Equipment Intents", "consumes": ["application/json"], "operationId": "upgradeEquipmentIntents"}}, "/ifd/api/equipmentIntents/postUpgrade": {"post": {"responses": {"201": {"description": "Upgrade command has been accepted"}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/EquipmentIntentResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Upgrade command has failed", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API upgrades existing FRES so that they have expectations with turnupTime and turnDownTime<p>Prerequisite: NA.</p>", "produces": ["application/json"], "tags": ["Equipment Intents"], "summary": "Upgrades Equipment Intents", "consumes": ["application/json"], "operationId": "upgradeEquipmentIntents"}}, "/ifd/api/v3/equipmentIntents/{id}": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentIntentResponse"}}, "404": {"description": "Intent is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Fetches a uniquely identified Equipment Intent.<p>Prerequisite: An Equipment Intent must exist with the given ID.</p>", "parameters": [{"description": "The intent ID used for intent lookup", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["Equipment Intents v3"], "summary": "Get an Equipment Intent based on its identifier", "operationId": "getEquipmentIntent"}}, "/ifd/api/equipmentIntents/postUpgrade/projectName": {"post": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/EquipmentIntentResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API update Equipment's projectName attribute in NSI based on project ID in Equipment Intent ", "produces": ["application/json"], "tags": ["Equipment Intents"], "summary": "Updates Equipment projectName", "consumes": ["application/json"], "operationId": "upgradeEquipmentIntentsProjectName"}}, "/ifd/api/equipmentIntents/{id}": {"delete": {"responses": {"500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "404": {"description": "Equipment Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Equipment Intent deleted"}, "409": {"description": "Equipment Intent state conflicted", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "The intent ID used for intent lookup", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}, {"description": "(Optional) Bypassing equipment provisioning state validation if set to true", "default": false, "required": false, "in": "query", "type": "boolean", "name": "ignoreEquipmentProvisioning"}], "tags": ["Equipment Intents"], "description": "This API deletes an Equipment Intent based on ID.<p>Prerequisite: An Equipment Intent must exist with the given ID.</p>", "summary": "Delete an Equipment Intent based on its identifier", "operationId": "deleteEquipmentIntent"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentIntentResponse"}}, "404": {"description": "Intent is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Fetches a uniquely identified Equipment Intent.<p>Prerequisite: An Equipment Intent must exist with the given ID.</p>", "parameters": [{"description": "The intent ID used for intent lookup", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["Equipment Intents"], "summary": "Get an Equipment Intent based on its identifier", "operationId": "getEquipmentIntent"}}}, "schemes": ["http", "https"], "tags": [{"name": "Equipment Intents", "description": "Plan equipment, apply planned equipment, or remove planned equipment<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version"}, {"name": "Equipment Intents v1", "description": "Plan equipment, apply planned equipment, or remove planned equipment (version 1) - deprecated"}, {"name": "Equipment Intents v3", "description": "Plan equipment, apply planned equipment, or remove planned equipment (version 3)"}, {"name": "Updated Expectations Resource", "description": "Retrieval of updated expectations for a given intent id"}, {"name": "Updated Expectations Resource v1", "description": "Retrieval of updated expectations for a given intent id"}], "basePath": "/", "definitions": {"Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "Bfd": {"type": "object", "properties": {"transmitInterval": {"type": "string", "description": "The interval between transmitting BFD messages"}, "configured": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "receiveInterval": {"type": "string", "description": "The interval between receiving BFD messages"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of BFD for this endpoint"}, "role": {"enum": ["passive", "active", "any"], "type": "string", "description": "The role of BFD for this endpoint"}, "profileName": {"type": "string", "description": "The profile name associated with this set of BFD attributes"}, "operationalState": {"enum": ["up", "down"], "type": "string", "description": "The operational state of BFD for this endpoint"}}}, "MapperRule": {"type": "object", "properties": {"groupedTribSlots": {"items": {"items": {"type": "string"}, "type": "array"}, "type": "array"}, "tribPort": {"type": "string"}, "tribSlots": {"items": {"type": "string"}, "type": "array"}}}, "EquipmentIntentResponseData": {"type": "object", "properties": {"attributes": {"description": "Response to REST requests containing ID, creationTime, and the Request itself", "$ref": "#/definitions/EquipmentIntentResponseAttributes"}, "type": {"type": "string", "description": "The type of this EquipmentIntentResponseData."}, "id": {"type": "string", "description": "The unique identifier of this equipment intent."}}}, "UpdatedExpectation": {"type": "object", "properties": {"expectationId": {"type": "string", "description": "Expectation Id"}, "type": {"type": "string", "description": "Entity type - EQUIPMENT, TPE, FRE, EQUIPMENTGROUP, NETWORKCONSTRUCT"}, "id": {"type": "string", "description": "Entity Id"}, "updatedAttributes": {"items": {"$ref": "#/definitions/UpdatedAttribute"}, "type": "array", "description": "List of updated attributes."}}}, "EquipmentIntentRequestEqp": {"type": "object", "properties": {"slot": {"type": "string", "description": "The slot associated with this equipment (may be none)."}, "reservedForMaintenance": {"default": false, "type": "boolean", "description": "If reserved for maintenance is set to true Equipment primary state is set to OOS during provisioning."}, "turnUpDateTime": {"type": "string", "description": "The expected date associated with equipment deployment.", "format": "date-time"}, "eqpId": {"type": "string", "description": "Unique identifier associated with this equipment."}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributes"}, "projectID": {"type": "string", "description": "0-16 character alphanumeric text field to be stored against the relevant equipment. This field maps to the projectName field in the Resource Planning Tool."}, "flexgridEnabled": {"default": false, "type": "boolean", "description": "If the Equipment is FlexGrid Enabled"}, "cardType": {"type": "string", "description": "The card type of this equipment. Required for filler or common equipment"}, "subshelf": {"type": "string", "description": "The subshelf associated with this equipment (may be none)."}, "equipmentProfile": {"type": "string", "description": "Equipment profile e.g. QPSK100G, 16QAM200G, 2X8QAM300G, 2XBPSK100G, 4ASK."}, "equipmentOperation": {"enum": ["ADD", "REMOVE", "UPDATE_ADJ"], "type": "string", "description": "Operation to be performed on the equipment"}, "networkElements": {"items": {"$ref": "#/definitions/NetworkElement"}, "type": "array", "description": "Control Plane Network element data associated with this piece of equipment"}, "subslot": {"type": "string", "description": "The subslot associated with this equipment (may be none)."}, "shelf": {"type": "string", "description": "The shelf associated with this equipment (may be none)."}, "nodeType": {"enum": ["OADM", "ILA", "DGE"], "type": "string", "description": "The type of node this equipment exists on. OADM nodes contain the add/drop banks while ILA and DGE nodes are used for amplification between OADMs."}, "partNumber": {"type": "string", "description": "The part number the uniquely identifies the type of this piece of equipment."}, "endpoints": {"items": {"$ref": "#/definitions/EquipmentIntentRequestEndPoint"}, "type": "array", "description": "Endpoints associated with this piece of equipment. Note that only those endpoints with associated adjacencies need to be specified."}, "turnDownDateTime": {"type": "string", "description": "The expected date associated with decommissioning the equipment.", "format": "date-time"}, "maintenanceMode": {"default": false, "type": "boolean", "description": "Determines whether events for this piece of equipment will be responded to. Note that it is possible to deactivate maintenance mode at a later date."}}}, "AdaptationPool": {"type": "object", "properties": {"poolAdapters": {"items": {"$ref": "#/definitions/Adapter"}, "type": "array"}, "memberAdaptationPools": {"items": {"type": "string"}, "type": "array", "description": "Reference(s) to 0 or more member AdaptationPool-s. Allows for nesting of AdaptationPools."}, "logicalRule": {"enum": ["xOR", "OR"], "type": "string", "description": "Restrict the number of active poolAdapters could be xOR or OR - default is OR"}, "name": {"type": "string", "description": "Name of the AdaptationPool. Unique in the scope of this TPE."}, "namingRules": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributes"}}}, "TunnelPath": {"type": "object", "properties": {"hops": {"items": {"$ref": "#/definitions/HopEntry"}, "type": "array"}, "pathName": {"type": "string", "description": "The name of this explicit tunnel path"}}}, "ControlPlanePackage": {"type": "object", "properties": {"isMaster": {"default": false, "type": "boolean", "description": "Specifies if this end of the OSRP link is the master."}, "configuredLatencyType": {"enum": ["disc", "manual"], "type": "string", "description": "Describe whether the latency is discovered or  manual."}, "holdBackSdThresholds": {"type": "string", "description": "Holdback signal degrade threshold"}, "bwThresholdMode": {"enum": ["ADV_ALL", "AUTO", "MANUAL"], "type": "string", "description": "The default setting of OSRP link bandwidth threshold mode"}, "applicableRates": {"type": "string", "description": "Applicable Rates list"}, "commState": {"type": "string", "description": "State of the Hello protocol finite state machine."}, "bwThreshold": {"$ref": "#/definitions/BandwidthThreshold"}, "osrpCommChannel": {"enum": ["GCC0", "GCC1", "GCC2", "GCC12"], "type": "string", "description": "communication carrier"}, "bwLockOut": {"enum": ["NO", "YES"], "type": "string", "description": "Specifies if bandwidth lockout is enabled locally for the OSRP line."}, "commonId": {"type": "integer", "description": "Common identifier of the OSRP line", "format": "int32"}, "holdOffTimer": {"type": "integer", "description": "Line-Level hold-off timer ", "format": "int32"}, "ovpnIds": {"items": {"type": "string"}, "type": "array", "description": "The optical virtual private network ID list"}}}, "PeerError": {"type": "object", "properties": {"errorCode": {"type": "string", "description": "Error code for last error"}, "errorSubCode": {"type": "string", "description": "Sub error code for last error"}, "errorSubCodeDesc": {"type": "string", "description": "Description of the Error sub code in last error"}, "errorCodeDesc": {"type": "string", "description": "Description of the Error code in last error"}}}, "Bw": {"type": "object", "properties": {"available": {"type": "string", "description": "The available bandwidth left to be"}, "requested": {"type": "string", "description": "The requested bandwidth from the supporting layer, e.g. a dynamic tunnel requesting bandwidth from IP interface"}, "autoSize": {"enum": ["enable", "disable"], "type": "string", "description": "If true, the MPLS tunnel will be auto-sized by the NE"}, "used": {"type": "string", "description": "The current used bandwidth by all supported clients"}, "autoSizeLastResizeStartTime": {"type": "string", "description": "Start time of the last auto resize happened"}, "autoSizeIntervalMinutes": {"type": "string", "description": "The configured interval between auto-sizing attempts"}, "autoSizeLastResizeEndTime": {"type": "string", "description": "End time of the last auto resize happened"}, "maximum": {"type": "string", "description": "The maximum bandwidth configured for supported clients"}, "operational": {"type": "string", "description": "The current bandwidth being allocated from the supporting layer"}, "autoSizeLastResizeReason": {"type": "string", "description": "Reason of the last auto resize happened"}, "bookingFactor": {"type": "string", "description": "The booking factor of how much the bandwidth can be oversubscribed, e.g. on an IP interface"}, "minimum": {"type": "string", "description": "The minimum bandwidth configured for supported clients"}, "autoSizeLastResizeState": {"enum": ["success", "failure", "in_progress"], "type": "string", "description": "The state of the last auto-sizing attempt"}, "increment": {"type": "string", "description": "The configured bandwidth increment for auto-sizing of an MPLS tunnel"}, "autoSizeFailureAction": {"enum": ["none", "alarm", "mbb"], "type": "string", "description": "The action to be taken when auto-sizing fails: raise alarm, or make-before-break"}, "maxReservable": {"type": "string", "description": "The maximum reservable bandwidth allowed to be allocated to supported clients and it's calculated as bwBookingFactor x bwTotal"}, "profileName": {"type": "string", "description": "The name of the bandwidth profile associated with the dynamic tunnel endpoint"}, "total": {"type": "string", "description": "The total bandwidth allocated or allowed, e.g. the capacity of an IP interface"}, "autoSizingMode": {"enum": ["none", "cac", "utilization"], "type": "string", "description": "The configured auto-sizing mode"}, "unit": {"type": "string", "description": "The bandwidth unit that applies to all bandwidth attributes in this package. Available values: bps, kbps, mbps, gbps"}}}, "HopEntry": {"type": "object", "properties": {"hopType": {"enum": ["strict", "loose"], "type": "string", "description": "The type of this hop"}, "hopAddress": {"type": "string", "description": "The IP-data interface address for this hop"}}}, "MplsPackage": {"type": "object", "properties": {"prevHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the previous hop of this MPLS tunnel"}, "subType": {"enum": ["TP", "TE"], "type": "string", "description": "TP refers to Transport Profile; TE refers to Traffic Engineering"}, "aisSessionAdminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of the AIS session for this MPLS tunnel"}, "explicitRouteObject": {"items": {"type": "string"}, "type": "array", "description": "An ordered list of hop-by-hop IP-data interface addresses traversed by this dynamic MPLS tunnel"}, "shareSrlg": {"items": {"type": "string"}, "type": "array", "description": "A list of share SRLG values used by dynamic tunnel during provisioning."}, "TxTag": {"type": "string", "description": "The label used for traffic egressing from this endpoint"}, "stickyLsp": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating a tunnel stays on the same path after change in required resources. Applicable to dynamic coRouted tunnels only."}, "nextHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the next hop of this MPLS tunnel"}, "tunnelType": {"enum": ["rsvp_ingress_corout", "rsvp_egress_corout", "rsvp_transit_corout", "static_ingress_corout", "static_egress_corout", "static_transit_corout", "static_ingress_unidir", "static_egress_unidir", "static_transit_unidir", "rsvp_ingress_unidir", "rsvp_transit_unidir", "static_ingress_assoc", "rsvp_ingress", "rsvp_transit", "rsvp_egress"], "type": "string", "description": "Tunnel type (static/dynamic, ingress/egress, corouted/unidrectional)"}, "bfd": {"description": "Holds BFD attributes for one LER TPE endpoint", "$ref": "#/definitions/Bfd"}, "optimization": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating if dynamic tunnel optimization should be attempted by the control-plane"}, "destTunnelId": {"type": "string", "description": "The ID of the far end of this MPLS tunnel"}, "fb": {"description": "MPLS FB tunnel attributes", "$ref": "#/definitions/MplsFb"}, "destIp": {"type": "string", "description": "The IP-data interface address of the far end of this MPLS tunnel"}, "fwdIn": {"type": "string", "description": "The inward ID in the forward direction (transit)"}, "localIfNamePrevHop": {"type": "string", "description": "The local interface name of the previous hop of this MPLS tunnel (6200 only)"}, "localIfNameNextHop": {"type": "string", "description": "The local interface name of the next hop of this MPLS tunnel (6200 only)"}, "frrSignaling": {"enum": ["on", "off"], "type": "string", "description": "Deprecated by frr package and will be removed later. Flag for fast re-route capability"}, "colorGroup": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "direction": {"enum": ["bidirectional", "ingress", "egress", "unidirectional"], "type": "string", "description": "Tunnel direction. Use value bidirectional or unidirectional only and TPE attribute stackDirection since ingress and egress are ambiguous"}, "lspId": {"type": "string", "description": "The numeric ID of this MPLS tunnel"}, "srcTunnelId": {"type": "string", "description": "The ID of the near end of this MPLS tunnel"}, "aisProfileName": {"type": "string", "description": "The name of the Alarm Indication Signal profile for this MPLS tunnel"}, "optimizationInterval": {"type": "integer", "description": "The interval between tunnel optimization attempts", "format": "int32"}, "excludeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "signaled": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is dynamic; otherwise it is static"}, "diversityResource": {"enum": ["unknown", "none", "link", "srlg", "node", "srlg_and_node", "srlg_and_link", "link_and_node", "srlg_or_node", "srlg_and_link_and_node"], "type": "string", "description": "The object upon which to base diversity for the backup tunnel"}, "aisRefreshTimerUnit": {"type": "string", "description": "The units for aisRefreshTimer field"}, "fixedTtl": {"type": "string", "description": "The time-to-live for tunnel hops (1-255)"}, "lspName": {"type": "string", "description": "The name of this MPLS tunnel"}, "autoBackup": {"enum": ["on", "off"], "type": "string", "description": "A flag to signal if auto-backup tunnel creation is on or off"}, "aisRefreshTimer": {"type": "integer", "description": "The interval between each AIS refresh for this MPLS tunnel", "format": "int32"}, "nextHopIfNum": {"type": "string", "description": "The interface number of the next hop of this MPLS tunnel"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string", "description": "The role at this point in the MPLS tunnel"}, "includeAll": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "prevHopIfNum": {"type": "string", "description": "The interface number of the previous hop of this MPLS tunnel"}, "explicitTunnel": {"description": "Holds data for the explicit tunnel path", "$ref": "#/definitions/TunnelPath"}, "includeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "diversityLevel": {"enum": ["strict", "maximal"], "type": "string", "description": "The diversity level of backup tunnel creation (maximal meaning best-effort)"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "A list of shared-risk link-group values assigned to this interface"}, "setupPriority": {"type": "string", "description": "The priority of the dynamic tunnel setup (0-7)"}, "revIn": {"type": "string", "description": "The inward ID in the reverse direction (transit)"}, "facilityBypass": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is facility-bypass (FB) tunnel"}, "revOut": {"type": "string", "description": "The outward ID in the reverse direction (transit)"}, "mbbHistory": {"items": {"$ref": "#/definitions/MbbHistoryEntry"}, "type": "array"}, "frr": {"description": "MPLS FRR details attributes", "$ref": "#/definitions/MplsFrr"}, "fwdOut": {"type": "string", "description": "The outward ID in the forward direction (transit)"}, "softPreemption": {"enum": ["enable", "disable"], "type": "string", "description": "If true, soft preemption is enabled. Applicable to dynamic TE unidirectional tunnels only."}, "optimizationIntervalUnit": {"type": "string", "description": "The unit for optimizationInterval"}, "RxTag": {"type": "string", "description": "The label used for traffic ingressing to this endpoint"}, "bw": {"description": "Holds bandwidth attributes for a dynamic tunnel endpoint or an IP interface", "$ref": "#/definitions/Bw"}, "holdPriority": {"type": "string", "description": "The priority of the dynamic tunnel steady-state (0-7)"}, "srcIp": {"type": "string", "description": "The IP-data interface address of the near end of this MPLS tunnel"}, "coRouted": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is co-routed; otherwise it is associated"}, "frrProfile": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "Deprecated by frr package and will be removed later. The fast re-route profile for this MPLS tunnel"}, "ctrlPlaneId": {"type": "string", "description": "A generated value to uniquely identify a particular tunnel instance"}}}, "SamData": {"type": "object", "properties": {"roadmLineRx": {"type": "string", "description": "The ROADM line label associated with the rx port of this SAM. Must not be included for DGEs or ILAs."}, "otsSubtype": {"enum": ["ROADM", "AMP"], "type": "string", "description": "The OTS subtype of a particular piece of equipment."}, "roadmLineTx": {"type": "string", "description": "The ROADM line label associated with the tx port of this SAM. Must not be included for DGEs or ILAs."}}}, "LifeCycleRule": {"type": "object", "properties": {"autoDeletedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto deleted by the network and/or device (true) or must it explicitly be created (false)."}, "autoCreatedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto created by the network and/or device (true) or must it explicitly be created (false)."}}}, "MappingTableEntry": {"type": "object", "properties": {"ip": {"type": "string", "description": "The ip address."}, "direction": {"enum": ["RX", "TX", "RXTX"], "type": "string", "description": "The directionality defined in terms of RX/TX."}, "cos": {"type": "string", "description": "The class of service."}, "label": {"type": "string", "description": "The user label."}}}, "NextHopSelf": {"type": "object", "properties": {"configured": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}, "excludeReflectedRoutes": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}}}, "BgpTransport": {"type": "object", "properties": {"updateSource": {"type": "string", "description": "The name of IP interface used with update-source."}, "localIp": {"type": "string", "description": "If update-source is configured then IP address of the interface. Rely on learned localIp if it is reported. Reported in OPENCONFIRM and ESTABLISHED states."}, "localPort": {"type": "string", "description": "Local port reported in OPENCONFIRM and ESTABLISHED states."}, "peerPort": {"type": "string", "description": "Peer port reported in OPENCONFIRM and ESTABLISHED states."}, "peerIp": {"type": "string", "description": "Peer Ip configured as part of BGP peer configuration."}}}, "EquipmentIntentRequest": {"type": "object", "properties": {"data": {"description": "Data for one or more pieces of equipment (circuit packs and pluggables) to be deployed in network.", "$ref": "#/definitions/EquipmentIntentRequestData"}}}, "TrafficProfileParam": {"type": "object", "properties": {"selectFrom": {"items": {"type": "string"}, "type": "array", "description": "Alternate form of value attribute that permits a comma separated list of the choices available for selection."}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU1e", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTUg", "OTSi", "OMS", "OS", "PHY", "OTS", "FC", "FICON", "ODU", "ODU0", "ODU1", "ODU1e", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "ODUg", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate"}, "name": {"type": "string", "description": "Name of attribute."}, "value": {"type": "string", "description": "Value of attribute."}, "location": {"enum": ["self", "intent", "farEnd", "immediateClientTpe"], "type": "string", "description": "If an input, where to find the attribute. If an output, where to set the attribute."}}}, "MbbHistoryEntry": {"type": "object", "properties": {"reason": {"type": "string", "description": "Reason of the make-before-break"}, "endTime": {"type": "string", "description": "End time of the make-before-break happened"}, "result": {"type": "string", "description": "Result of the make-before-break"}, "startTime": {"type": "string", "description": "Start time of the make-before-break happened"}}}, "MplsFrr": {"type": "object", "properties": {"frrProtected": {"default": false, "type": "boolean", "description": "If true, the tunnel is protected by fast re-route (FRR) on the headend TX MPLS CTP"}, "profileName": {"type": "string", "description": "The FRR profile name on the headend TX MPLS CTP"}, "localProtection": {"description": "Holds MPLS FRR local protection attributes for TX MPLS CTP", "$ref": "#/definitions/MplsFrrLocalProtection"}, "actualProtectionRoute": {"items": {"$ref": "#/definitions/MplsFrrProtectionRouteHop"}, "type": "array", "description": "Actual FRR protection route on the headend TX MPLS CTP"}}}, "Indexes": {"type": "object"}, "BandwidthThreshold": {"type": "object", "properties": {"ODUFLEXRSZ": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (in Bps) for Resizable ODU Flex advertised for a link."}, "ODU2E": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU2E) advertised for a link."}, "ODUFLEXNRSZ": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (in Bps) for Non-Resizable ODU Flex advertised for a link."}, "ODU4": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU4) advertised for a link."}, "ODU2": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU2) advertised for a link."}, "ODU3": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU3) advertised for a link."}, "ODU0": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU0) advertised for a link."}, "ODU1": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU1) advertised for a link."}}}, "TpeCfmPackage": {"type": "object", "properties": {"mep": {"items": {"$ref": "#/definitions/MepEntry"}, "type": "array", "description": "Each entry holds information about one Maintenance Endpoint configured on this TPE"}, "cfmServiceName": {"type": "string", "description": "The name of the CFM service"}}}, "TtiPackage": {"type": "object", "properties": {"ttiTx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttribute"}, "traceFailedMode": {"enum": ["NULL", "ALARM", "ALARM_FAIL_LINE"], "type": "string"}, "ttiExpectedRx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttribute"}, "ttiRx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttribute"}}}, "EquipmentIntentEditRequestAttributes": {"type": "object", "properties": {"intentId": {"type": "string", "description": "Intent ID of planned intent"}, "equipment": {"items": {"$ref": "#/definitions/EquipmentIntentEditRequestEqp"}, "type": "array", "description": "The equipment associated with this intent (shelves, cards, pluggables, fans, etc)."}}}, "NetworkElement": {"type": "object", "properties": {"controlPlaneMode": {"type": "string", "description": "Control plane mode - Photonoic, Provisioning"}, "flexCapable": {"default": false, "type": "boolean", "description": "If network element is flex capable"}, "name": {"type": "string", "description": "The name/tid of the Network Element (e.g. OTTAWA_001)."}, "planningId": {"type": "string", "description": "The opaque id provided by a planning tool interacting with IFD."}, "siteName": {"type": "string", "description": "The site name of the NE. May be a CLLI or some other customer defined format."}, "controlPlaneNodeId": {"type": "string", "description": "Control Plane Node Id"}, "resourceType": {"type": "string", "description": "Resource Type of the device."}, "softwareVersion": {"type": "string", "description": "Software version running in the device."}, "physicalNetworkElementReference": {"$ref": "#/definitions/NetworkElementReference"}, "deviceType": {"enum": ["CIENA_6500", "CIENA_WAVESERVER", "CIENA_6200", "CIENA_8700", "CIENA_PACKET", "CIENA_54_XX", "PN_6_X", "PN_8_X", "UNKNOWN"], "type": "string", "description": "Device Type"}, "networkElementOperation": {"enum": ["ADD", "REMOVE"], "type": "string", "description": "Operation to be performed on the network element"}, "accessIdentifier": {"type": "string", "description": "Access Identifier of the device."}}}, "Orf": {"type": "object", "properties": {"direction": {"enum": ["rx", "tx", "both"], "type": "string", "description": "Outbound Route Filtering direction"}, "type": {"type": "string", "description": "Outbound Route Filtering type"}}}, "AdjacencyPackage": {"type": "object", "properties": {"adjacencyMechanism": {"type": "string", "description": "The attribute defining the adjacency mechanism used."}, "provisionedRemoteTagFormat": {"type": "string", "description": "The format of the provisioned remote adjacency tag."}, "remoteTagFormat": {"type": "string", "description": "The format of the remote adjacency tag."}, "remoteTag": {"type": "string", "description": "The actual remote tag as discovered by the network element."}, "linkAttributes": {"description": "Stores information about the link.", "$ref": "#/definitions/LinkAttributes"}, "provisionedRemoteTag": {"type": "string", "description": "The provisioned remote tag is the expected destination defined by the user that adheres to the remoteTagFormat."}, "topologySourceTag": {"type": "string", "description": "The tag representing the topological state. This could be 'DISCOVERED', for example."}, "localTag": {"type": "string", "description": "The actual tag of the originating network element."}, "localTagFormat": {"type": "string", "description": "The format of the local adjacency tag."}, "adjacencyType": {"type": "string", "description": "This field delimits the adjacency type between two network elements (Ex: LIM, LINE, etc...)."}}}, "EquipmentIntentRequestAttributes": {"type": "object", "properties": {"equipment": {"items": {"$ref": "#/definitions/EquipmentIntentRequestEqp"}, "type": "array", "description": "The equipment associated with this intent (shelves, cards, pluggables, fans, etc)."}, "turnDownDateTime": {"type": "string", "description": "The expected date associated with decommissioning the equipment.", "format": "date-time"}, "turnUpDateTime": {"type": "string", "description": "For most users, a hard date as to when committed equipment should be deployed/installed.  For other customers, a soft/best guesstimate date for equipment deployment. If equipment arrives before this date, it will be provisioned immediately.", "format": "date-time"}, "planningProjectId": {"type": "string", "description": "The planning project identifier associated with this intent. This field is required for any commissioning actions that take place after equipment provisioning is complete (required for add/drop for example)."}, "equipmentGroups": {"items": {"$ref": "#/definitions/EquipmentIntentRequestEqpGrp"}, "type": "array", "description": "The groups of equipment (OTS, Mating, etc.). Not all equipment must participate in a group."}}}, "BgpAddPath": {"type": "object", "properties": {"capability": {"enum": ["send", "receive", "both"], "type": "string", "description": "The add-path capability towards the neighbor."}, "advertise": {"enum": ["all", "best2", "best3"], "type": "string", "description": "The number of paths to advertise to the neighbor. Applicable only when the capability is send or both."}}}, "ControlPlaneLine": {"type": "object", "properties": {"shelf": {"type": "string", "description": "Control Plane Line Shelf e.g. 11"}, "lineTerminationPoint": {"type": "string", "description": "Control Plane Line Termination Point (source endpoint). Should follow the format: ADJ-SH-SL-PRT (ADJ-11-1-5)"}, "id": {"type": "string", "description": "Control Plane Line Id e.g. 1101"}}}, "NamingRules": {"type": "object", "properties": {"total": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}}}, "PrefixList": {"type": "object", "properties": {"direction": {"enum": ["in", "out"], "type": "string", "description": "Prefix list direction to filter BGP advertisements."}, "name": {"type": "string", "description": "Prefix list name to filter BGP advertisements."}}}, "Termination": {"type": "object", "properties": {"connectionRulesInOwnLayer": {"items": {"$ref": "#/definitions/ConnectionRule"}, "type": "array"}}}, "ColorGroup": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color group"}, "colors": {"items": {"$ref": "#/definitions/ColorEntry"}, "type": "array"}, "name": {"type": "string", "description": "The name of the color group"}}}, "BgpAfiSafi": {"type": "object", "properties": {"grCapability": {"enum": ["enabled", "disabled"], "type": "string", "description": "GR capability"}, "name": {"enum": ["ipv4_unicast", "ipv4_labeled_unicast"], "type": "string", "description": "Supported afi-safi names."}, "nextHopSelf": {"description": "NextHopSelf configuration for the given neighbor afi, safi", "$ref": "#/definitions/NextHopSelf"}, "addPath": {"description": "The add-path configuration for the neighbor.", "$ref": "#/definitions/BgpAddPath"}, "activated": {"default": false, "type": "boolean", "description": "true if activated otherwise false"}, "rrEnabled": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}, "prefixList": {"description": "prefix-list name and direction", "$ref": "#/definitions/PrefixList"}, "orf": {"description": "ORF type and direction", "$ref": "#/definitions/Orf"}, "routeMap": {"items": {"$ref": "#/definitions/BgpRouteMap"}, "type": "array"}}}, "ResiliencyTopologyPackage": {"type": "object", "properties": {"switchTpeId": {"type": "string", "description": "Switch CTP ID."}, "resilientFreId": {"type": "string", "description": "Resilient FRE ID in case of I-OPS."}}}, "EquipmentIntentResponseArray": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/EquipmentIntentResponseData"}, "type": "array", "description": "An array of equipment intent response data objects."}}}, "RouteConstraints": {"type": "object", "properties": {"maxInCpGroup": {"type": "string", "description": "Maximum number of routes that can be present in a control plane group. Could be a number, or could be a number evident n the model i.e. inverseMux."}, "signalPattern": {"enum": ["adjacent"], "type": "string", "description": "If photonic route type, specifies the frequency or wavelength pattern to choose for the routes."}, "numberOfRoutes": {"type": "string", "description": "Number of routes defined by the configuration. For example, a PRIME/MEMBER configuration.  Could be a number, or could be a number evident from the model i.e. inverseMux. Generally, should only be specified if the configuration implies more than 1 route."}, "sizeOfEachRoute": {"type": "string", "description": "For each route, what is the required size of each route. For example, '200G' in the case of 400G WLAi OTR 2xOTSi."}, "routeCharacteristic": {"enum": ["coRouted", "maximumDiversity"], "type": "string", "description": "If multiple routes need to be defined, what's the relationship between the routes."}, "type": {"enum": ["photonic"], "type": "string", "description": "The route type i.e. photonic. In the future, other types may be supported."}}}, "BgpPackage": {"type": "object", "properties": {"peerFsmEstablishedTransitions": {"type": "string", "description": "Peer Fsm established transitions."}, "peerBgpIdentifier": {"type": "string", "description": "BGP identifier of the peer. Learned only in OPEN CONFIRM and ESTABLISHED states."}, "peerNegotiatedBGPVersion": {"type": "string", "description": "Learned only in OPENCONFIRM and ESTABLISHED states."}, "msgs": {"description": "This package stores BGP message related information.", "$ref": "#/definitions/BgpMsgs"}, "bfd": {"description": "Holds BFD attributes for BGP TPE endpoint", "$ref": "#/definitions/BgpBfd"}, "peerAs": {"type": "integer", "description": "Autonomous System number configured for the peer.", "format": "int64"}, "afiSafi": {"items": {"$ref": "#/definitions/BgpAfiSafi"}, "type": "array"}, "rr": {"description": "This package stores BGP route reflector related information.", "$ref": "#/definitions/BgpRr"}, "peerFsmEstablishedTime": {"type": "string", "description": "Peer Fsm established time in seconds."}, "timers": {"description": "This package stores BGP time related information.", "$ref": "#/definitions/BgpTimers"}, "peerState": {"enum": ["idle", "connect", "active", "opensent", "openconfirm", "established"], "type": "string", "description": "BGP states"}, "peerType": {"enum": ["internal", "external"], "type": "string", "description": "internal/external depending on peerAs number is same as local or different."}, "security": {"description": "Security related config.", "$ref": "#/definitions/BgpSecurity"}, "transport": {"description": "This package stores BGP transport related information.", "$ref": "#/definitions/BgpTransport"}}}, "UpdatedExpectationsResponse": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/UpdatedExpectation"}, "type": "array", "description": "An array of updated expectations"}}}, "AdditionalAttributes": {"type": "object"}, "Capacity": {"type": "object", "properties": {"layer": {"enum": ["ETHERNET", "OTU1", "OTU1e", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTUg", "OTSi", "OMS", "OS", "PHY", "OTS", "FC", "FICON", "ODU", "ODU0", "ODU1", "ODU1e", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "ODUg", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate"}, "capacity": {"type": "integer", "description": "Number of potential client instances or usage instances", "format": "int32"}, "capacityCalculationRule": {"enum": ["minClientFminsMaxClientFmaxs", "sumClientsTcs"], "type": "string", "description": "Logic required from MCP to perform calculation"}, "source": {"enum": ["deviceAdapter", "routing", "inventory", "provisioning"], "type": "string", "description": "Components provided the capacity data"}, "capacitySize": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacitySize"}, "maxLimit": {"type": "integer", "description": "Maximum potential client instances", "format": "int32"}, "capacityClass": {"enum": ["discrete", "continuous"], "type": "string", "description": "Discrete \u2013 b/w space is treated as a list of discrete values; this is default. Continuous \u2013 b/w space is treated as continuous segment, in the range of low/upper."}}}, "Note": {"type": "object", "properties": {"noteMsg": {"type": "string", "description": "The message left on the note left by the user"}, "lastUpdatedBy": {"type": "string", "description": "The name of the user that last edited the note"}, "lastUpdatedTime": {"type": "string", "description": "The time the note was last updated"}}}, "EquipmentIntentEditRequestData": {"type": "object", "properties": {"attributes": {"description": "Attributes of an equipment intent.", "$ref": "#/definitions/EquipmentIntentEditRequestAttributes"}}}, "MappingInteractionRule": {"type": "object", "properties": {"segmentBoundaryRule": {"enum": ["mustNotOverlap"], "type": "string", "description": "The default is mustNotOverlap."}}}, "CapacitySize": {"type": "object", "properties": {"pattern": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacityPattern"}, "unit": {"type": "string", "description": "unit for size string value"}, "size": {"items": {"type": "string"}, "type": "array", "description": "Capacity size to be interpreted with CapacityPattern"}}}, "BgpRouteMap": {"type": "object", "properties": {"direction": {"enum": ["in", "out"], "type": "string", "description": "The route-map direction."}, "name": {"type": "string", "description": "The route-map name."}}}, "LayerTermination": {"type": "object", "properties": {"adminWt": {"type": "number", "description": "Administrative weight which specifies the level of importance given to the OSRP link", "format": "double"}, "resiliencyTopologyPackage": {"description": "This package stores topology related info.", "$ref": "#/definitions/ResiliencyTopologyPackage"}, "ttiPackage": {"description": "This package stores Tti information.", "$ref": "#/definitions/TtiPackage"}, "powerPackage": {"description": "This package stores power related information.", "$ref": "#/definitions/PowerPackage"}, "structureType": {"enum": ["dual_port", "dual_port_client_mapping", "exposed_lone_cp", "lone_adapter", "full_layer_optional_exposed_cp", "full_layer_optional_exposed_cp_and_tcp", "full_layer_fixed", "exposed_tcp", "concatenating_adapter", "concatenatable_exposed_tcp", "layer_termination_structure_type_unknown", "concatenatable_fixed", "concatenating_exposed_tcp", "exposed_TCP_and_CP"], "type": "string", "description": "Identifies the internal structure of the layer termination."}, "mplsPackage": {"description": "This package stores MPLS tunnel information.", "$ref": "#/definitions/MplsPackage"}, "layerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide further (explicit) information for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the explicit value (e.g. OTUC2 if layerRate is OTUCn). For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "boundaries": {"items": {"type": "string"}, "type": "array", "description": "Array of strings to track boundaries of Layer Termination"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of the layer termination."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackage"}, "cfmPackages": {"items": {"$ref": "#/definitions/TpeCfmPackage"}, "type": "array", "description": "Holds data related to CFM services configured on an Ethernet service"}, "terminationState": {"enum": ["layer_termination_cannot_terminate", "layer_termination_not_terminated", "terminated_server_to_client_flow", "terminated_client_to_server_flow", "terminated_bidirectional", "layer_termination_permanently_terminated", "termination_state_unknown"], "type": "string", "description": "Whether and how this LayerTermination is terminated."}, "signalIndex": {"description": "Attribute representing a signal index (e.g. channel information, wavelength, etc).", "$ref": "#/definitions/SignalIndex"}, "controlPlanePackage": {"$ref": "#/definitions/ControlPlanePackage"}, "latency": {"type": "number", "description": "Indicates the delay in microseconds.", "format": "double"}, "layerProtocol": {"description": "A LayerProtocol instance is used for controlling termination and monitoring functionality. Also, it is used for controlling the adaptation (i.e. encapsulation and/or multiplexing of client signal), tandem connection monitoring, traffic conditioning and/or shaping functionality at an intermediate point along a connection.", "$ref": "#/definitions/LayerProtocol"}, "adjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackage"}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU1e", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTUg", "OTSi", "OMS", "OS", "PHY", "OTS", "FC", "FICON", "ODU", "ODU0", "ODU1", "ODU1e", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "ODUg", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate"}, "trafficProfiles": {"items": {"$ref": "#/definitions/TrafficProfile"}, "type": "array", "description": "Traffic profile characteristics used to data-drive provisioning workflows."}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/BgpPackage"}, "active": {"default": false, "type": "boolean", "description": "Whether or not an inactive layer appears to be absent from the layer stack."}, "nativeName": {"type": "string", "description": "The name of the TPE that is native to the network element."}, "g8032Package": {"description": "This package stores information about the G8032 ring", "$ref": "#/definitions/G8032Package"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributes"}, "serviceLabel": {"type": "string", "description": "The user-defined label/service identifier"}, "manualAdjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackage"}, "operationalState": {"enum": ["up", "down", "link_flapping", "abnormal"], "type": "string", "description": "The operational (actual) state of the layer termination."}, "nativeLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU1e", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTUg", "OTSi", "OMS", "OS", "PHY", "OTS", "FC", "FICON", "ODU", "ODU0", "ODU1", "ODU1e", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "ODUg", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate"}, "bundleIds": {"items": {"type": "string"}, "type": "array", "description": "List of up to 20 protection bundles to which the OSRP link belongs"}}}, "LayeredAttribute": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributes"}, "layer": {"enum": ["ETHERNET", "OTU1", "OTU1e", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTUg", "OTSi", "OMS", "OS", "PHY", "OTS", "FC", "FICON", "ODU", "ODU0", "ODU1", "ODU1e", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "ODUg", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate"}, "loopbackPackage": {"description": "This package stores loopback information", "$ref": "#/definitions/LoopbackPackage"}}}, "LoopbackPackage": {"type": "object", "properties": {"loopbackWavelength": {"type": "string", "description": "Wavelength of the loopback test; taken directly from the value of the TL1 LPBKWVL field"}, "loopbackStatus": {"type": "string", "description": "Status of the test; taken directly from the value of the TL1 LPBKSTATUS field."}}}, "TtiAttribute": {"type": "object", "properties": {"dapi": {"type": "string", "description": "String to hold 'dapi' attribute"}, "operator": {"type": "string", "description": "String to hold 'operator' attribute"}, "sapi": {"type": "string", "description": "String to hold 'sapi' attribute"}}}, "MplsFbProtectedTunnel": {"type": "object", "properties": {"srcIp": {"type": "string", "description": "Source IP address of the tunnel protected by this FB tunnel"}, "destIp": {"type": "string", "description": "Destination IP address of the tunnel protected by this FB tunnel"}, "role": {"enum": ["ingress", "transit"], "type": "string", "description": "The role at this point of the MPLS tunnel protected by this FB tunnel"}, "name": {"type": "string", "description": "Name of the tunnel protected by this FB tunnel"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "MplsFrrLocalProtection": {"type": "object", "properties": {"protectionFbName": {"type": "string", "description": "Protection FB tunnel name"}, "protectionAvailable": {"default": false, "type": "boolean", "description": "True when the protection is available on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}}}, "SignalIndex": {"type": "object", "properties": {"index": {"type": "string", "description": "The signal index. Indicates a time slot."}, "wavelengthMax": {"type": "string", "description": "The maximum signal wavelength."}, "phy_index": {"type": "string", "description": "The physical index. Indicates a time slot."}, "width": {"type": "string", "description": "The signal width."}, "maxFreq": {"type": "string", "description": "The maximum signal frequency."}, "odu4_index": {"type": "string", "description": "The odu4 index. Indicates a time slot or tributary port number."}, "oduCn_index": {"type": "string", "description": "The oduCn index. Indicates a time slot or tributary port number."}, "channels": {"items": {"type": "string"}, "type": "array", "description": "Indicates the list of discrete channels utilized e.g. tributary slots on broadband cards. Plans are to utilize this generically for any list of discrete list of signals."}, "eth_index": {"type": "string", "description": "The ethernet index. Indicates a time slot or tributary port number."}, "odu3_index": {"type": "string", "description": "The odu3 index. Indicates a time slot or tributary port number."}, "odu2_index": {"type": "string", "description": "The odu2 index. Indicates a time slot or tributary port number."}, "frequency": {"type": "string", "description": "The central signal frequency."}, "minFreq": {"type": "string", "description": "The minimum signal frequency."}, "ots_index": {"type": "string", "description": "The ots index. Indicates a time slot."}, "wavelength": {"type": "string", "description": "The signal wavelength (nm)."}, "mappingTable": {"items": {"$ref": "#/definitions/MappingTableEntry"}, "type": "array"}, "indexes": {"description": "Map of index attributes to represent more than one indexes per LT. Plan is to remove above odu2_index, odu4_index & oduCn_index signal attributes in future and use this one", "$ref": "#/definitions/Indexes"}, "wavelengthMin": {"type": "string", "description": "The minimum signal wavelength."}}}, "Y1731Attributes": {"type": "object", "properties": {"count": {"type": "integer", "description": "The count of the message being transmitted", "format": "int32"}, "remoteMepMacAddress": {"type": "string", "description": "The MAC address of the remote MEP"}, "frameSize": {"type": "string", "description": "The frame size of the messages being transmitted (numeric), if applicable to this measurement"}, "interval": {"type": "string", "description": "The interval between transmitting each message (e.g.: 1)"}, "enabled": {"default": false, "type": "boolean", "description": "True when the particular measurement is enabled"}, "intervalUnit": {"type": "string", "description": "The unit of interval between transmitting each message (e.g.: seconds)"}, "priority": {"type": "string", "description": "The priority of the messages being transmitted (0-7)"}, "repeatDelay": {"type": "integer", "description": "The repeat delay of the message being transmitted", "format": "int32"}, "remoteMepId": {"type": "string", "description": "The ID of the remote MEP"}, "iterate": {"type": "integer", "description": "The iteration number of the message being transmitted", "format": "int32"}}}, "NameToCapacityMappingRules": {"type": "object", "properties": {"capacityUnit": {"type": "string", "description": "Unit of the capacity."}, "mapperRule": {"items": {"$ref": "#/definitions/MapperRule"}, "type": "array"}, "mapping": {"enum": ["FIXED", "FLEXIBLE", "FLEXIBLE_GROUPED", "ALL"], "type": "string", "description": "Identifies namespace to capacity mapping."}, "noOfUnits": {"type": "integer", "description": "Number 1-80 in switching and broadband case", "format": "int32"}, "namingUnit": {"type": "string", "description": "Unit of namespace."}, "relationType": {"enum": ["ONE_TO_ONE", "ONE_TO_MANY"], "type": "string", "description": "The FRE resource type"}}}, "MepEntry": {"type": "object", "properties": {"mepId": {"type": "string", "description": "The ID of the MEP"}, "mepType": {"enum": ["UP", "DOWN"], "type": "string", "description": "The type of the MEP, up or down"}, "ccmPriority": {"type": "string", "description": "Priority of the CC messages (0-7)"}, "ccmTransmitState": {"enum": ["ON", "OFF"], "type": "string", "description": "The transmission state of CCM (on/off)"}, "mepAdminState": {"enum": ["ENABLED", "DISABLED"], "type": "string", "description": "The administrative state (enabled/disabled) of the MEP"}, "mepMacAddress": {"type": "string", "description": "The MAC address of the MEP"}, "dmm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731Attributes"}, "vlanId": {"type": "string", "description": "The VLAN ID of the MEP"}, "slm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731Attributes"}, "lmm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731Attributes"}, "remoteMepId": {"type": "string", "description": "The ID of the Remote MEP"}}}, "EquipmentIntentResponseAttributes": {"type": "object", "properties": {"request": {"description": "Data for one or more pieces of equipment (circuit packs and pluggables) to be deployed in network.", "$ref": "#/definitions/EquipmentIntentRequestData"}, "creationTime": {"type": "string", "description": "The date that this intent was created.", "format": "date-time"}}}, "LayerProtocol": {"type": "object", "properties": {"termination": {"description": "The specification of the layer protocol termination (including framing, modulation etc). For example the specification of the function that takes a MAC frame and extracts the content (removing the MAC address in the process).", "$ref": "#/definitions/Termination"}, "adaptationPools": {"items": {"$ref": "#/definitions/AdaptationPool"}, "type": "array"}, "connectionPoint": {"description": "A 'reference point' that consists of a pair of co-located 'unidirectional connection points' and therefore represents the binding of two paired bidirectional 'connections'.", "$ref": "#/definitions/ConnectionPoint"}, "layeredAttributes": {"items": {"$ref": "#/definitions/LayeredAttribute"}, "type": "array"}, "accessPoint": {"description": "A 'reference point' that consists of the pair of co-located 'unidirectional access points', and therefore represents the binding between the trail termination and adaptation functions. ", "$ref": "#/definitions/AccessPoint"}}}, "EquipmentIntentRequestEndPoint": {"type": "object", "properties": {"crsEdge": {"type": "string", "description": "Edge port on the Device"}, "turnUpDateTime": {"type": "string", "description": "The expected turn up date associated with endpoint adjacency.", "format": "date-time"}, "roadmLineName": {"type": "string", "description": "RoadmLineName"}, "controlPlaneNetworkConstructReference": {"$ref": "#/definitions/NetworkElementReference"}, "controlPlaneLinkUserLabel": {"type": "string", "description": "Control Plane Link label"}, "controlPlaneLines": {"items": {"$ref": "#/definitions/ControlPlaneLine"}, "type": "array", "description": "Control Plane Lines associated with this endpoint"}, "turnDownDateTime": {"type": "string", "description": "The expected turn down date associated with endpoint adjacency.", "format": "date-time"}, "layerTerminations": {"items": {"$ref": "#/definitions/LayerTermination"}, "type": "array", "description": "Transmission parameters to be provisioned on TPE layer terminations"}, "port": {"type": "string", "description": "The port value associated with this endpoint."}}}, "NetworkElementReference": {"type": "object", "properties": {"value": {"type": "string", "description": "The value of the network element unique identifier associated with given key"}, "key": {"type": "string", "description": "The key of the network element unique identifier - name, planningId"}}}, "BgpRr": {"type": "object", "properties": {"peerRole": {"enum": ["client", "routeReflector"], "type": "string", "description": "Role of the peer"}, "role": {"enum": ["client", "routeReflector"], "type": "string", "description": "self role"}, "peerClusterId": {"type": "string", "description": "The cluster-id to which peer belongs if it is configured as RR client."}}}, "BgpTimers": {"type": "object", "properties": {"peerNegotiatedKeepAliveTime": {"type": "string", "description": "Peer negotiation keep alive time in seconds"}, "peerMinRouteAdvertisementInterval": {"type": "string", "description": "Peer minimum advertised intervel in seconds"}, "peerConfiguredHoldTime": {"type": "string", "description": "Peer configured hold time in seconds"}, "peerConnectRetryInterval": {"type": "string", "description": "Peer connection retry intervel in seconds."}, "peerConfiguredKeepAliveTime": {"type": "string", "description": "Peer configured keep alive time in seconds"}, "peerMinASOriginationInterval": {"type": "string", "description": "Peer minimum AS origination intervel in seconds"}, "peerNegotiatedHoldTime": {"type": "string", "description": "Peer negotiation hold time in seconds"}}}, "BgpMsgs": {"type": "object", "properties": {"peerInTotalMessages": {"type": "string", "description": "Total Number of peer messages"}, "peerInUpdateElapsedTime": {"type": "string", "description": "Peer updated elapsed time in seconds"}, "peerOutUpdates": {"type": "string", "description": "Number of peer out updates"}, "peerInUpdates": {"type": "string", "description": "Number of peer in updates"}, "lastError": {"description": "The last error code and subcode seen by this peer on this connection.", "$ref": "#/definitions/PeerError"}, "peerOutTotalMessages": {"type": "string", "description": "Total number of peer out messages"}}}, "EquipmentIntentRequestEqpGrp": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributes"}, "turnUpDateTime": {"type": "string", "description": "The expected date associated with equipment group deployment.", "format": "date-time"}, "eqpGrpId": {"type": "string", "description": "Unique identifier associated with this equipment group."}, "name": {"type": "string", "description": "The name of this equipment group."}, "equipmentGroupOperation": {"enum": ["ADD", "REMOVE", "UPDATE"], "type": "string", "description": "Operation to be performed on the equipment group"}, "subEquipmentGroupReferences": {"items": {"type": "string"}, "type": "array", "description": "In some cases equipment groups can reference other equipment groups, this is done by adding the ids of these sub-groups to this array."}, "networkElement": {"description": "Data associated with a particular network element.", "$ref": "#/definitions/NetworkElement"}, "equipmentReferences": {"items": {"type": "string"}, "type": "array", "description": "An array of equipment ids for equipment associated with this group."}, "turnDownDateTime": {"type": "string", "description": "The expected date associated with decommissioning the equipment group.", "format": "date-time"}, "type": {"enum": ["OTS", "SLOTSEQUENCE", "OTNBBPAIRING", "REGEN"], "type": "string", "description": "The type of the equipment group."}}}, "EquipmentIntentEditRequestEqp": {"type": "object", "properties": {"customerCode": {"type": "string", "description": "Customer Code"}, "eqpId": {"type": "string", "description": "Unique identifier associated with this equipment."}}}, "PhotonicSpectrumPackage": {"type": "object", "properties": {"minFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the previous NMC."}, "signalBandWidth10DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 10 dBm less than peak power."}, "maxFreqDeadBand": {"type": "string", "description": "Upper dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "targetMinFreq": {"type": "string", "description": "Allows the automatic adjustment of the MINFREQ when any associated NMCTP are deleted. Default is MINFREQ (no target lower frequency)."}, "signalBandWidth3DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 3 dBm less than peak power."}, "minFreqDeadBand": {"type": "string", "description": "Lower dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "maxFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the next NMC."}, "frequency": {"type": "string", "description": "The central signal frequency."}, "freqResolution": {"type": "string", "description": "Indicates the recurring frequency step that is allowed to be configured on the transponder."}, "maxFreq": {"type": "string", "description": "The maximum signal frequency."}, "targetMaxFreq": {"type": "string", "description": "Allows the automatic adjustment of the MAXFREQ when any associated NMCTP are deleted. Default is MAXFREQ (no target upper frequency)."}, "wavelength": {"type": "string", "description": "The central signal wavelength."}, "wavelengthGrid ": {"type": "string", "description": "A hexadecimal number representing the vector of wavelengths that can be used by this SNC. Each bit set within the number indicates which wavelength is currently configured"}, "minFreq": {"type": "string", "description": "The minimum signal frequency."}}}, "TrafficProfile": {"type": "object", "properties": {"trafficParams": {"items": {"$ref": "#/definitions/TrafficProfileParam"}, "type": "array", "description": "List of traffic parameters that must be used as input in the use-case."}, "routeConstraints": {"description": "Defines the traffic profile route characteristics used to data-drive provisioning workflows.", "$ref": "#/definitions/RouteConstraints"}, "inputParams": {"items": {"$ref": "#/definitions/TrafficProfileParam"}, "type": "array", "description": "List of input parameters to be matched to derive the correct trafficProfile for the use-case."}, "outputs": {"items": {"$ref": "#/definitions/TrafficProfileParam"}, "type": "array", "description": "List of outputs that are expected in the use-case."}}}, "BgpSecurity": {"type": "object", "properties": {"md5Authentication": {"enum": ["enabled", "disabled"], "type": "string", "description": "If MD5 authentication is enabled or disabled for the neighbor."}}}, "BgpBfd": {"type": "object", "properties": {"transmitInterval": {"type": "string", "description": "The interval between transmitting BFD messages"}, "configured": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "mhop": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "receiveInterval": {"type": "string", "description": "The interval between receiving BFD messages"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of BFD for this endpoint"}, "role": {"enum": ["passive", "active", "any"], "type": "string", "description": "The role of BFD for this endpoint"}, "profileName": {"type": "string", "description": "The profile name associated with this set of BFD attributes"}, "operationalState": {"enum": ["up", "down"], "type": "string", "description": "The operational state of BFD for this endpoint"}}}, "EquipmentIntentResponse": {"type": "object", "properties": {"data": {"$ref": "#/definitions/EquipmentIntentResponseData"}}}, "CapacityPattern": {"type": "object", "properties": {"type": {"enum": ["LIST", "RANGE", "POOL", "PERCENTAGE"], "type": "string", "description": "Identifies Pattern type"}, "format": {"type": "string", "description": "An optional regex expression or format string describing how to parse the size string in case of multiple values, e.g. CIR:EIR"}}}, "EquipmentIntentEditRequest": {"type": "object", "properties": {"data": {"description": "Data for one or more pieces of equipment (circuit packs and pluggables) to be deployed in network.", "$ref": "#/definitions/EquipmentIntentEditRequestData"}}}, "UpdatedAttribute": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the attribute"}, "value": {"type": "string", "description": "The value of the attribute"}}}, "ConnectionRule": {"type": "object", "properties": {"immediateClientPotential": {"type": "string", "description": "If describing connectionRulesInAdaptationLayer: names of TPESpec of immediate client TPE. If describing connectionRulesInOwnLayer: null (not relevant). If describing mustConnectInternally: null (not relevant)."}, "immediateDualPortPeerPotential": {"type": "string", "description": "If describing connectionRulesInAdaptationLayer: names of TPESpec of dual port peer TPE. If describing connectionRulesInOwnLayer: null (not relevant). If describing mustConnectInternally: null (not relevant)."}, "targetLayer": {"enum": ["ETHERNET", "OTU1", "OTU1e", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTUg", "OTSi", "OMS", "OS", "PHY", "OTS", "FC", "FICON", "ODU", "ODU0", "ODU1", "ODU1e", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "ODUg", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate"}, "rule": {"enum": ["mustConnectInternally", "clientExternalFGRule", "connectsExternally", "toServerUsingClientExternalFGRule", "externalFGRule", "externalFGRuleViaImmediateClientPotential", "toDualPortPeerUsingClientExternalFGRule", "transitionalAtCreationTime"], "type": "string", "description": "toServerUsingClientExternalFGRule matchers server's clientExternalFGRule"}}}, "MplsFb": {"type": "object", "properties": {"excludeIp": {"type": "string", "description": "IP address excluded from the FB tunnel path"}, "protectedTunnels": {"items": {"$ref": "#/definitions/MplsFbProtectedTunnel"}, "type": "array"}, "frrAutoCreated": {"default": false, "type": "boolean", "description": "The flag indicating whether the FB tunnel is auto created by FRR"}, "protectedInterface": {"type": "string", "description": "Name of the interface being protected by the FB tunnel"}}}, "PowerPackage": {"type": "object", "properties": {"txMaxPower": {"type": "string", "description": "Maximum transmitter power level (dBm)."}, "rxActualPower": {"type": "string", "description": "Current receiver power (dBm)."}, "rxMinPower": {"type": "string", "description": "Minimum receiver power level (dBm)."}, "txActualPower": {"type": "string", "description": "Current transmitter power (dBm)."}, "txMinPower": {"type": "string", "description": "Minimum transmitter power level (dBm)."}, "rxMaxPower": {"type": "string", "description": "Maximum receiver power level (dBm)."}}}, "Adapter": {"type": "object", "properties": {"mirroringBandwidthRules": {"enum": ["OneToOne", "none", "onGrid2Flex50", "SignalIndexMapper"], "type": "string", "description": "Mirroring Bandwidth rule must follow. Can point to a specific algorithm to be executed."}, "mirroringNamingRules": {"enum": ["OneToOne", "none", "onGrid2Flex", "SignalIndexMapper"], "type": "string", "description": "Mirroring Naming rule must follow. Can point to a specific algorithm to be executed."}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRule"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributes"}, "name": {"type": "string", "description": "Name of the Adapter. Unique in the scope of this TPE."}, "connectionRulesInAdaptationLayer": {"items": {"$ref": "#/definitions/ConnectionRule"}, "type": "array", "description": "Directions of how to instantiate client TPE(s) for this adapter, including indirect (client over client) client TPE instantiation."}, "poolAdapterType": {"type": "string", "description": "Type of the Adapter. Unique in the scope of this TPE."}, "namingRules": {"items": {"$ref": "#/definitions/NamingRules"}, "type": "array", "description": "Identifies the namespace for building the name of TPE"}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackage"}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "potentialAdapterCapacities": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array", "description": "Total potential capacity of this Adapter."}, "mappingInteractionRules": {"items": {"$ref": "#/definitions/MappingInteractionRule"}, "type": "array", "description": "The specification of the interaction between the support for different client layer protocols signals."}, "eFreTerminationState": {"enum": ["hapFre_terminated", "hapFre_not_terminated"], "type": "string", "description": "Values to handle TPEs that have multiple poolAdapters, especially multiple poolAdapters adapting to the same layer rate"}, "nameToCapacityMappingRules": {"items": {"$ref": "#/definitions/NameToCapacityMappingRules"}, "type": "array"}, "adaptsToLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU1e", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTUg", "OTSi", "OMS", "OS", "PHY", "OTS", "FC", "FICON", "ODU", "ODU0", "ODU1", "ODU1e", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "ODUg", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate"}, "cardinality": {"type": "string", "description": "Number of possible potential TPEs. Can be a numeric (eg '1', '96', '1000', ...) or can be categorical (eg 'indirect')."}, "continuousAdapterRulesPackage": {"description": "This package stores various rules to be considered when instantiating a new TPE utilizing continuous b/w.", "$ref": "#/definitions/ContinuousAdapterRulesPackage"}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide further (explicit) information for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the explicit value (e.g. OTUC2 if layerRate is OTUCn). For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "totalCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}}}, "LinkAttributes": {"type": "object", "properties": {"userLabel": {"type": "string", "description": "The user label (not necessarily unique) of the topology to be created."}, "note": {"$ref": "#/definitions/Note"}, "description": {"type": "string", "description": "Short description of the topology to be created."}, "tags": {"items": {"type": "string"}, "type": "array", "description": "Reference to 3rd Party Network involved in this topology, can be re-used for other purposes in future."}}}, "ConnectionPoint": {"type": "object", "properties": {"mirroringBandwidthRules": {"enum": ["OneToOne", "none", "onGrid2Flex50", "SignalIndexMapper"], "type": "string", "description": "Mirroring Bandwidth rule must follow. Can point to a specific algorithm to be executed."}, "mirroringNamingRules": {"enum": ["OneToOne", "none", "onGrid2Flex", "SignalIndexMapper"], "type": "string", "description": "Mirroring Naming rule must follow. Can point to a specific algorithm to be executed."}, "dynamicOwningPoolAdapterFgiRules": {"type": "string", "description": "Owning Pool Adapter where Fgi rules requires to be dynamically propagated. Unique in the scope of this TPE"}, "namingRules": {"items": {"$ref": "#/definitions/NamingRules"}, "type": "array", "description": "Identifies the namespace for building the name of TPE"}, "owningPoolAdapterType": {"type": "string", "description": "Type of the Owning Pool Adapter. Unique in the scope of this TPE"}, "totalCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "usedCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}}}, "ContinuousAdapterRulesPackage": {"type": "object", "properties": {"upperBoundaryRule": {"enum": ["mustSnapTo6_25GHzGrid_0_768", "mustSnapTo37_5GHzGrid_0_96", "snapTo6_25GHzGrid", "snapTo50GHzGrid", "snapTo100GHzGrid", "snapTo75GHzGrid"], "type": "string", "description": "Rule that the boundary of the range must follow. Can point to a specific algorithm to be executed."}, "centerFrequencyRule": {"enum": ["transponderResolution"], "type": "string", "description": "Rule that the centerFrequency of the range must follow. Can point to a specific algorithm to be executed."}, "segmentationRule": {"enum": ["oneSegementInGroup"], "type": "string", "description": "Whether the segment can be fragmented."}, "lowerBoundaryRule": {"enum": ["mustSnapTo6_25GHzGrid_0_768", "mustSnapTo37_5GHzGrid_0_96", "snapTo6_25GHzGrid", "snapTo50GHzGrid", "snapTo100GHzGrid", "snapTo75GHzGrid"], "type": "string", "description": "Rule that the boundary of the range must follow. Can point to a specific algorithm to be executed."}, "widthRule": {"enum": ["MEDIA_CHANNEL_WIDTH_RULE", "NMC_WIDTH_RULE"], "type": "string", "description": "How wide the range can be. Can point to a specific algorithm to be executed."}}}, "EquipmentIntentRequestData": {"type": "object", "properties": {"attributes": {"description": "Attributes of an equipment intent.", "$ref": "#/definitions/EquipmentIntentRequestAttributes"}}}, "MplsFrrProtectionRouteHop": {"type": "object", "properties": {"ip": {"type": "string", "description": "IP interface address or node loopback IP address of the current hop"}, "bwProtected": {"default": false, "type": "boolean", "description": "True when the bandwidth is protected on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}, "protectionType": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "The FB protection type on this hop for this unidirectional tunnel"}}}, "AccessPoint": {"type": "object", "properties": {"mirroringBandwidthRules": {"enum": ["OneToOne", "none", "onGrid2Flex50", "SignalIndexMapper"], "type": "string", "description": "Mirroring Bandwidth rule must follow. Can point to a specific algorithm to be executed."}, "mirroringNamingRules": {"enum": ["OneToOne", "none", "onGrid2Flex", "SignalIndexMapper"], "type": "string", "description": "Mirroring Naming rule must follow. Can point to a specific algorithm to be executed."}, "clientTpeRulesInOwnLayer": {"items": {"$ref": "#/definitions/ConnectionRule"}, "type": "array", "description": "Directions of how to instantiate client TPE(s) for this access point, including indirect (client over client) client TPE instantiation."}, "namingRules": {"items": {"$ref": "#/definitions/NamingRules"}, "type": "array", "description": "Identifies the namespace for building the name of TPE"}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "adaptsToLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU1e", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTUg", "OTSi", "OMS", "OS", "PHY", "OTS", "FC", "FICON", "ODU", "ODU0", "ODU1", "ODU1e", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "ODUg", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate"}, "cardinality": {"type": "string", "description": "Number of possible potential TPEs. Can be a numeric (eg '1', '96', '1000', ...) or can be categorical (eg 'indirect')."}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide further (explicit) information for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the explicit value (e.g. OTUC2 if layerRate is OTUCn). For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "totalCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}}}, "ColorEntry": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color"}, "name": {"type": "string", "description": "The name of the color"}}}, "G8032Package": {"type": "object", "properties": {"guardTime": {"type": "integer", "description": "guard time in millisecond.", "format": "int32"}, "operationalChannelBlock": {"default": false, "type": "boolean", "description": "True if the port is blocked, i.e portState == Blocked"}, "forceSwitch": {"default": false, "type": "boolean", "description": "a flag indicating whether the switching is forced or not."}, "portState": {"enum": ["disabled", "forwarding", "blocked", "unknown"], "type": "string", "description": "the state of the port"}, "portDirection": {"enum": ["east", "west"], "type": "string", "description": "the direction of the port."}, "ringId": {"type": "string", "description": "The logical ring ID"}, "ringMembers": {"type": "string", "description": "a comma separated list of virtual ring members."}, "rapsVid": {"type": "string", "description": "the R-APS VID of the ring"}, "portStatus": {"enum": ["ok", "down", "CCMFailure", "localForceSwitch", "remoteForceSwitch", "remoteSignalFailure", "unknown"], "type": "string", "description": "the status of the port"}, "holdOffTimeUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "waitToRestoreUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "rplOwner": {"default": false, "type": "boolean", "description": "True if the port is configured as RPL-owner."}, "waitToBlock": {"type": "integer", "description": "wait to block time in milliseconds. ", "format": "int32"}, "revertive": {"default": false, "type": "boolean", "description": "revertive"}, "ringState": {"enum": ["initializing", "ok", "adminDisabled", "operationalDisabled", "protecting", "recovering", "unknown"], "type": "string", "description": "the state of the ring"}, "logicalRingName": {"type": "string", "description": "The logical ring name"}, "ringType": {"enum": ["majorRing", "subRing"], "type": "string", "description": "the type of ring"}, "waitToRestore": {"type": "integer", "description": "wait to restore time in minute. ", "format": "int32"}, "virtualRingName": {"type": "string", "description": "the virtual ring name"}, "ringStatus": {"enum": ["ok", "localSignalFailure", "localForceSwitch", "remoteOtherPortSignalFailure", "remoteOtherPortForceSwitch", "provisioningMismatch", "notReceivingPDUS", "noRPLOwnerDetected", "unknown"], "type": "string", "description": "the status of the ring"}, "sharedPort": {"type": "string", "description": "sharedPort information for the sub-ring (ONLY for sub-ring endNode)"}, "guardTimeUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "subRingTermination": {"default": false, "type": "boolean", "description": "flag indicating whether the subring is terminating or not"}, "holdOffTime": {"type": "integer", "description": "hold off time in milliseconds", "format": "int32"}, "waitToBlockUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_geographic_redundancy.json b/tapi/resources/MCP_4.0.0_geographic_redundancy.json
deleted file mode 100644
index 763448a7211d7b08c79bb69a8409afbe9b72ca11..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_geographic_redundancy.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "2.4", "description": "Configuration and administration of geographically redundant sites", "title": "Geographic Redundancy"}, "paths": {"/geored/site/bootstrap": {"post": {"summary": "Post-installation config step.", "responses": {"200": {"description": "The site's state has been changed."}, "401": {"description": "Unauthorized"}, "400": {"description": "Your request was not understood."}}, "parameters": [{"schema": {"required": ["site_id", "site_state"], "type": "object", "properties": {"site_state": {"$ref": "#/definitions/site_state"}, "site_id": {"$ref": "#/definitions/site_id"}, "remote_sites": {"items": {"$ref": "#/definitions/remote_site"}, "type": "array"}}}, "required": true, "name": "body_params", "in": "body"}], "tags": ["bootstrap"]}}, "/geored/cluster/status": {"post": {"responses": {"200": {"description": "The site's state has been changed."}, "401": {"description": "Unauthorized"}, "400": {"description": "Your request was misconfigured or invalid."}}, "summary": "Change the status of a geo-redundant application cluster.", "description": "Primarily used by applications. It is DANGEROUS for users to post to this endpoint!", "parameters": [{"schema": {"required": ["cluster_name", "state_update"], "type": "object", "properties": {"cluster_name": {"$ref": "#/definitions/cluster_name"}, "state_update": {"$ref": "#/definitions/state_update"}}}, "required": true, "name": "body_params", "in": "body"}], "tags": ["cluster-status"]}, "get": {"summary": "Get the current status of a geo-redundant application cluster.", "responses": {"200": {"description": "Handshake data for cluster."}, "401": {"description": "Unauthorized"}}, "parameters": [{"description": "The name of a georedundant aware application, such as `galera` or `datomic`", "required": true, "type": "string", "name": "cluster_name", "in": "query"}], "tags": ["cluster-status"]}}, "/geored/cluster/remote-status": {"get": {"summary": "Get the current status of a geo-redundant application cluster on a remote site.", "responses": {"200": {"description": "Returns the handshake data for cluster on the named site."}, "401": {"description": "Unauthorized"}}, "parameters": [{"description": "The name of a georedundant aware application, such as `galera` or `datomic`", "required": true, "type": "string", "name": "cluster_name", "in": "query"}, {"description": "The name of the remote site where the query should be sent.", "required": true, "type": "string", "name": "site_id", "in": "query"}], "tags": ["cluster-remote-status"]}}, "/geored/site/sync-status": {"get": {"summary": "Monitor georedundant deployment health", "responses": {"200": {"description": "Health checked, response contains health details. The deployment may not be 'healthy' even if this check returns 200."}, "401": {"description": "Unauthorized"}, "400": {"description": "Your request was misconfigured or invalid."}}, "parameters": [{"description": "Whether or not to query remote site(s).", "type": "boolean", "name": "cascade", "in": "query"}], "tags": ["sync-status"]}}, "/geored/site/resync": {"post": {"summary": "Request a resync of application data, typically performed after a prolonged inter-site outage.", "responses": {"405": {"description": "Method not allowed (POST only)", "schema": {"$ref": "#/definitions/resyncRequestError"}}, "202": {"description": "The resync request has been accepted"}, "500": {"description": "Internal server error; request received and validated but could not be processed", "schema": {"$ref": "#/definitions/resyncRequestError"}}, "401": {"description": "Authorization failed"}, "400": {"description": "Request body failed validation", "schema": {"$ref": "#/definitions/resyncRequestError"}}}, "parameters": [{"schema": {"$ref": "#/definitions/resyncRequest"}, "required": true, "name": "body", "in": "body"}], "tags": ["resync"]}}, "/geored/site/remotes": {"post": {"summary": "Add a new remote site. The current version of this app only supports 1 configured remote.", "responses": {"201": {"description": "The new remote has been created."}, "401": {"description": "Unauthorized"}, "400": {"description": "Your request was misconfigured or invalid."}}, "parameters": [{"schema": {"$ref": "#/definitions/remote_site"}, "required": true, "name": "body_params", "in": "body"}], "tags": ["site-remotes"]}, "delete": {"summary": "Remove an existing remote site.", "responses": {"200": {"description": "The remote was deleted."}, "401": {"description": "Unauthorized"}, "400": {"description": "Your request was misconfigured or invalid."}}, "parameters": [{"description": "The ID of the configured remote site to remove.", "required": true, "type": "string", "name": "site_id", "in": "query"}], "tags": ["site-remotes"]}, "get": {"summary": "Get the current remote site configuration.", "responses": {"200": {"description": "Returns the list of currently configured remotes."}, "401": {"description": "Unauthorized"}, "400": {"description": "Your request was misconfigured or invalid."}}, "parameters": [], "tags": ["site-remotes"]}}, "/geored/site/status": {"post": {"responses": {"200": {"description": "The site's state has been changed."}, "401": {"description": "Unauthorized"}, "400": {"description": "Your request was not understood."}}, "summary": "Change the activity state of the geo-redundant site to ACTIVE, or change the IP address.", "description": "Perform a failover by changing the state of the site from STANDBY to ACTIVE; or, change the configured IP address of the site. The body of the request should include either the site state OR the site address. Typically these fields will not be changed together.", "parameters": [{"schema": {"type": "object", "properties": {"site_address": {"$ref": "#/definitions/site_address"}, "site_state": {"$ref": "#/definitions/site_state"}}}, "required": true, "name": "body_params", "in": "body"}], "tags": ["site-status"]}, "get": {"summary": "Get the current status of the geo-redundant site", "responses": {"200": {"description": "JSON description of current site's bootstrap status, georedundancy status, and site ID"}, "401": {"description": "Unauthorized"}}, "parameters": [], "tags": ["site-status"]}}}, "produces": ["application/json"], "basePath": "/", "tags": [{"name": "bootstrap", "description": "Configure the site parameters (site ID and ACTIVE / STANDBY state)"}, {"name": "site-status", "description": "Retrieve site status, perform failover (activate a standby site)"}, {"name": "site-remotes", "description": "Configure, query, and delete remote sites"}, {"name": "cluster-status", "description": "Configure and query application specific parameters for the local site"}, {"name": "cluster-remote-status", "description": "Query application specific parameters for the remote site"}, {"name": "resync", "description": "Request a resync of application data from the active site"}, {"name": "sync-status", "description": "Query application specific diagnostic information"}], "definitions": {"site_state": {"enum": ["ACTIVE", "STANDBY"], "type": "string", "description": "Allowed: \"ACTIVE\" or \"STANDBY\". Case insensitive."}, "resyncRequest": {"required": ["data"], "type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/resyncRequestData"}, "type": "array"}}, "example": {"data": {"attributes": {"sync-timestamp": "2018-05-10T15:00:00.00Z"}, "type": "resync", "id": "SiteA"}}}, "site_is_bootstrapped": {"type": "boolean", "description": "Whether or not this site has had its final installation/config step completed."}, "site_address": {"type": "string", "description": "Network address at which remote site can be reached."}, "remote_site": {"required": ["site_id", "site_state", "site_address"], "type": "object", "properties": {"site_address": {"$ref": "#/definitions/site_address"}, "site_state": {"$ref": "#/definitions/site_state"}, "site_id": {"$ref": "#/definitions/site_id"}}}, "site_id": {"pattern": "[a-zA-Z0-9_-]{3,}$", "type": "string", "description": "Each site should have unique string. Supports length>=3 strings of alphanumeric characters plus '_' and '-'."}, "resyncRequestData": {"required": ["id", "type", "attributes"], "type": "object", "properties": {"attributes": {"required": ["sync-timestamp"], "type": "object", "properties": {"sync-timestamp": {"type": "string", "description": "The timestamp declaring the starting point of data to sync from the specified site, in format 2018-05-10T15:00:00.00Z"}}}, "type": {"enum": ["resync"], "type": "string", "description": "Type of resync request"}, "id": {"type": "string", "description": "Site ID to sync data from"}}}, "cluster_name": {"pattern": "[a-zA-Z0-9_-]{3,}", "type": "string", "description": "The name of a georedundant aware application, such as `galera` or `datomic`"}, "state_update": {"additionalProperties": true, "type": "object", "properties": {}}, "resyncRequestError": {"type": "object", "description": "Errors that occurred", "properties": {"errors": {"items": {"type": "object", "properties": {"status": {"type": "string", "description": "The HTTP status code"}, "detail": {"type": "string", "description": "The detailed description of the error"}, "title": {"type": "string", "description": "The error title"}}}, "type": "array"}}}}, "swagger": "2.0", "consumes": ["application/json"]}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_global_config_service.json b/tapi/resources/MCP_4.0.0_global_config_service.json
deleted file mode 100644
index 230254870107f7b61777e95811a369a6b495031f..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_global_config_service.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0.0", "description": "The Global Config Service provides an API to store and interact with configuration values.\n\nConfiguration values are stored encrypted, and multiple values can be accessed at one time through the use of\nwildcarding.", "title": "Global Config Service"}, "paths": {"/v1/inheritable": {"post": {"responses": {"200": {"description": "Returns the specified configuration(s).", "schema": {"$ref": "#/definitions/Response"}}, "500": {"description": "Internal server error while processing the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}, "400": {"description": "Failed to parse or validate the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}}, "description": "Returns the configuration value specified by URL parameters.", "parameters": [{"$ref": "#/parameters/sortParam"}, {"schema": {"$ref": "#/definitions/CallbackRequest"}, "description": "The callbacks to add to the configurations.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["inheritable"], "summary": "Adds the given inheritable callbacks to the configuration specified.", "consumes": ["application/json"], "operationId": "AddInheritable"}, "delete": {"responses": {"200": {"description": "Inheritable callback successfully added.", "schema": {"$ref": "#/definitions/Response"}}, "500": {"description": "Internal server error while processing the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}, "400": {"description": "Failed to parse or validate the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}}, "parameters": [{"$ref": "#/parameters/sortParam"}, {"schema": {"$ref": "#/definitions/DeleteCallbackRequest"}, "description": "The callbacks to delete from the configurations.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["inheritable"], "summary": "Removes the given inheritable callbacks from the configuration specified and all applicable child configurations.", "consumes": ["application/json"], "operationId": "DeleteInheritable"}}, "/v1/callback": {"post": {"responses": {"200": {"description": "Returns the specified configuration(s).", "schema": {"$ref": "#/definitions/Response"}}, "500": {"description": "Internal server error while processing the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}, "400": {"description": "Failed to validate or parse the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}}, "parameters": [{"$ref": "#/parameters/sortParam"}, {"schema": {"$ref": "#/definitions/CallbackRequest"}, "description": "The callbacks to add to the configurations.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["callback"], "summary": "Adds the given callbacks to the configuration specified.", "consumes": ["application/json"], "operationId": "AddCallback"}, "delete": {"responses": {"200": {"description": "Configuration successfully created.", "schema": {"$ref": "#/definitions/Response"}}, "500": {"description": "Internal server error while processing the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}, "400": {"description": "Failed to validate the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}}, "parameters": [{"$ref": "#/parameters/sortParam"}, {"schema": {"$ref": "#/definitions/DeleteCallbackRequest"}, "description": "The configuration to be created.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["callback"], "summary": "Removes the given callbacks from the configuration specified", "consumes": ["application/json"], "operationId": "DeleteCallback"}}, "/v1/config": {"put": {"responses": {"200": {"description": "Configuration successfully created.", "schema": {"$ref": "#/definitions/Response"}}, "500": {"description": "Internal server error while processing the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}, "400": {"description": "Failed to validate the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}}, "parameters": [{"$ref": "#/parameters/sortParam"}, {"schema": {"$ref": "#/definitions/CreateRequest"}, "description": "The configurations to be created.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["config"], "summary": "Create or overwrite the configuration specified.", "consumes": ["application/json"], "operationId": "OverwriteValue"}, "delete": {"responses": {"200": {"description": "The configuration has been deleted."}, "500": {"description": "Internal server error while processing the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}, "400": {"description": "Failed to validate the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}}, "parameters": [{"$ref": "#/parameters/sortParam"}, {"schema": {"$ref": "#/definitions/DeleteRequest"}, "description": "The configurations to be deleted.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["config"], "summary": "Delete the configuration specified.", "consumes": ["application/json"], "operationId": "DeleteValue"}, "post": {"responses": {"200": {"description": "Configuration successfully created.", "schema": {"$ref": "#/definitions/Response"}}, "500": {"description": "Internal server error while processing the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}, "400": {"description": "Failed to validate the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}}, "parameters": [{"$ref": "#/parameters/sortParam"}, {"schema": {"$ref": "#/definitions/CreateRequest"}, "description": "The configurations to be created.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["config"], "summary": "Create the configuration specified.", "consumes": ["application/json"], "operationId": "CreateValue"}, "patch": {"responses": {"200": {"description": "Configuration successfully updated.", "schema": {"$ref": "#/definitions/Response"}}, "500": {"description": "Internal server error while processing the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}, "400": {"description": "Failed to validate the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}}, "parameters": [{"$ref": "#/parameters/sortParam"}, {"schema": {"$ref": "#/definitions/UpdateRequest"}, "description": "The configurations to be updated.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["config"], "summary": "Update the configuration specified.", "consumes": ["application/json"], "operationId": "UpdateValue"}, "get": {"responses": {"200": {"description": "Returns the specified configuration(s).", "schema": {"$ref": "#/definitions/Response"}}, "404": {"description": "Could not find the specified configuration.", "schema": {"$ref": "#/definitions/ErrorResponse"}}, "500": {"description": "Internal server error while processing the request.", "schema": {"$ref": "#/definitions/ErrorResponse"}}}, "description": "Returns the configuration value specified by URL parameters.", "parameters": [{"$ref": "#/parameters/applicationParam"}, {"$ref": "#/parameters/instanceParam"}, {"$ref": "#/parameters/partitionParam"}, {"$ref": "#/parameters/groupParam"}, {"$ref": "#/parameters/nameParam"}, {"$ref": "#/parameters/sortParam"}, {"$ref": "#/parameters/tagsParam"}, {"$ref": "#/parameters/callbackParam"}, {"$ref": "#/parameters/failoverParam"}, {"$ref": "#/parameters/passwordParam"}], "produces": ["application/json"], "tags": ["config"], "summary": "Returns the configuration value specified by URL parameters.", "consumes": ["application/json"], "operationId": "GetValue"}}}, "parameters": {"applicationParam": {"description": "The application or service to whom this configuration value belongs.\nCan be wildcarded.", "required": true, "type": "string", "name": "application", "in": "query"}, "nameParam": {"description": "The name of the configuration.\nCan be wildcarded.", "required": true, "type": "string", "name": "name", "in": "query"}, "groupParam": {"description": "Groupings of configurations within a configuration partition. Used to further sort and identify configurations.\nCan be wildcarded.", "items": {"type": "string"}, "required": false, "in": "query", "type": "array", "name": "group"}, "tagsParam": {"description": "Only include results that have the listed tags.", "items": {"type": "string"}, "required": false, "in": "query", "type": "array", "name": "tags"}, "failoverParam": {"description": "Used to stop the gcs from returning an instance agnostic configuration if available.  Defaults to false.", "required": false, "type": "string", "name": "nofailover", "in": "query"}, "partitionParam": {"description": "The partition to under which the configuration is found.\nCan be wildcarded.", "required": false, "type": "string", "name": "partition", "in": "query"}, "callbackParam": {"description": "Include configurations that have callbacks but have not been created. Defaults to false.", "required": false, "type": "string", "name": "callbacks", "in": "query"}, "sortParam": {"description": "Sorts the response objects by the field specified. If not every value is specified, the order of precedence goes service, instance, partition, group(s), name with the specified field(s) taking highest precedence.\n\nSimply including the name implies an Ascending sort.  Appending a \\'-\\' to the prefix signifies descending.", "items": {"type": "string"}, "required": false, "in": "query", "type": "array", "name": "sort"}, "passwordParam": {"description": "The optional password for accessing this configuration\nIf the password does not match the configurations password, it will return \\******.", "required": false, "type": "string", "name": "password", "in": "query"}, "instanceParam": {"description": "The instance identifier of the application. If not provided, the\ninstance will default to the instance agnostic identifier (\"-\").\nCan be wildcarded.", "required": false, "type": "string", "name": "instance", "in": "query"}}, "tags": [{"name": "config", "description": "Fetch, Create and Modify Configurations"}], "basePath": "/gcs/api", "produces": ["application/json"], "definitions": {"DeleteRequest": {"items": {"required": ["callbacks"], "type": "object", "properties": {"hard": {"type": "boolean", "description": "Indicates if the metadata should be deleted along with the value."}, "group": {"items": {"type": "string", "maxLength": 64}, "type": "array", "description": "Groupings of configurations within a configuration partition. Used to further sort and identify configurations."}, "name": {"type": "string", "description": "The name of the configuration.", "maxLength": 64}, "instance": {"type": "string", "description": "The instance identifier of the application.", "maxLength": 2}, "partition": {"type": "string", "description": "The partition to under which the configuration is found.", "maxLength": 64}, "application": {"type": "string", "description": "The application or service to whom this configuration value belongs.", "maxLength": 64}, "password": {"type": "string", "description": "The optional password for the configuration", "maxLength": 64}}}, "type": "array"}, "CallbackRequest": {"items": {"required": ["application", "name", "callbacks"], "type": "object", "properties": {"instance": {"type": "string", "description": "The instance identifier of the application. If not provided, the instance will default to the instance agnostic identifier (\"-\").", "maxLength": 2}, "group": {"items": {"type": "string", "maxLength": 64}, "type": "array", "description": "Groupings of configurations within a configuration partition. Used to further sort and identify configurations."}, "name": {"type": "string", "description": "The name of the configuration.", "maxLength": 64}, "callbacks": {"items": {"type": "string", "maxLength": 256}, "type": "array", "description": "A list of URLs specifying the callback location."}, "partition": {"type": "string", "description": "The partition to under which the configuration is found.", "maxLength": 64}, "application": {"type": "string", "description": "The application or service to whom this configuration value belongs.", "maxLength": 64}, "password": {"type": "string", "description": "The optional password for the configuration", "maxLength": 256}}}, "type": "array"}, "DeleteCallbackRequest": {"items": {"required": ["application", "name"], "type": "object", "properties": {"instance": {"type": "string", "description": "The instance identifier of the application. If not provided, the instance will default to the instance agnostic identifier (\"-\").", "maxLength": 2}, "group": {"items": {"type": "string", "maxLength": 64}, "type": "array", "description": "Groupings of configurations within a configuration partition. Used to further sort and identify configurations."}, "name": {"type": "string", "description": "The name of the configuration.", "maxLength": 64}, "callbacks": {"items": {"type": "string", "maxLength": 256}, "type": "array", "description": "A list of URLs specifying the callback location.  Leave blank to delete all callbacks"}, "partition": {"type": "string", "description": "The partition to under which the configuration is found.", "maxLength": 64}, "application": {"type": "string", "description": "The application or service to whom this configuration value belongs.", "maxLength": 64}, "password": {"type": "string", "description": "The optional password for the configuration", "maxLength": 64}}}, "type": "array"}, "UpdateRequest": {"items": {"required": ["application", "name"], "type": "object", "properties": {"instance": {"type": "string", "description": "The instance identifier of the application. If not provided, the instance will default to the instance agnostic identifier (\"-\").", "maxLength": 2}, "group": {"items": {"type": "string", "maxLength": 64}, "type": "array", "description": "Groupings of configurations within a configuration partition. Used to further sort and identify configurations."}, "name": {"type": "string", "description": "The name of the configuration.", "maxLength": 64}, "title": {"type": "string", "description": "A descriptive title of the configuration value for UI readability.", "maxLength": 64}, "default": {"type": "string", "description": "The default value of the configuration.", "maxLength": 256}, "partition": {"type": "string", "description": "The partition to under which the configuration is found.", "maxLength": 64}, "value": {"type": "string", "description": "The value of the configuration.", "maxLength": 256}, "application": {"type": "string", "description": "The application or service to whom this configuration value belongs. (eg nsi,   chronos, stasis)", "maxLength": 64}, "callbacks": {"items": {"type": "string", "maxLength": 256}, "type": "array", "description": "A list of URLs specifying the callback location."}, "password": {"type": "string", "description": "The optional password for the configuration", "maxLength": 64}, "tags": {"items": {"type": "string", "maxLength": 64}, "type": "array", "description": "A list of the tags associated with this configuraiton value."}, "description": {"type": "string", "description": "A description of the configuration value for UI readability.", "maxLength": 256}}}, "type": "array"}, "CreateRequest": {"items": {"required": ["application", "name"], "type": "object", "properties": {"instance": {"type": "string", "description": "The instance identifier of the application. If not provided, the instance will default to the instance agnostic identifier (\"-\").", "maxLength": 2}, "group": {"items": {"type": "string", "maxLength": 64}, "type": "array", "description": "Groupings of configurations within a configuration partition. Used to further sort and identify configurations."}, "name": {"type": "string", "description": "The name of the configuration.", "maxLength": 64}, "title": {"type": "string", "description": "A descriptive title of the configuration value for UI readability.", "maxLength": 64}, "default": {"type": "string", "description": "The default value of the configuration.", "maxLength": 256}, "partition": {"type": "string", "description": "The partition to under which the configuration is found.", "maxLength": 64}, "value": {"type": "string", "description": "The value of the configuration.", "maxLength": 256}, "application": {"type": "string", "description": "The application or service to whom this configuration value belongs.", "maxLength": 64}, "callbacks": {"items": {"type": "string", "maxLength": 256}, "type": "array", "description": "A list of URLs specifying the callback location."}, "password": {"type": "string", "description": "The optional password for the configuration", "maxLength": 64}, "tags": {"items": {"type": "string", "maxLength": 64}, "type": "array", "description": "A list of the tags associated with this configuraiton value."}, "description": {"type": "string", "description": "A description of the configuration value for UI readability.", "maxLength": 256}}}, "type": "array"}, "Response": {"items": {"type": "object", "properties": {"inheritable": {"items": {"type": "string"}, "type": "array", "description": "A list of URLS specifying the inheritable callbacks assigned to this value."}, "instance": {"type": "string", "description": "The instance identifier of the application."}, "group": {"items": {"type": "string"}, "type": "array", "description": "Groupings of configurations within a configuration partition. Used to further sort and identify configurations."}, "name": {"type": "string", "description": "The name of the configuration."}, "title": {"type": "string", "description": "A descriptive title of the configuration value for UI readability."}, "default": {"type": "string", "description": "The default value of the configuration."}, "partition": {"type": "string", "description": "The partition to under which the configuration is found."}, "value": {"type": "string", "description": "The value of the configuration."}, "key": {"type": "string", "description": "The internal identifying key."}, "application": {"type": "string", "description": "The application or service to whom this configuration value belongs."}, "callbacks": {"items": {"type": "string"}, "type": "array", "description": "A list of URLs specifying the callback location."}, "tags": {"items": {"type": "string"}, "type": "array", "description": "A list of the tags associated with this configuraiton value."}, "description": {"type": "string", "description": "A description of the configuration value for UI readability."}}}, "type": "array", "description": "The retrieved or modified configuration values."}, "ErrorResponse": {"type": "object", "properties": {"errors": {"items": {"type": "string"}, "type": "array", "description": "A list of all errors that occurred."}}}}, "swagger": "2.0", "consumes": ["application/json"]}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_groups.json b/tapi/resources/MCP_4.0.0_groups.json
deleted file mode 100644
index 0c3c6bd42f25703a23d51b246ae315260bf387b1..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_groups.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Retrieve, plan and modify Group resources", "title": "Groups"}, "paths": {"/nsi/api/groups/{groupId}/groupPlanned": {"put": {"responses": {"200": {"description": "Group planned with given id has been updated successfully.", "schema": {"$ref": "#/definitions/GroupPlannedRO"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to update group planned, internal system error (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request. Bad or invalid parameters were provided.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Group identifier", "required": true, "type": "string", "name": "groupId", "in": "path"}, {"schema": {"$ref": "#/definitions/GroupPlannedRO"}, "description": "The new group data", "required": true, "name": "group", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapigroups"], "summary": "Update a specific planned group", "consumes": ["application/json"], "operationId": "putGroupPlanned"}, "patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/GroupPlannedRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/GroupRO"}}, "403": {"description": "Forbidden to access specified Equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Upon request accepted, code 202 is returned and the output consists of JSON objects representing current group planned resource.<p>Example replace request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"name\" : \"name of your choice\"\n            },\n             \"relationships\" : {\n                \"parentGroup\": {\n                   \"data\": [\n                     {\n                        \"type\": \"group\",\n                        \"id\": \"p1\"\n                     }\n                  ]\n             }\n        }\n      }\n    ]\n}\n</code></pre><p>Example delete request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"name\",\n             \"relationships\" : {\n                \"parentGroup\": {\n                   \"data\": [\n                     {\n                        \"type\": \"group\",\n                        \"id\": \"p1\"\n                     }\n                  ]\n             }\n        }\n      }\n    ]\n}\n</code></pre><p>Example add request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"add\",\n            \"attributes\" : {\n               \"name\" : \"name of your choice\"\n            },\n             \"relationships\" : {\n                \"parentGroup\": {\n                   \"data\": [\n                     {\n                        \"type\": \"group\",\n                        \"id\": \"p1\"\n                     }\n                  ]\n             }\n        }\n      }\n    ]\n}\n</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The id of the Group to be updated", "required": true, "type": "string", "name": "groupId", "in": "path"}, {"schema": {"$ref": "#/definitions/GroupPatchRO"}, "description": "A patch request to the given Group.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapigroups"], "summary": "PATCH a specific planned group", "operationId": "patchPlannedGroup"}}, "/nsi/api/groups/{groupId}": {"put": {"responses": {"200": {"description": "Group with given id has been updated successfully."}, "403": {"description": "Forbidden to access specified group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to update group, internal system error (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request. Bad or invalid parameters were provided.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Group identifier", "required": true, "type": "string", "name": "groupId", "in": "path"}, {"schema": {"$ref": "#/definitions/GroupRO"}, "description": "The new Group data", "required": true, "name": "group", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapigroups"], "summary": "Create or Update a specific group with top level attributes", "consumes": ["application/json"], "operationId": "putGroup"}}, "/nsi/api/v3/groups/{id}/userData/{userDataKey}": {"put": {"responses": {"200": {"description": "Group userData have been created on the server", "schema": {"$ref": "#/definitions/GroupRO"}}, "404": {"description": "The specified group does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of group under which to create or update the UserData", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the UserData to create or update", "required": true, "type": "string", "name": "userDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired userData value", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["999 - nsiapiv3groups"], "summary": "Creates or updates UserData to a given group", "consumes": ["text/plain"], "operationId": "updateUserData"}, "delete": {"responses": {"404": {"description": "The specified group or userData does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted group userData successfully."}, "500": {"description": "Failed to delete group userData (error message provided).", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "Identifier of the group whose UserData is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the UserData to delete", "required": true, "type": "string", "name": "userDataKey", "in": "path"}], "tags": ["999 - nsiapiv3groups"], "description": "", "summary": "Delete an userData from a given group", "operationId": "deleteGroupUserData"}}, "/nsi/api/v3/groups/{id}/identifiers/{identifierKey}": {"put": {"responses": {"200": {"description": "Group userData have been created on the server", "schema": {"$ref": "#/definitions/GroupRO"}}, "404": {"description": "The specified group does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "ID of group under which to create or update the Identifier", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to create or update", "required": true, "type": "string", "name": "identifierKey", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "identifier", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["999 - nsiapiv3groups"], "summary": "Creates or updates an identifier to a given group", "consumes": ["application/json"], "operationId": "updateIdentifier"}, "delete": {"responses": {"404": {"description": "The specified group or identifier does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted group identifier successfully."}, "500": {"description": "Failed to delete group identifier (error message provided).", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the group whose identifier is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to delete", "required": true, "type": "string", "name": "identifierKey", "in": "path"}], "produces": ["application/json"], "tags": ["999 - nsiapiv3groups"], "summary": "Delete an identifier from a given group", "operationId": "deleteGroupIdentifiers"}}, "/nsi/api/groups/{id}/identifiers/{identifierKey}": {"put": {"responses": {"200": {"description": "group userData have been created on the server", "schema": {"$ref": "#/definitions/GroupRO"}}, "404": {"description": "The specified equipment userData does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V3<p>If present, the leading and trailing whitespaces will be trimmed from the userData's key and value.<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "ID of group under which to create or update the Identifier", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to create or update", "required": true, "type": "string", "name": "identifierKey", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "Identifier that needs to be updated", "required": true, "name": "identifier", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapigroups"], "summary": "Create or update an group's identifier", "consumes": ["application/json"], "operationId": "updateIdentifier"}, "delete": {"responses": {"404": {"description": "The specified group or identifier does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted group identifier successfully."}, "500": {"description": "Failed to delete group identifier (error message provided).", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "Identifier of the group whose identifier is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to delete", "required": true, "type": "string", "name": "identifierKey", "in": "path"}], "tags": ["000 - nsiapigroups"], "description": "<p>LATEST VERSION: V3", "summary": "Delete an identifier from a given group", "operationId": "deleteGroupIdentifiers"}}, "/nsi/api/groups": {"post": {"responses": {"201": {"description": "group created or updated successfully.", "schema": {"$ref": "#/definitions/GroupRO"}}, "500": {"description": "Failed to create or update the group.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid data to create or update equipment group.", "schema": {"$ref": "#/definitions/GroupRO"}}}, "description": "<p>LATEST VERSION: V3<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\": {\n      \"id\": \"cf921459-d88c-4bc0-bfaf-6c8115d8ef40\",\n      \"type\": \"group\",\n      \"attributes\": {\n        \"name\": \"group\"\n        \"identifiers\": \"[]\"\n        \"userData\": \"{}\"\n      },\n    }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/GroupRO"}, "description": "Request to create/update a group", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapigroups"], "summary": "Creates or updates a Group", "consumes": ["application/json"], "operationId": "postGroup"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested group", "schema": {"$ref": "#/definitions/GroupListRO"}}, "500": {"description": "Failed to retrieve the group with given query parameters.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V3<p>It supports the following parameters:<ul><li>offset<li>limit</ul>", "parameters": [{"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page. Defaulted to return 20 groups at once.", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["000 - nsiapigroups"], "summary": "Retrieves groups satisfying the provided parameters", "operationId": "getGroups"}}, "/nsi/api/groups/{id}/userData/{userDataKey}": {"put": {"responses": {"200": {"description": "group userData have been created on the server", "schema": {"$ref": "#/definitions/GroupRO"}}, "404": {"description": "The specified equipment userData does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V3<p>If present, the leading and trailing whitespaces will be trimmed from the userData's key and value.<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of group under which to create or update the UserData", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of userData to update", "required": true, "type": "string", "name": "userDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired userData value", "required": true, "name": "userDataValue", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapigroups"], "summary": "Create or update an group's userData", "consumes": ["text/plain"], "operationId": "putEquipmentUserData"}, "delete": {"responses": {"404": {"description": "The specified group or userData does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted group userData successfully."}, "500": {"description": "Failed to delete group userData (error message provided).", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "Identifier of the group whose UserData is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the UserData to delete", "required": true, "type": "string", "name": "userDataKey", "in": "path"}], "tags": ["000 - nsiapigroups"], "description": "<p>LATEST VERSION: V3", "summary": "Delete a specific userData from specific group", "operationId": "deleteGroupUserData"}}, "/nsi/api/groups/{id}": {"delete": {"responses": {"200": {"description": "Deleted the group successfully"}, "404": {"description": "The specified group does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to delete the specified group (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "Id of group", "required": true, "type": "string", "name": "id", "in": "path"}], "tags": ["000 - nsiapigroups"], "description": "<p>LATEST VERSION: V3", "summary": "Delete a group with given id", "operationId": "removeGroupById"}, "get": {"responses": {"200": {"description": "Retrieved group successfully", "schema": {"$ref": "#/definitions/GroupRO"}}, "404": {"description": "The specified group does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the specified group(error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "Id of the group to retrieve", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapigroups"], "summary": "Retrieves a group with specific id", "operationId": "getGroupById"}}, "/nsi/api/v3/groups/{id}": {"delete": {"responses": {"200": {"description": "Deleted the group successfully", "schema": {"$ref": "#/definitions/GroupRO"}}, "404": {"description": "The specified group does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to delete the specified group (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Id of group", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["999 - nsiapiv3groups"], "summary": "Delete a group with given id", "consumes": ["application/json"], "operationId": "removeGroupById"}, "get": {"responses": {"200": {"description": "Retrieved group successfully.", "schema": {"$ref": "#/definitions/GroupRO"}}, "404": {"description": "The specified group does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the specified group(error message provided).", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Id of group", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["999 - nsiapiv3groups"], "summary": "Retrieve group with specified id", "operationId": "getGroupById"}}, "/nsi/api/v3/groups/{groupId}": {"put": {"responses": {"200": {"description": "Group with given id has been updated successfully."}, "403": {"description": "Forbidden to access specified group", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to update group, internal system error (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request. Bad or invalid parameters were provided.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Group identifier", "required": true, "type": "string", "name": "groupId", "in": "path"}, {"schema": {"$ref": "#/definitions/GroupRO"}, "description": "The new Group data", "required": true, "name": "group", "in": "body"}], "produces": ["application/json"], "tags": ["999 - nsiapiv3groups"], "summary": "Create or Update a specific group with top level attributes", "consumes": ["application/json"], "operationId": "putGroup"}}, "/nsi/api/v3/groups/{groupId}/groupPlanned": {"put": {"responses": {"200": {"description": "Group planned with given id has been updated successfully."}, "403": {"description": "Forbidden to access specified equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to update group planned, internal system error (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request. Bad or invalid parameters were provided.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Group identifier", "required": true, "type": "string", "name": "groupId", "in": "path"}, {"schema": {"$ref": "#/definitions/GroupPlannedRO"}, "description": "The new group data", "required": true, "name": "group", "in": "body"}], "produces": ["application/json"], "tags": ["999 - nsiapiv3groups"], "summary": "Update a specific planned group", "consumes": ["application/json"], "operationId": "putGroupPlanned"}, "patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/GroupPlannedRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/GroupRO"}}, "403": {"description": "Forbidden to access specified Equipment", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Upon request accepted, code 202 is returned and the output consists of JSON objects representing current group planned resource.<p>Example replace request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"name\" : \"name of your choice\"\n            },\n             \"relationships\" : {\n                \"parentGroup\": {\n                   \"data\": [\n                     {\n                        \"type\": \"group\",\n                        \"id\": \"p1\"\n                     }\n                  ]\n             }\n        }\n      }\n    ]\n}\n</code></pre><p>Example delete request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"name\",\n             \"relationships\" : {\n                \"parentGroup\": {\n                   \"data\": [\n                     {\n                        \"type\": \"group\",\n                        \"id\": \"p1\"\n                     }\n                  ]\n             }\n        }\n      }\n    ]\n}\n</code></pre><p>Example add request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"add\",\n            \"attributes\" : {\n               \"name\" : \"name of your choice\"\n            },\n             \"relationships\" : {\n                \"parentGroup\": {\n                   \"data\": [\n                     {\n                        \"type\": \"group\",\n                        \"id\": \"p1\"\n                     }\n                  ]\n             }\n        }\n      }\n    ]\n}\n</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The id of the Group to be updated", "required": true, "type": "string", "name": "groupId", "in": "path"}, {"schema": {"$ref": "#/definitions/GroupPatchRO"}, "description": "A patch request to the given Group.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["999 - nsiapiv3groups"], "summary": "PATCH a specific planned group", "operationId": "patchPlannedGroup"}}, "/nsi/api/v3/groups": {"post": {"responses": {"201": {"description": "Group has been created successfully", "schema": {"$ref": "#/definitions/GroupRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/GroupRO"}}}, "description": "<p>LATEST VERSION: V3<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\": {\n      \"id\": \"cf921459-d88c-4bc0-bfaf-6c8115d8ef40\",\n      \"type\": \"group\",\n      \"attributes\": {\n        \"identifiers\": \"[]\"\n        \"userData\": \"{}\"\n      },\n    }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/GroupRO"}, "description": "Request to create a group", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["999 - nsiapiv3groups"], "summary": "Trigger the creation of group", "consumes": ["application/json"], "operationId": "postGroup"}, "get": {"responses": {"200": {"description": "Retrieved groups successfully.", "schema": {"$ref": "#/definitions/GroupListRO"}}, "500": {"description": "Failed to retrieve groups(error message provided)", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["999 - nsiapiv3groups"], "summary": "Retrieve groups", "operationId": "getGroups"}}}, "schemes": ["http", "https"], "tags": [{"name": "000 - nsiapigroups", "description": "Retrieve, plan, and manage the group resources<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "999 - nsiapiv3groups", "description": "Retrieve, and manage the group resources V3."}], "definitions": {"IdentifierRO": {"type": "object"}, "LinksRO": {"type": "object", "properties": {"last": {"type": "string", "description": "The last page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "next": {"type": "string", "description": "The next page of data", "format": "uri"}, "current": {"type": "string", "description": "The current page of data", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "GroupRelationshipsRO": {"type": "object", "properties": {"fres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "groupPlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "parentGroup": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstructs": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "GroupPlannedRelationshipsRO": {"type": "object", "properties": {"parentGroup": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "GroupPlannedRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/GroupPlannedDataRO"}}}, "GroupDataRO": {"type": "object", "properties": {"relationships": {"description": "The relationships of a group", "$ref": "#/definitions/GroupRelationshipsRO"}, "attributes": {"$ref": "#/definitions/GroupAttributesRO"}, "type": {"enum": ["group"], "type": "string", "description": "The Group resource type"}, "id": {"type": "string", "description": "The unique identifier for the Group resource"}}}, "RelationshipMetaDataRO": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean", "description": "Flags whether the included relationship object is partially populated or not"}}}, "AdditionalAttributesRO": {"type": "object"}, "OneToOneRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipDataRO"}}}, "OneToManyRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array", "description": "The one-to-many relationship"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "GroupPatchOperationRO": {"type": "object", "properties": {"relationships": {"description": "The group planned relationships", "$ref": "#/definitions/GroupPlannedRelationshipsRO"}, "keys": {"items": {"type": "string"}, "type": "array", "description": "Used to target specific key(s) of the attribute to be deleted"}, "attribute": {"type": "string", "description": "name of an attribute to be deleted"}, "path": {"type": "string", "description": "path of the object/attribute to be patched"}, "attributes": {"$ref": "#/definitions/GroupAttributesRO"}, "op": {"enum": ["replace", "delete", "add"], "type": "string", "description": "supported operation on a Group resource"}}}, "GroupRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to group, such as GroupPlanned"}, "data": {"$ref": "#/definitions/GroupDataRO"}}}, "GroupAttributesRO": {"type": "object", "properties": {"groupType": {"type": "string", "description": "Type of the group"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "name": {"type": "string", "description": "Name of the group."}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}}}, "GroupPlannedAttributesRO": {"type": "object", "properties": {"groupType": {"type": "string", "description": "Type of the group"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "name": {"type": "string", "description": "Name of the group."}}}, "GroupPatchRO": {"type": "object", "properties": {"operations": {"items": {"$ref": "#/definitions/GroupPatchOperationRO"}, "type": "array"}}}, "GroupPlannedDataRO": {"type": "object", "properties": {"relationships": {"description": "The group planned relationships", "$ref": "#/definitions/GroupPlannedRelationshipsRO"}, "attributes": {"$ref": "#/definitions/GroupPlannedAttributesRO"}, "type": {"enum": ["groupPlanned"], "type": "string", "description": "The Group resource type"}, "id": {"type": "string", "description": "The unique identifier for the Group resource"}}}, "UserDataRO": {"type": "object"}, "GroupListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to group, such as GroupPlanned"}, "data": {"items": {"$ref": "#/definitions/GroupDataRO"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_inventory_search.json b/tapi/resources/MCP_4.0.0_inventory_search.json
deleted file mode 100644
index 9b087dfd385aab4487be39516d7f958d39c41d54..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_inventory_search.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Retrieve NetworkConstructs, Fres, Tpes, Equipment, and Equipment Groups", "title": "Inventory Search"}, "paths": {"/nsi/api/v2/search/fres": {"post": {"responses": {"200": {"description": "Successfully retrieved the list of FREs.", "schema": {"$ref": "#/definitions/FreListRO"}}, "500": {"description": "Failed to retrieve the FREs with given query parameter.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "\nNote: when querying by identifiers, the supported syntax is as follows:\n     ?identifierKey=key1,key2,...&identifierValue=value1,value2,...\nFor instance:\n     ?identifierKey=ossLabel&identifierValue=ossLabel", "parameters": [{"description": "(Optional) Comma separated list of FRE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text, (default search Fields are name, layerRate, tpeLocations if searchFields is not specified.)", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search with, combined with searchText. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of fre planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "FRE layer rates in comma separated list The allowed values are: ETHERNET, OTU1, OTU2, OTU2e, OTU3, OTU4, OTUCn, OTSi, OMS, OS, PHY, OTS, FICON, FC, ODU, ODU0, ODU1, ODU2, ODU2e, ODU3, ODU4, ODUCn, DSR, DSR_10GE, DSR_100GE, DSR_ETHERNET, ENCAPSULATION, MPLS, MPLS_PROTECTION, MEDIA, LAG, RS, E1, E3, E1_2M, EC1, DSR_2M, LINE_OC3_STS3_AND_MS_STM1, SECTION_OC3_STS3_AND_RS_STM1, DSR_OC3_STM1, DSR_OC12_STM4, DSR_OC48_STM16, DSR_OC192_STM64, CES_IWF, T1, DSR_1_5M, STS1, STS3C, STS12C, STS24C, STS48C, DS0, DS1, DS3, VT15, VT2, NOT_APPLICABLE, ODUFLEX, OTUg, ODUg, BGP", "required": false, "type": "string", "name": "layerRate", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"enum": ["or", "and"], "description": "(Optional) The logical operator to use when searching Network Construct identifier", "required": false, "in": "query", "type": "string", "name": "networkConstruct.id.operator"}, {"description": "(Optional) Comma separated TPE identifiers for endpoints", "required": false, "type": "string", "name": "tpe.id", "in": "query"}, {"enum": ["or", "and"], "description": "(Optional) The logical operator to use when searching tpeIds", "required": false, "in": "query", "type": "string", "name": "tpe.id.operator"}, {"description": "List of comma separated keys for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "List of comma separated values for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) List of concrete FRE identifiers", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional)  Flag that enables/disables a link from having additional tunnel BW being consumed", "required": false, "in": "query", "type": "string", "name": "bookingData.lockout"}, {"enum": ["dwa", "infrastructure", "packet", "packet_infrastructure", "tdm"], "description": "(Optional, Deprecated) FRE group :<ul><li>dwa for all FREs in OTU4 and all top level FREs in ETHERNET, DSR, DSR_ETHERNET, OTSi(OCH), ODU2, ODU4, ODUCn, OTUCn<li>infrastructure for all FRE-APs representing forwarding constructs between ROADM OTS'<li>packet for all L2 nodal and top level FREs in ETHERNET including infrastructure</ul>", "required": false, "in": "query", "type": "string", "name": "group"}, {"description": "FRE types in comma separated list The allowed values are: explicitRoute, explicitRouteGroup, snc, sncGroup", "required": false, "type": "string", "name": "freType", "in": "query"}, {"description": "User label", "required": false, "type": "string", "name": "userLabel", "in": "query"}, {"description": "Management Name", "required": false, "type": "string", "name": "managementName", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "freExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The identifier indicating type of parent to be returned. If specified, parent matching the criteria will be returned", "required": false, "type": "string", "name": "signalContentType", "in": "query"}, {"description": "(Optional) Find roadmlines by srlg values separated by comma. A roadmline is a FRE between two SAM cards.", "required": false, "type": "string", "name": "srlg", "in": "query"}, {"description": "(Optional) Find services configured over a roadmline based on the roadmline FRE identifier.", "required": false, "type": "string", "name": "roadmLineId", "in": "query"}, {"description": "Concrete TPE identifier for endpoints", "required": false, "type": "string", "name": "endpoint.tpe.concrete", "in": "query"}, {"description": "(Optional) deploymentState parameter used to filter results", "required": false, "type": "string", "name": "deploymentState", "in": "query"}, {"description": "(Optional) Represents the deployment state of the service intent through its life cycle", "required": false, "type": "string", "name": "intentDeploymentStateString", "in": "query"}, {"description": "(Optional) Represents the different phases of the service intent through its life cycle", "required": false, "type": "string", "name": "intentLifeCyclePhaseString", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional) The active state of the resource", "required": false, "in": "query", "type": "string", "name": "active"}, {"enum": ["unidirectional", "bidirectional"], "description": "(Optional) Indicates if unidirectional or bidirectional FREs should be returned", "required": false, "in": "query", "type": "string", "name": "directionality"}, {"enum": ["IFRE", "FREAP", "FREhAP", "ROADMLINE", "IFRECP"], "description": "(Optional) Determines if the FRE participates in an internal or external forwarding view or involves access points or connection points", "required": false, "in": "query", "type": "string", "name": "networkRole"}, {"description": "FRE types in comma separated list. The allowed values are: service, link, roadmline-ap, roadmline", "required": false, "type": "string", "name": "type", "in": "query"}, {"description": "(Optional) Allow filtering on the FRE service class. This parameter accepts a list of comma separated values. The allowed values are: EVC, ETransit, EAccess, VLAN, TDM, Transport Client, Photonic, Tunnel, IP, LLDP, LAG, OTU, ROADM Line, Fiber, SNC , OSRP Link, OSRP Line, SNCP, ICL, Ring", "required": false, "type": "string", "name": "serviceClass", "in": "query"}, {"description": "(Optional) Indicates additional qualification information for a LayerRate. For example, for beyond 100G rates (e.g. OTUCn, ODUCn), defines the n multiplier, or the n-M subrate value.", "required": false, "type": "string", "name": "layerRateQualifier", "in": "query"}, {"description": "(Optional) Retrieves all supported parent FREs (default is one serviceClass/layer level up) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportedByFreId", "in": "query"}, {"enum": ["one", "all"], "description": "(Optional) Used in conjunction with supportedByFreId and controls if only one-level (default) or all parent FREs with a serviceClass are returned", "required": false, "in": "query", "type": "string", "name": "supportedByQualifier"}, {"description": "(Optional) Retrieves all supporting child FREs (one serviceClass/layer level down) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportingFreId", "in": "query"}, {"description": "(Optional) Search for an exact match on customerName", "required": false, "type": "string", "name": "customerName", "in": "query"}, {"description": "(Optional) For Control Plane SNCs only: Retrieves all SNCs provided the parent SNCG userLabel", "required": false, "type": "string", "name": "sncgUserlabel", "in": "query"}, {"description": "(Optional) Allow filtering on FRE Tunnel class service. This parameter accepts a list of comma separated values: dynamic, static", "required": false, "type": "string", "name": "tunnelType", "in": "query"}, {"description": "(Optional) Allow filtering on type of G8032 ring. This parameter accepts a list of comma separated values: major, subring", "required": false, "type": "string", "name": "ringType", "in": "query"}, {"description": "(Optional) Allow filtering on type of G8032 ring completeness. This parameter accepts a list of comma separated values: partial, complete", "required": false, "type": "string", "name": "ringCompleteness", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState. This parameter accepts a list of comma separated values: enabled, disabled, not applicable, In Service, Out of Service", "required": false, "type": "string", "name": "adminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState. This parameter accepts a list of comma separated values: fully operating, not operating, degraded operation, Not Applicable, Undetermined, In Service, Degraded, Out of Service External, Out of Service", "required": false, "type": "string", "name": "operationState", "in": "query"}, {"enum": ["good", "high", "low", "upgrade"], "description": "(Optional) Allow filtering on the LQS status. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.status"}, {"enum": ["true", "false"], "description": "(Optional) The LQS margin validity state", "required": false, "in": "query", "type": "string", "name": "lqsData.margin.valid"}, {"enum": ["true", "false"], "description": "(Optional) The LQS fiber reconciled state", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.reconciled"}, {"enum": ["totalPower", "osc"], "description": "(Optional) Allow filtering on the LQS fiber method. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.method"}, {"description": "(Optional) A list of LQS margin viable at EOL states", "required": false, "type": "string", "name": "lqsData.margin.viableAtEol", "in": "query"}, {"description": "(Optional) Retrieves all correlated FREs that are co-routed and co-terminated with the specified FRE Id", "required": false, "type": "string", "name": "coroutedFreId", "in": "query"}, {"description": "(Optional) Allow filtering on FRE tags. This parameter accepts a list of comma separated strings", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState display string", "required": false, "type": "string", "name": "displayAdminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState display string", "required": false, "type": "string", "name": "displayOperationState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE topologySource display string", "required": false, "type": "string", "name": "displayTopologySource", "in": "query"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) Comma-separated named query id list; The allowed values are: resiliency, tdmServices, topologicalLinks, roadmLineSpan, reusableSNCG, tunnelReplacement, layer1OtuLinks, photonicSncpWorkLegs, relatedFresFull<br><br>tunnelReplacement cannot be used in combination with other named queries<br><br>photonicSncpWorkLegs can not be used alone, networkConstruct.Id must be provided with this named query<br><br>relatedFresFull can not be used alone, freId must be provided with this named query.", "required": false, "type": "string", "name": "namedQuery", "in": "query"}, {"description": "Mandatory when namedQuery relatedFresFull/relatedFresLight is used. This parameter accepts a list of comma separated freIds", "required": false, "type": "string", "name": "namedQueryParam1", "in": "query"}, {"description": "(Optional) Allow filtering on FRE domainTypes. This parameter accepts a list of comma separated values", "required": false, "type": "string", "name": "domainTypes", "in": "query"}, {"description": "(Optional) Allow filtering on FRE domainTypes. This parameter accepts a list of comma separated values: unprotected, partial, protected", "required": false, "type": "string", "name": "resilienceLevel", "in": "query"}, {"description": "(Optional) Retrieves all parent FREs that have the specified FRE as a partition relation", "required": false, "type": "string", "name": "partitionFreIds", "in": "query"}, {"description": "(Optional) Retrieves all parent FREs that have the specified FRE as a decomposed relation", "required": false, "type": "string", "name": "decomposedFreIds", "in": "query"}, {"enum": ["exclude"], "description": "(Optional) Allow filtering of FRE's with facilityBypass tunnels.", "required": false, "in": "query", "type": "string", "name": "facilityBypass"}, {"description": "(Optional) The child FRE identifier to return its parents", "required": false, "type": "string", "name": "childFreId", "in": "query"}, {"description": "(Optional) GNE Subnet name of the FRES", "required": false, "type": "string", "name": "gneSubnetName", "in": "query"}, {"description": "(Optional) Retrieves all FREs that have an inclusion constraint relationship to the specified identifier", "required": false, "type": "string", "name": "routingConstraints.inclusionConstraints.id", "in": "query"}, {"description": "(Optional) Allow filtering on FRE deploymentState display string", "required": false, "type": "string", "name": "displayDeploymentState", "in": "query"}, {"description": "(Optional) List of comma-separated network construct tags that is an endpoint for an FRE", "required": false, "type": "string", "name": "ncTags", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "30", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "MetaData to be included. The allowed values are: layerRate, layerRateQualifier, signalContentType, intentLifeCyclePhaseString, intentDeploymentStateString, serviceClass, sncgUserlabel, adminState, operationState, lqsData.status, lqsData.margin.valid, lqsData.fiber.reconciled, lqsData.fiber.method, lqsData.margin.viableAtEol, displayAdminState, displayOperationState, displayTopologySource, customerName, domainTypes, resilienceLevel, directionality, displayDeploymentState, ringType, ringCompleteness", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: tpes, expectations, networkConstructs, planned, freDiscovered, frePlanned, supportedByFreResiliencyClientTpes", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["fres"], "summary": "Retrieve a list of FREs provided with the satisfying parameters", "consumes": ["application/json"], "operationId": "searchPostFresV2"}, "get": {"responses": {"200": {"description": "Successfully retrieved the list of FREs.", "schema": {"$ref": "#/definitions/FreListRO"}}, "500": {"description": "Failed to retrieve the FREs with given query parameter.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "\nNote: when querying by identifiers, the supported syntax is as follows:\n     ?identifierKey=key1,key2,...&identifierValue=value1,value2,...\nFor instance:\n     ?identifierKey=ossLabel&identifierValue=ossLabel", "parameters": [{"description": "(Optional) Comma separated list of FRE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text, (default search Fields are name, layerRate, tpeLocations if searchFields is not specified.)", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search with, combined with searchText. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of fre planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "FRE layer rates in comma separated list The allowed values are: ETHERNET, OTU1, OTU2, OTU2e, OTU3, OTU4, OTUCn, OTSi, OMS, OS, PHY, OTS, FICON, FC, ODU, ODU0, ODU1, ODU2, ODU2e, ODU3, ODU4, ODUCn, DSR, DSR_10GE, DSR_100GE, DSR_ETHERNET, ENCAPSULATION, MPLS, MPLS_PROTECTION, MEDIA, LAG, RS, E1, E3, E1_2M, EC1, DSR_2M, LINE_OC3_STS3_AND_MS_STM1, SECTION_OC3_STS3_AND_RS_STM1, DSR_OC3_STM1, DSR_OC12_STM4, DSR_OC48_STM16, DSR_OC192_STM64, CES_IWF, T1, DSR_1_5M, STS1, STS3C, STS12C, STS24C, STS48C, DS0, DS1, DS3, VT15, VT2, NOT_APPLICABLE, ODUFLEX, OTUg, ODUg, BGP", "required": false, "type": "string", "name": "layerRate", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"enum": ["or", "and"], "description": "(Optional) The logical operator to use when searching Network Construct identifier", "required": false, "in": "query", "type": "string", "name": "networkConstruct.id.operator"}, {"description": "(Optional) Comma separated TPE identifiers for endpoints", "required": false, "type": "string", "name": "tpe.id", "in": "query"}, {"enum": ["or", "and"], "description": "(Optional) The logical operator to use when searching tpeIds", "required": false, "in": "query", "type": "string", "name": "tpe.id.operator"}, {"description": "List of comma separated keys for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "List of comma separated values for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) List of concrete FRE identifiers", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional)  Flag that enables/disables a link from having additional tunnel BW being consumed", "required": false, "in": "query", "type": "string", "name": "bookingData.lockout"}, {"enum": ["dwa", "infrastructure", "packet", "packet_infrastructure", "tdm"], "description": "(Optional, Deprecated) FRE group :<ul><li>dwa for all FREs in OTU4 and all top level FREs in ETHERNET, DSR, DSR_ETHERNET, OTSi(OCH), ODU2, ODU4, ODUCn, OTUCn<li>infrastructure for all FRE-APs representing forwarding constructs between ROADM OTS'<li>packet for all L2 nodal and top level FREs in ETHERNET including infrastructure</ul>", "required": false, "in": "query", "type": "string", "name": "group"}, {"description": "FRE types in comma separated list The allowed values are: explicitRoute, explicitRouteGroup, snc, sncGroup", "required": false, "type": "string", "name": "freType", "in": "query"}, {"description": "User label", "required": false, "type": "string", "name": "userLabel", "in": "query"}, {"description": "Management Name", "required": false, "type": "string", "name": "managementName", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "freExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The identifier indicating type of parent to be returned. If specified, parent matching the criteria will be returned", "required": false, "type": "string", "name": "signalContentType", "in": "query"}, {"description": "(Optional) Find roadmlines by srlg values separated by comma. A roadmline is a FRE between two SAM cards.", "required": false, "type": "string", "name": "srlg", "in": "query"}, {"description": "(Optional) Find services configured over a roadmline based on the roadmline FRE identifier.", "required": false, "type": "string", "name": "roadmLineId", "in": "query"}, {"description": "Concrete TPE identifier for endpoints", "required": false, "type": "string", "name": "endpoint.tpe.concrete", "in": "query"}, {"description": "(Optional) deploymentState parameter used to filter results", "required": false, "type": "string", "name": "deploymentState", "in": "query"}, {"description": "(Optional) Represents the deployment state of the service intent through its life cycle", "required": false, "type": "string", "name": "intentDeploymentStateString", "in": "query"}, {"description": "(Optional) Represents the different phases of the service intent through its life cycle", "required": false, "type": "string", "name": "intentLifeCyclePhaseString", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional) The active state of the resource", "required": false, "in": "query", "type": "string", "name": "active"}, {"enum": ["unidirectional", "bidirectional"], "description": "(Optional) Indicates if unidirectional or bidirectional FREs should be returned", "required": false, "in": "query", "type": "string", "name": "directionality"}, {"enum": ["IFRE", "FREAP", "FREhAP", "ROADMLINE", "IFRECP"], "description": "(Optional) Determines if the FRE participates in an internal or external forwarding view or involves access points or connection points", "required": false, "in": "query", "type": "string", "name": "networkRole"}, {"description": "FRE types in comma separated list. The allowed values are: service, link, roadmline-ap, roadmline", "required": false, "type": "string", "name": "type", "in": "query"}, {"description": "(Optional) Allow filtering on the FRE service class. This parameter accepts a list of comma separated values. The allowed values are: EVC, ETransit, EAccess, VLAN, TDM, Transport Client, Photonic, Tunnel, IP, LLDP, LAG, OTU, ROADM Line, Fiber, SNC , OSRP Link, OSRP Line, SNCP, ICL, Ring", "required": false, "type": "string", "name": "serviceClass", "in": "query"}, {"description": "(Optional) Indicates additional qualification information for a LayerRate. For example, for beyond 100G rates (e.g. OTUCn, ODUCn), defines the n multiplier, or the n-M subrate value.", "required": false, "type": "string", "name": "layerRateQualifier", "in": "query"}, {"description": "(Optional) Retrieves all supported parent FREs (default is one serviceClass/layer level up) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportedByFreId", "in": "query"}, {"enum": ["one", "all"], "description": "(Optional) Used in conjunction with supportedByFreId and controls if only one-level (default) or all parent FREs with a serviceClass are returned", "required": false, "in": "query", "type": "string", "name": "supportedByQualifier"}, {"description": "(Optional) Retrieves all supporting child FREs (one serviceClass/layer level down) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportingFreId", "in": "query"}, {"description": "(Optional) Search for an exact match on customerName", "required": false, "type": "string", "name": "customerName", "in": "query"}, {"description": "(Optional) For Control Plane SNCs only: Retrieves all SNCs provided the parent SNCG userLabel", "required": false, "type": "string", "name": "sncgUserlabel", "in": "query"}, {"description": "(Optional) Allow filtering on FRE Tunnel class service. This parameter accepts a list of comma separated values: dynamic, static", "required": false, "type": "string", "name": "tunnelType", "in": "query"}, {"description": "(Optional) Allow filtering on type of G8032 ring. This parameter accepts a list of comma separated values: majorRing, subRing", "required": false, "type": "string", "name": "ringType", "in": "query"}, {"description": "(Optional) Allow filtering on type of G8032 ring completeness. This parameter accepts a list of comma separated values: partial, complete", "required": false, "type": "string", "name": "ringCompleteness", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState. This parameter accepts a list of comma separated values: enabled, disabled, not applicable, In Service, Out of Service", "required": false, "type": "string", "name": "adminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState. This parameter accepts a list of comma separated values: fully operating, not operating, degraded operation, Not Applicable, Undetermined, In Service, Degraded, Out of Service External, Out of Service", "required": false, "type": "string", "name": "operationState", "in": "query"}, {"enum": ["good", "high", "low", "upgrade"], "description": "(Optional) Allow filtering on the LQS status. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.status"}, {"enum": ["true", "false"], "description": "(Optional) The LQS margin validity state", "required": false, "in": "query", "type": "string", "name": "lqsData.margin.valid"}, {"enum": ["true", "false"], "description": "(Optional) The LQS fiber reconciled state", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.reconciled"}, {"enum": ["totalPower", "osc"], "description": "(Optional) Allow filtering on the LQS fiber method. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.method"}, {"description": "(Optional) A list of LQS margin viable at EOL states", "required": false, "type": "string", "name": "lqsData.margin.viableAtEol", "in": "query"}, {"description": "(Optional) Retrieves all correlated FREs that are co-routed and co-terminated with the specified FRE Id", "required": false, "type": "string", "name": "coroutedFreId", "in": "query"}, {"description": "(Optional) Allow filtering on FRE tags. This parameter accepts a list of comma separated strings", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState display string", "required": false, "type": "string", "name": "displayAdminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState display string", "required": false, "type": "string", "name": "displayOperationState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE topologySource display string", "required": false, "type": "string", "name": "displayTopologySource", "in": "query"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) Comma-separated named query id list; The allowed values are: resiliency, tdmServices, topologicalLinks, roadmLineSpan, reusableSNCG, tunnelReplacement, layer1OtuLinks, photonicSncpWorkLegs, relatedFresFull, relatedFresLight<br><br>tunnelReplacement cannot be used in combination with other named queries<br><br>photonicSncpWornetworkConstructkLegs can not be used alone, networkConstruct.Id must be provided with this named query<br><br>relatedFresFull can not be used alone, namedQueryParam1 must be provided with this named query.<br><br>relatedFresLight can not be used alone, namedQueryParam1  must be provided with this named query.", "required": false, "type": "string", "name": "namedQuery", "in": "query"}, {"description": "Mandatory when namedQuery relatedFresFull/relatedFresLight is used. This parameter accepts a list of comma separated freIds", "required": false, "type": "string", "name": "namedQueryParam1", "in": "query"}, {"description": "(Optional) Allow filtering on FRE domainTypes. This parameter accepts a list of comma separated values", "required": false, "type": "string", "name": "domainTypes", "in": "query"}, {"description": "(Optional) Allow filtering on FRE domainTypes. This parameter accepts a list of comma separated values: unprotected, partial, protected", "required": false, "type": "string", "name": "resilienceLevel", "in": "query"}, {"description": "(Optional) Retrieves all parent FREs that have the specified FRE as a partition relation", "required": false, "type": "string", "name": "partitionFreIds", "in": "query"}, {"description": "(Optional) Retrieves all parent FREs that have the specified FRE as a decomposed relation", "required": false, "type": "string", "name": "decomposedFreIds", "in": "query"}, {"enum": ["exclude"], "description": "(Optional) Allow filtering of FRE's with facilityBypass tunnels.", "required": false, "in": "query", "type": "string", "name": "facilityBypass"}, {"description": "(Optional) The child FRE identifier to return its parents", "required": false, "type": "string", "name": "childFreId", "in": "query"}, {"description": "(Optional) GNE Subnet name of the FRES", "required": false, "type": "string", "name": "gneSubnetName", "in": "query"}, {"description": "(Optional) Retrieves all FREs that have an inclusion constraint relationship to the specified identifier", "required": false, "type": "string", "name": "routingConstraints.inclusionConstraints.id", "in": "query"}, {"description": "(Optional) Allow filtering on FRE deploymentState display string", "required": false, "type": "string", "name": "displayDeploymentState", "in": "query"}, {"description": "(Optional) List of comma-separated network construct tags that is an endpoint for an FRE", "required": false, "type": "string", "name": "ncTags", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "30", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "MetaData to be included. The allowed values are: layerRate, layerRateQualifier, signalContentType, intentLifeCyclePhaseString, intentDeploymentStateString, serviceClass, sncgUserlabel, adminState, operationState, lqsData.status, lqsData.margin.valid, lqsData.fiber.reconciled, lqsData.fiber.method, lqsData.margin.viableAtEol, displayAdminState, displayOperationState, displayTopologySource, customerName, domainTypes, resilienceLevel, directionality, displayDeploymentState, ringType, ringCompleteness", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: tpes, expectations, networkConstructs, planned, freDiscovered, frePlanned, supportedByFreResiliencyClientTpes", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["fres"], "summary": "Retrieve a list of FREs provided with the satisfying parameters", "operationId": "searchFresV2"}}, "/nsi/api/search/fres/{freId}": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, networkConstructs, equipment, expectations, frePlanned, freDiscovered, abstracts, controllers", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["fres"], "summary": "Retrieves a specific FRE", "operationId": "getFreById"}}, "/nsi/api/v2/search/fres/{freId}": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, networkConstructs, equipment, expectations, frePlanned, freDiscovered, abstracts, controllers", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["fres"], "summary": "Retrieves a specific FRE", "operationId": "getFreByIdV2"}}, "/nsi/api/v1/search/fres/{freId}": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, networkConstructs, equipment, expectations, frePlanned, freDiscovered, abstracts, controllers", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["fres"], "summary": "Retrieves a specific FRE", "operationId": "getFreByIdV1"}}, "/nsi/api/v1/search/fres": {"get": {"responses": {"200": {"description": "Successfully retrieved the list of FREs.", "schema": {"$ref": "#/definitions/FreListRO"}}, "500": {"description": "Failed to retrieve the FREs with given query parameter.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "\nNote: when querying by identifiers, the supported syntax is as follows:\n     ?identifierKey=key1,key2,...&identifierValue=value1,value2,...\nFor instance:\n     ?identifierKey=ossLabel&identifierValue=ossLabel", "parameters": [{"description": "(Optional) Comma separated list of FRE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text, (default search Fields are name, layerRate, tpeLocations if searchFields is not specified.)", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search with, combined with searchText. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of fre planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "FRE layer rates in comma separated list The allowed values are: ETHERNET, OTU1, OTU2, OTU2e, OTU3, OTU4, OTUCn, OTSi, OMS, OS, PHY, OTS, FICON, FC, ODU, ODU0, ODU1, ODU2, ODU2e, ODU3, ODU4, ODUCn, DSR, DSR_10GE, DSR_100GE, DSR_ETHERNET, ENCAPSULATION, MPLS, MPLS_PROTECTION, MEDIA, LAG, RS, E1, E3, E1_2M, EC1, DSR_2M, LINE_OC3_STS3_AND_MS_STM1, SECTION_OC3_STS3_AND_RS_STM1, DSR_OC3_STM1, DSR_OC12_STM4, DSR_OC48_STM16, DSR_OC192_STM64, CES_IWF, T1, DSR_1_5M, STS1, STS3C, STS12C, STS24C, STS48C, DS0, DS1, DS3, VT15, VT2, NOT_APPLICABLE, ODUFLEX, OTUg, ODUg, BGP", "required": false, "type": "string", "name": "layerRate", "in": "query"}, {"description": "(Optional) Comma-Separated Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"enum": ["or", "and"], "description": "(Optional) The logical operator to use when searching Network Construct identifiers", "default": "or", "required": false, "in": "query", "type": "string", "name": "networkConstruct.idQualifier"}, {"description": "(Optional) Comma separated TPE identifiers for endpoints", "required": false, "type": "string", "name": "tpeId", "in": "query"}, {"enum": ["or", "and"], "description": "(Optional) The logical operator to use when searching tpeIds", "default": "or", "required": false, "in": "query", "type": "string", "name": "tpeIdQualifier"}, {"description": "List of comma separated keys for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "List of comma separated values for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) List of concrete FRE identifiers", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional)  Flag that enables/disables a link from having additional tunnel BW being consumed", "required": false, "in": "query", "type": "string", "name": "bookingData.lockout"}, {"enum": ["dwa", "infrastructure", "packet", "packet_infrastructure", "tdm"], "description": "(Optional, Deprecated) FRE group :<ul><li>dwa for all FREs in OTU4 and all top level FREs in ETHERNET, DSR, DSR_ETHERNET, OTSi(OCH), ODU2, ODU4, ODUCn, OTUCn<li>infrastructure for all FRE-APs representing forwarding constructs between ROADM OTS'<li>packet for all L2 nodal and top level FREs in ETHERNET including infrastructure</ul>", "required": false, "in": "query", "type": "string", "name": "group"}, {"description": "FRE types in comma separated list The allowed values are: explicitRoute, explicitRouteGroup, snc, sncGroup", "required": false, "type": "string", "name": "freType", "in": "query"}, {"description": "User label", "required": false, "type": "string", "name": "userLabel", "in": "query"}, {"description": "Management Name", "required": false, "type": "string", "name": "managementName", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "freExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The identifier indicating type of parent to be returned. If specified, parent matching the criteria will be returned", "required": false, "type": "string", "name": "signalContentType", "in": "query"}, {"description": "(Optional) Find roadmlines by srlg values separated by comma. A roadmline is a FRE between two SAM cards.", "required": false, "type": "string", "name": "srlg", "in": "query"}, {"description": "(Optional) Find services configured over a roadmline based on the roadmline FRE identifier.", "required": false, "type": "string", "name": "roadmLineId", "in": "query"}, {"description": "Concrete TPE identifier for endpoints", "required": false, "type": "string", "name": "endpoint.tpe.concrete", "in": "query"}, {"description": "(Optional) deploymentState parameter used to filter results", "required": false, "type": "string", "name": "deploymentState", "in": "query"}, {"description": "(Optional) Represents the deployment state of the service intent through its life cycle", "required": false, "type": "string", "name": "intentDeploymentStateString", "in": "query"}, {"description": "(Optional) Represents the different phases of the service intent through its life cycle", "required": false, "type": "string", "name": "intentLifeCyclePhaseString", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional) The active state of the resource", "required": false, "in": "query", "type": "string", "name": "active"}, {"enum": ["unidirectional", "bidirectional"], "description": "(Optional) Indicates if unidirectional or bidirectional FREs should be returned", "required": false, "in": "query", "type": "string", "name": "directionality"}, {"enum": ["IFRE", "FREAP", "FREhAP", "ROADMLINE", "IFRECP"], "description": "(Optional) Determines if the FRE participates in an internal or external forwarding view or involves access points or connection points", "required": false, "in": "query", "type": "string", "name": "networkRole"}, {"description": "FRE types in comma separated list. The allowed values are: service, link, roadmline-ap, roadmline", "required": false, "type": "string", "name": "type", "in": "query"}, {"description": "(Optional) Allow filtering on the FRE service class. This parameter accepts a list of comma separated values. The allowed values are: EVC, ETransit, EAccess, VLAN, TDM, Transport Client, Photonic, Tunnel, IP, LLDP, LAG, OTU, ROADM Line, Fiber, SNC , OSRP Link, OSRP Line, SNCP, ICL", "required": false, "type": "string", "name": "serviceClass", "in": "query"}, {"description": "(Optional) Indicates additional qualification information for a LayerRate. For example, for beyond 100G rates (e.g. OTUCn, ODUCn), defines the n multiplier, or the n-M subrate value.", "required": false, "type": "string", "name": "layerRateQualifier", "in": "query"}, {"description": "(Optional) Retrieves all supported parent FREs (default is one serviceClass/layer level up) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportedByFreId", "in": "query"}, {"enum": ["one", "all"], "description": "(Optional) Used in conjunction with supportedByFreId and controls if only one-level (default) or all parent FREs with a serviceClass are returned", "required": false, "in": "query", "type": "string", "name": "supportedByQualifier"}, {"description": "(Optional) Retrieves all supporting child FREs (one serviceClass/layer level down) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportingFreId", "in": "query"}, {"description": "(Optional) Search for an exact match on customerName", "required": false, "type": "string", "name": "customerName", "in": "query"}, {"description": "(Optional) For Control Plane SNCs only: Retrieves all SNCs provided the parent SNCG userLabel", "required": false, "type": "string", "name": "sncgUserlabel", "in": "query"}, {"description": "(Optional) Allow filtering on FRE Tunnel class service. This parameter accepts a list of comma separated values: dynamic, static", "required": false, "type": "string", "name": "tunnelType", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState. This parameter accepts a list of comma separated values: enabled, disabled, not applicable, In Service, Out of Service", "required": false, "type": "string", "name": "adminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState. This parameter accepts a list of comma separated values: fully operating, not operating, degraded operation, Not Applicable, Undetermined, In Service, Degraded, Out of Service External, Out of Service", "required": false, "type": "string", "name": "operationState", "in": "query"}, {"enum": ["good", "high", "low", "upgrade"], "description": "(Optional) Allow filtering on the LQS status. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.status"}, {"enum": ["true", "false"], "description": "(Optional) The LQS margin validity state", "required": false, "in": "query", "type": "string", "name": "lqsData.margin.valid"}, {"enum": ["true", "false"], "description": "(Optional) The LQS fiber reconciled state", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.reconciled"}, {"enum": ["totalPower", "osc"], "description": "(Optional) Allow filtering on the LQS fiber method. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.method"}, {"description": "(Optional) A list of LQS margin viable at EOL states", "required": false, "type": "string", "name": "lqsData.margin.viableAtEol", "in": "query"}, {"description": "(Optional) Retrieves all correlated FREs that are co-routed and co-terminated with the specified FRE Id", "required": false, "type": "string", "name": "coroutedFreId", "in": "query"}, {"description": "(Optional) Allow filtering on FRE tags. This parameter accepts a list of comma separated strings", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState display string", "required": false, "type": "string", "name": "displayAdminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState display string", "required": false, "type": "string", "name": "displayOperationState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE topologySource display string", "required": false, "type": "string", "name": "displayTopologySource", "in": "query"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) Comma-separated named query id list; The allowed values are: resiliency, tdmServices, topologicalLinks, roadmLineSpan, reusableSNCG", "required": false, "type": "string", "name": "namedQuery", "in": "query"}, {"description": "(Optional) Allow filtering on FRE domainTypes. This parameter accepts a list of comma separated values", "required": false, "type": "string", "name": "domainTypes", "in": "query"}, {"description": "(Optional) Allow filtering on FRE domainTypes. This parameter accepts a list of comma separated values: unprotected, partial, protected", "required": false, "type": "string", "name": "resilienceLevel", "in": "query"}, {"description": "(Optional) Retrieves all parent FREs that have the specified FRE as a partition relation", "required": false, "type": "string", "name": "partitionFreIds", "in": "query"}, {"description": "(Optional) Retrieves all parent FREs that have the specified FRE as a decomposed relation", "required": false, "type": "string", "name": "decomposedFreIds", "in": "query"}, {"enum": ["exclude"], "description": "(Optional) Allow filtering of FRE's with facilityBypass tunnels.", "required": false, "in": "query", "type": "string", "name": "facilityBypass"}, {"description": "(Optional) The child FRE identifier to return its parents", "required": false, "type": "string", "name": "childFreId", "in": "query"}, {"description": "(Optional) GNE Subnet name of the FRE", "required": false, "type": "string", "name": "gneSubnetName", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "30", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "MetaData to be included. The allowed values are: layerRate, layerRateQualifier, signalContentType, intentLifeCyclePhaseString, intentDeploymentStateString, serviceClass, sncgUserlabel, adminState, operationState, lqsData.status, lqsData.margin.valid, lqsData.fiber.reconciled, lqsData.fiber.method, lqsData.margin.viableAtEol, displayAdminState, displayOperationState, displayTopologySource, customerName, domainTypes, resilienceLevel, directionality", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: tpes, expectations, networkConstructs, planned, freDiscovered, frePlanned, supportedByFreResiliencyClientTpes", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["fres"], "summary": "Retrieve a list of FREs provided with the satisfying parameters", "operationId": "searchFresV1"}}, "/nsi/api/v1/search/equipment": {"get": {"responses": {"200": {"description": "Successfully retrieved the requested equipment.", "schema": {"$ref": "#/definitions/EquipmentListRO"}}, "500": {"description": "Failed to retrieve the requested equipment.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of equipment returned in JSON format.", "parameters": [{"description": "(Optional) List of equipment Ids", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.siteName). If provided, must also provide searchText parameter", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of resource states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "(Optional) Network Construct name", "required": false, "type": "string", "name": "networkConstruct.name", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) Equipment Intent Identifier", "required": false, "type": "string", "name": "equipmentExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) Site Identifier for equipment", "required": false, "type": "string", "name": "siteId", "in": "query"}, {"description": "(Optional) Comma separated list of equipment states. The allowed values are: IS, OOS, OOS_AU, OOS_MA, OOS_AUMA", "required": false, "type": "string", "name": "state", "in": "query"}, {"description": "(Optional) Comma separated list of equipment shelves", "required": false, "type": "string", "name": "shelf", "in": "query"}, {"description": "(Optional) Comma separated list of equipment slots", "required": false, "type": "string", "name": "slot", "in": "query"}, {"description": "(Optional) Comma separated list of equipment sub-slots", "required": false, "type": "string", "name": "subSlot", "in": "query"}, {"description": "(Optional) Comma separated list of equipment sub-sub-slots", "required": false, "type": "string", "name": "subsubSlot", "in": "query"}, {"description": "(Optional) Comma separated list of equipment sub-shelves", "required": false, "type": "string", "name": "subShelf", "in": "query"}, {"description": "(Optional) List of Equipment availabilityState. The allowed values are: PLANNED, AVAILABLE, UNVALIDATED, INUSE", "required": false, "type": "string", "name": "availabilityState", "in": "query"}, {"description": "(Optional) List of Equipment reservationState. The allowed values are: Unknown, Not reserved, Reserved for maintenance, Reserved for facility, Reserved for reversion", "required": false, "type": "string", "name": "reservationState", "in": "query"}, {"description": "(Optional) List of Equipment maintenanceMode. The allowed values are: true, false", "required": false, "type": "string", "name": "maintenanceMode", "in": "query"}, {"description": "(Optional) List of Equipment cardType", "required": false, "type": "string", "name": "cardType", "in": "query"}, {"description": "(Optional) List of Equipment specificationMismatch. The allowed values are: true, false", "required": false, "type": "string", "name": "specificationMismatch", "in": "query"}, {"description": "(Optional) List of Equipment category. The allowed values are: rack, shelf, pluggable, standalone", "required": false, "type": "string", "name": "category", "in": "query"}, {"description": "(Optional) List of neContactState. The allowed values are: IN, OUT", "required": false, "type": "string", "name": "neContactState", "in": "query"}, {"description": "(Optional) Network Construct macAddress", "required": false, "type": "string", "name": "networkConstruct.macAddress", "in": "query"}, {"description": "(Optional) Network Construct subnetName", "required": false, "type": "string", "name": "networkConstruct.subnetName", "in": "query"}, {"description": "(Optional) Project name", "required": false, "type": "string", "name": "projectName", "in": "query"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of meta data to be included. The allowed values are: specificationMismatch, state, availabilityState, reservationState, maintenanceMode, cardType, category, ncMacAddress, ncSubnetName, projectName", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, planned, discovered, networkConstructs, equipmentPlanned, equipmentDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["equipment"], "summary": "Retrieves the equipment satisfying the query parameters", "operationId": "searchEquipmentV1"}}, "/nsi/api/search/equipment": {"get": {"responses": {"200": {"description": "Successfully retrieved the requested equipment.", "schema": {"$ref": "#/definitions/EquipmentListRO"}}, "500": {"description": "Failed to retrieve the requested equipment.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of equipment returned in JSON format.", "parameters": [{"description": "(Optional) List of equipment Ids", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.siteName). If provided, must also provide searchText parameter", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of resource states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "(Optional) Network Construct name", "required": false, "type": "string", "name": "networkConstruct.name", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) Equipment Intent Identifier", "required": false, "type": "string", "name": "equipmentExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) Site Identifier for equipment", "required": false, "type": "string", "name": "siteId", "in": "query"}, {"description": "(Optional) Comma separated list of equipment states. The allowed values are: IS, OOS, OOS_AU, OOS_MA, OOS_AUMA", "required": false, "type": "string", "name": "state", "in": "query"}, {"description": "(Optional) Comma separated list of equipment shelves", "required": false, "type": "string", "name": "shelf", "in": "query"}, {"description": "(Optional) Comma separated list of equipment slots", "required": false, "type": "string", "name": "slot", "in": "query"}, {"description": "(Optional) Comma separated list of equipment sub-slots", "required": false, "type": "string", "name": "subSlot", "in": "query"}, {"description": "(Optional) Comma separated list of equipment sub-sub-slots", "required": false, "type": "string", "name": "subsubSlot", "in": "query"}, {"description": "(Optional) Comma separated list of equipment sub-shelves", "required": false, "type": "string", "name": "subShelf", "in": "query"}, {"description": "(Optional) List of Equipment availabilityState. The allowed values are: PLANNED, AVAILABLE, UNVALIDATED, INUSE", "required": false, "type": "string", "name": "availabilityState", "in": "query"}, {"description": "(Optional) List of Equipment reservationState. The allowed values are: Unknown, Not reserved, Reserved for maintenance, Reserved for facility, Reserved for reversion", "required": false, "type": "string", "name": "reservationState", "in": "query"}, {"description": "(Optional) List of Equipment maintenanceMode. The allowed values are: true, false", "required": false, "type": "string", "name": "maintenanceMode", "in": "query"}, {"description": "(Optional) List of Equipment cardType", "required": false, "type": "string", "name": "cardType", "in": "query"}, {"description": "(Optional) List of Equipment specificationMismatch. The allowed values are: true, false", "required": false, "type": "string", "name": "specificationMismatch", "in": "query"}, {"description": "(Optional) List of Equipment category. The allowed values are: rack, shelf, pluggable, standalone", "required": false, "type": "string", "name": "category", "in": "query"}, {"description": "(Optional) List of neContactState. The allowed values are: IN, OUT", "required": false, "type": "string", "name": "neContactState", "in": "query"}, {"description": "(Optional) Network Construct macAddress", "required": false, "type": "string", "name": "networkConstruct.macAddress", "in": "query"}, {"description": "(Optional) Network Construct subnetName", "required": false, "type": "string", "name": "networkConstruct.subnetName", "in": "query"}, {"description": "(Optional) Project name", "required": false, "type": "string", "name": "projectName", "in": "query"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of meta data to be included. The allowed values are: specificationMismatch, state, availabilityState, reservationState, maintenanceMode, cardType, category, ncMacAddress, ncSubnetName, projectName", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, planned, discovered, networkConstructs, equipmentPlanned, equipmentDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["equipment"], "summary": "Retrieves the equipment satisfying the query parameters", "operationId": "searchEquipment"}}, "/nsi/api/v1/search/tpes": {"get": {"responses": {"200": {"description": "Successfully retrieved the requested TPEs.", "schema": {"$ref": "#/definitions/TpeListRO"}}, "500": {"description": "Failed to retrieve the requested TPEs.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>The following search paths are not supported for the searchFields query parameter:<ul><li>data.attributes.tpeSpec<li>data.attributes.tpeGroupSpecs<li>data.attributes.locations.loc_oid<li>data.attributes.capacityReservations.*<li>data.attributes.syncScopes.*<li>data.relationships.networkConstructAssociation.data.id</ul><p>Specifying a path for the searchFields parameter of an attribute in the following objects will search the parent object for the value specified in searchText: adjacencyPackage, powerPackage, photonicSpectrumPackage, and signalIndex.<p>To specify an expectation path for the searchFields parameter use the prefix \"data.relationships.tpeExpectations.data.*\"", "parameters": [{"description": "(Optional) Comma separated list of TPE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of networkConstruct planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "(Optional) Comma-separated named query id list; The allowed values are: ptpEthernetNoClients, portsL2AvailableAll, portsL2ApplicableEPLUni, portsL2ApplicableEVPLUni, portsL2ApplicableEnni, portsL2ApplicableEPLUniWithMcLag, portsL2ApplicableEVPLUniWithMcLag, portsL2ApplicableEnniWithMcLag, portsTunnelsL2ApplicableAll, portsTunnelsL2ApplicableAllWithFtpIpData, portsTDMCEApplicableAll, channelTxPorts, channelRxPorts, linePorts", "required": false, "type": "string", "name": "namedQuery", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"name": "identifierKey", "items": {"type": "string"}, "required": false, "in": "query", "type": "array", "collectionFormat": "multi"}, {"description": "(Optional) The comma separated identifier value set", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) Id of the concrete tpe", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional)  Flag that enables/disables a link from having additional tunnel BW being consumed", "required": false, "in": "query", "type": "string", "name": "bookingData.lockout"}, {"description": "(optional) The layerRate. When combined with the adjacencyType queryParam, only looks for thespecified list of adjacencyTypes within the specified layerRate.", "required": false, "type": "string", "name": "layerRate", "in": "query"}, {"description": "(optional) The adjacencyType. When combined with the layerRate queryParam, only looks for thespecified list of adjacencyTypes within the specified layerRate.", "required": false, "type": "string", "name": "adjacencyType", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional) The active state of the resource", "required": false, "in": "query", "type": "string", "name": "active"}, {"enum": ["summary", "detail"], "description": "(Optional) The TPE content level", "default": "detail", "required": false, "in": "query", "type": "string", "name": "content"}, {"description": "(Optional) TPE location delimited by dashes", "required": false, "type": "string", "name": "location", "in": "query"}, {"description": "(Optional) Format for the given location; when not given, assume location is [[shelf-]slot-]port", "required": false, "type": "string", "name": "locationFormat", "in": "query"}, {"description": "(Optional) Comma separated list of TPE structure types", "required": false, "type": "string", "name": "structureType", "in": "query"}, {"description": "(Optional) Equipment identifier. In case of usage with limit parameter, paging will be enabled.", "required": false, "type": "string", "name": "equipmentId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "tpeExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "tpeExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) GNE Subnet name of the TPE", "required": false, "type": "string", "name": "gneSubnetName", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of meta data to be included. The allowed values are: stackDirection, layerRate, state, cardType, structureType, structureSubType, resourceState", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, concrete, networkConstructs", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["tpes"], "summary": "Retrieves the TPEs satisfying the query parameters", "operationId": "searchTpesV1"}}, "/nsi/api/search/tpes": {"get": {"responses": {"200": {"description": "Successfully retrieved the requested TPEs.", "schema": {"$ref": "#/definitions/TpeListRO"}}, "500": {"description": "Failed to retrieve the requested TPEs.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>The following search paths are not supported for the searchFields query parameter:<ul><li>data.attributes.tpeSpec<li>data.attributes.tpeGroupSpecs<li>data.attributes.locations.loc_oid<li>data.attributes.capacityReservations.*<li>data.attributes.syncScopes.*<li>data.relationships.networkConstructAssociation.data.id</ul><p>Specifying a path for the searchFields parameter of an attribute in the following objects will search the parent object for the value specified in searchText: adjacencyPackage, powerPackage, photonicSpectrumPackage, and signalIndex.<p>To specify an expectation path for the searchFields parameter use the prefix \"data.relationships.tpeExpectations.data.*\"", "parameters": [{"description": "(Optional) Comma separated list of TPE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of networkConstruct planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "(Optional) Comma-separated named query id list; The allowed values are: ptpEthernetNoClients, portsL2AvailableAll, portsL2ApplicableEPLUni, portsL2ApplicableEVPLUni, portsL2ApplicableEnni, portsL2ApplicableEPLUniWithMcLag, portsL2ApplicableEVPLUniWithMcLag, portsL2ApplicableEnniWithMcLag, portsTunnelsL2ApplicableAll, portsTunnelsL2ApplicableAllWithFtpIpData, portsTDMCEApplicableAll, channelTxPorts, channelRxPorts, linePorts", "required": false, "type": "string", "name": "namedQuery", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"name": "identifierKey", "items": {"type": "string"}, "required": false, "in": "query", "type": "array", "collectionFormat": "multi"}, {"description": "(Optional) The comma separated identifier value set", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) Id of the concrete tpe", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional)  Flag that enables/disables a link from having additional tunnel BW being consumed", "required": false, "in": "query", "type": "string", "name": "bookingData.lockout"}, {"description": "(optional) The layerRate. When combined with the adjacencyType queryParam, only looks for thespecified list of adjacencyTypes within the specified layerRate.", "required": false, "type": "string", "name": "layerRate", "in": "query"}, {"description": "(optional) The adjacencyType. When combined with the layerRate queryParam, only looks for thespecified list of adjacencyTypes within the specified layerRate.", "required": false, "type": "string", "name": "adjacencyType", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional) The active state of the resource", "required": false, "in": "query", "type": "string", "name": "active"}, {"enum": ["summary", "detail"], "description": "(Optional) The TPE content level", "default": "detail", "required": false, "in": "query", "type": "string", "name": "content"}, {"description": "(Optional) TPE location delimited by dashes", "required": false, "type": "string", "name": "location", "in": "query"}, {"description": "(Optional) Format for the given location; when not given, assume location is [[shelf-]slot-]port", "required": false, "type": "string", "name": "locationFormat", "in": "query"}, {"description": "(Optional) Comma separated list of TPE structure types", "required": false, "type": "string", "name": "structureType", "in": "query"}, {"description": "(Optional) Equipment identifier. In case of usage with limit parameter, paging will be enabled.", "required": false, "type": "string", "name": "equipmentId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "tpeExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "tpeExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) GNE Subnet name of the TPE", "required": false, "type": "string", "name": "gneSubnetName", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of meta data to be included. The allowed values are: stackDirection, layerRate, state, cardType, structureType, structureSubType, resourceState", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, concrete, networkConstructs", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["tpes"], "summary": "Retrieves the TPEs satisfying the query parameters", "operationId": "searchTpes"}}, "/nsi/api/v1/search/equipmentGroups": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentGroupListRO"}}, "500": {"description": "Failed to retrieve the equipment groups with given query parameters.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query param was specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "(Optional) Comma separated list of Equipment group identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) Equipment group name", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) List of Equipment group type", "required": false, "type": "string", "name": "type", "in": "query"}, {"description": "(Optional) List of Equipment group sub type", "required": false, "type": "string", "name": "subType", "in": "query"}, {"description": "(Optional) Comma separated list of equipment identifiers", "required": false, "type": "string", "name": "equipment.id", "in": "query"}, {"description": "(Optional) Equipment Intent Identifier", "required": false, "type": "string", "name": "equipmentGroupExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of resource states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of meta data to be included. The allowed values are: type, subType", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, networkConstructs, discovered, planned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["equipmentGroups"], "summary": "Retrieves equipment groups satisfying the provided parameters", "operationId": "searchEquipmentGroupsV1"}}, "/nsi/api/search/groups": {"get": {"responses": {"200": {"description": "Successfully retrieved the requested Groups.", "schema": {"$ref": "#/definitions/GroupListRO"}}, "500": {"description": "Failed to retrieve the requested Groups.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "(Optional) Comma separated list of Group identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search with, combined with searchText. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) Comma separated list of group names to retrieve", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) Comma separated list of groupTypes to retrieve", "required": false, "type": "string", "name": "groupType", "in": "query"}, {"description": "(Optional) Comma separated list of parentGroups to retrieve", "required": false, "type": "string", "name": "parentGroup", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["groups"], "summary": "Retrieves the Groups satisfying the query parameters", "operationId": "searchGroups"}}, "/nsi/api/search/equipmentGroups": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/EquipmentGroupListRO"}}, "500": {"description": "Failed to retrieve the equipment groups with given query parameters.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query param was specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "(Optional) Comma separated list of Equipment group identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) Equipment group name", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) List of Equipment group type", "required": false, "type": "string", "name": "type", "in": "query"}, {"description": "(Optional) List of Equipment group sub type", "required": false, "type": "string", "name": "subType", "in": "query"}, {"description": "(Optional) Comma separated list of equipment identifiers", "required": false, "type": "string", "name": "equipment.id", "in": "query"}, {"description": "(Optional) Equipment Intent Identifier", "required": false, "type": "string", "name": "equipmentGroupExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of resource states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of meta data to be included. The allowed values are: type, subType", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, networkConstructs, discovered, planned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["equipmentGroups"], "summary": "Retrieves equipment groups satisfying the provided parameters", "operationId": "searchEquipmentGroups"}}, "/nsi/api/search/fres": {"post": {"responses": {"200": {"description": "Successfully retrieved the list of FREs.", "schema": {"$ref": "#/definitions/FreListRO"}}, "500": {"description": "Failed to retrieve the FREs with given query parameter.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "\nNote: when querying by identifiers, the supported syntax is as follows:\n     ?identifierKey=key1,key2,...&identifierValue=value1,value2,...\nFor instance:\n     ?identifierKey=ossLabel&identifierValue=ossLabel", "parameters": [{"description": "(Optional) Comma separated list of FRE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text, (default search Fields are name, layerRate, tpeLocations if searchFields is not specified.)", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search with, combined with searchText. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of fre planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "FRE layer rates in comma separated list The allowed values are: ETHERNET, OTU1, OTU2, OTU2e, OTU3, OTU4, OTUCn, OTSi, OMS, OS, PHY, OTS, FICON, FC, ODU, ODU0, ODU1, ODU2, ODU2e, ODU3, ODU4, ODUCn, DSR, DSR_10GE, DSR_100GE, DSR_ETHERNET, ENCAPSULATION, MPLS, MPLS_PROTECTION, MEDIA, LAG, RS, E1, E3, E1_2M, EC1, DSR_2M, LINE_OC3_STS3_AND_MS_STM1, SECTION_OC3_STS3_AND_RS_STM1, DSR_OC3_STM1, DSR_OC12_STM4, DSR_OC48_STM16, DSR_OC192_STM64, CES_IWF, T1, DSR_1_5M, STS1, STS3C, STS12C, STS24C, STS48C, DS0, DS1, DS3, VT15, VT2, NOT_APPLICABLE, ODUFLEX, OTUg, ODUg, BGP", "required": false, "type": "string", "name": "layerRate", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"enum": ["or", "and"], "description": "(Optional) The logical operator to use when searching Network Construct identifier", "required": false, "in": "query", "type": "string", "name": "networkConstruct.id.operator"}, {"description": "(Optional) Comma separated TPE identifiers for endpoints", "required": false, "type": "string", "name": "tpe.id", "in": "query"}, {"enum": ["or", "and"], "description": "(Optional) The logical operator to use when searching tpeIds", "required": false, "in": "query", "type": "string", "name": "tpe.id.operator"}, {"description": "List of comma separated keys for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "List of comma separated values for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) List of concrete FRE identifiers", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional)  Flag that enables/disables a link from having additional tunnel BW being consumed", "required": false, "in": "query", "type": "string", "name": "bookingData.lockout"}, {"enum": ["dwa", "infrastructure", "packet", "packet_infrastructure", "tdm"], "description": "(Optional, Deprecated) FRE group :<ul><li>dwa for all FREs in OTU4 and all top level FREs in ETHERNET, DSR, DSR_ETHERNET, OTSi(OCH), ODU2, ODU4, ODUCn, OTUCn<li>infrastructure for all FRE-APs representing forwarding constructs between ROADM OTS'<li>packet for all L2 nodal and top level FREs in ETHERNET including infrastructure</ul>", "required": false, "in": "query", "type": "string", "name": "group"}, {"description": "FRE types in comma separated list The allowed values are: explicitRoute, explicitRouteGroup, snc, sncGroup", "required": false, "type": "string", "name": "freType", "in": "query"}, {"description": "User label", "required": false, "type": "string", "name": "userLabel", "in": "query"}, {"description": "Management Name", "required": false, "type": "string", "name": "managementName", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "freExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The identifier indicating type of parent to be returned. If specified, parent matching the criteria will be returned", "required": false, "type": "string", "name": "signalContentType", "in": "query"}, {"description": "(Optional) Find roadmlines by srlg values separated by comma. A roadmline is a FRE between two SAM cards.", "required": false, "type": "string", "name": "srlg", "in": "query"}, {"description": "(Optional) Find services configured over a roadmline based on the roadmline FRE identifier.", "required": false, "type": "string", "name": "roadmLineId", "in": "query"}, {"description": "Concrete TPE identifier for endpoints", "required": false, "type": "string", "name": "endpoint.tpe.concrete", "in": "query"}, {"description": "(Optional) deploymentState parameter used to filter results", "required": false, "type": "string", "name": "deploymentState", "in": "query"}, {"description": "(Optional) Represents the deployment state of the service intent through its life cycle", "required": false, "type": "string", "name": "intentDeploymentStateString", "in": "query"}, {"description": "(Optional) Represents the different phases of the service intent through its life cycle", "required": false, "type": "string", "name": "intentLifeCyclePhaseString", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional) The active state of the resource", "required": false, "in": "query", "type": "string", "name": "active"}, {"enum": ["unidirectional", "bidirectional"], "description": "(Optional) Indicates if unidirectional or bidirectional FREs should be returned", "required": false, "in": "query", "type": "string", "name": "directionality"}, {"enum": ["IFRE", "FREAP", "FREhAP", "ROADMLINE", "IFRECP"], "description": "(Optional) Determines if the FRE participates in an internal or external forwarding view or involves access points or connection points", "required": false, "in": "query", "type": "string", "name": "networkRole"}, {"description": "FRE types in comma separated list. The allowed values are: service, link, roadmline-ap, roadmline", "required": false, "type": "string", "name": "type", "in": "query"}, {"description": "(Optional) Allow filtering on the FRE service class. This parameter accepts a list of comma separated values. The allowed values are: EVC, ETransit, EAccess, VLAN, TDM, Transport Client, Photonic, Tunnel, IP, LLDP, LAG, OTU, ROADM Line, Fiber, SNC , OSRP Link, OSRP Line, SNCP, ICL, Ring", "required": false, "type": "string", "name": "serviceClass", "in": "query"}, {"description": "(Optional) Indicates additional qualification information for a LayerRate. For example, for beyond 100G rates (e.g. OTUCn, ODUCn), defines the n multiplier, or the n-M subrate value.", "required": false, "type": "string", "name": "layerRateQualifier", "in": "query"}, {"description": "(Optional) Retrieves all supported parent FREs (default is one serviceClass/layer level up) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportedByFreId", "in": "query"}, {"enum": ["one", "all"], "description": "(Optional) Used in conjunction with supportedByFreId and controls if only one-level (default) or all parent FREs with a serviceClass are returned", "required": false, "in": "query", "type": "string", "name": "supportedByQualifier"}, {"description": "(Optional) Retrieves all supporting child FREs (one serviceClass/layer level down) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportingFreId", "in": "query"}, {"description": "(Optional) Search for an exact match on customerName", "required": false, "type": "string", "name": "customerName", "in": "query"}, {"description": "(Optional) For Control Plane SNCs only: Retrieves all SNCs provided the parent SNCG userLabel", "required": false, "type": "string", "name": "sncgUserlabel", "in": "query"}, {"description": "(Optional) Allow filtering on FRE Tunnel class service. This parameter accepts a list of comma separated values: dynamic, static", "required": false, "type": "string", "name": "tunnelType", "in": "query"}, {"description": "(Optional) Allow filtering on type of G8032 ring. This parameter accepts a list of comma separated values: major, subring", "required": false, "type": "string", "name": "ringType", "in": "query"}, {"description": "(Optional) Allow filtering on type of G8032 ring completeness. This parameter accepts a list of comma separated values: partial, complete", "required": false, "type": "string", "name": "ringCompleteness", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState. This parameter accepts a list of comma separated values: enabled, disabled, not applicable, In Service, Out of Service", "required": false, "type": "string", "name": "adminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState. This parameter accepts a list of comma separated values: fully operating, not operating, degraded operation, Not Applicable, Undetermined, In Service, Degraded, Out of Service External, Out of Service", "required": false, "type": "string", "name": "operationState", "in": "query"}, {"enum": ["good", "high", "low", "upgrade"], "description": "(Optional) Allow filtering on the LQS status. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.status"}, {"enum": ["true", "false"], "description": "(Optional) The LQS margin validity state", "required": false, "in": "query", "type": "string", "name": "lqsData.margin.valid"}, {"enum": ["true", "false"], "description": "(Optional) The LQS fiber reconciled state", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.reconciled"}, {"enum": ["totalPower", "osc"], "description": "(Optional) Allow filtering on the LQS fiber method. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.method"}, {"description": "(Optional) A list of LQS margin viable at EOL states", "required": false, "type": "string", "name": "lqsData.margin.viableAtEol", "in": "query"}, {"description": "(Optional) Retrieves all correlated FREs that are co-routed and co-terminated with the specified FRE Id", "required": false, "type": "string", "name": "coroutedFreId", "in": "query"}, {"description": "(Optional) Allow filtering on FRE tags. This parameter accepts a list of comma separated strings", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState display string", "required": false, "type": "string", "name": "displayAdminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState display string", "required": false, "type": "string", "name": "displayOperationState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE topologySource display string", "required": false, "type": "string", "name": "displayTopologySource", "in": "query"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) Comma-separated named query id list; The allowed values are: resiliency, tdmServices, topologicalLinks, roadmLineSpan, reusableSNCG, tunnelReplacement, layer1OtuLinks, photonicSncpWorkLegs, relatedFresFull<br><br>tunnelReplacement cannot be used in combination with other named queries<br><br>photonicSncpWorkLegs can not be used alone, networkConstruct.Id must be provided with this named query<br><br>relatedFresFull can not be used alone, freId must be provided with this named query.", "required": false, "type": "string", "name": "namedQuery", "in": "query"}, {"description": "Mandatory when namedQuery relatedFresFull/relatedFresLight is used. This parameter accepts a list of comma separated freIds", "required": false, "type": "string", "name": "namedQueryParam1", "in": "query"}, {"description": "(Optional) Allow filtering on FRE domainTypes. This parameter accepts a list of comma separated values", "required": false, "type": "string", "name": "domainTypes", "in": "query"}, {"description": "(Optional) Allow filtering on FRE domainTypes. This parameter accepts a list of comma separated values: unprotected, partial, protected", "required": false, "type": "string", "name": "resilienceLevel", "in": "query"}, {"description": "(Optional) Retrieves all parent FREs that have the specified FRE as a partition relation", "required": false, "type": "string", "name": "partitionFreIds", "in": "query"}, {"description": "(Optional) Retrieves all parent FREs that have the specified FRE as a decomposed relation", "required": false, "type": "string", "name": "decomposedFreIds", "in": "query"}, {"enum": ["exclude"], "description": "(Optional) Allow filtering of FRE's with facilityBypass tunnels.", "required": false, "in": "query", "type": "string", "name": "facilityBypass"}, {"description": "(Optional) The child FRE identifier to return its parents", "required": false, "type": "string", "name": "childFreId", "in": "query"}, {"description": "(Optional) GNE Subnet name of the FRES", "required": false, "type": "string", "name": "gneSubnetName", "in": "query"}, {"description": "(Optional) Retrieves all FREs that have an inclusion constraint relationship to the specified identifier", "required": false, "type": "string", "name": "routingConstraints.inclusionConstraints.id", "in": "query"}, {"description": "(Optional) Allow filtering on FRE deploymentState display string", "required": false, "type": "string", "name": "displayDeploymentState", "in": "query"}, {"description": "(Optional) List of comma-separated network construct tags that is an endpoint for an FRE", "required": false, "type": "string", "name": "ncTags", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "30", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "MetaData to be included. The allowed values are: layerRate, layerRateQualifier, signalContentType, intentLifeCyclePhaseString, intentDeploymentStateString, serviceClass, sncgUserlabel, adminState, operationState, lqsData.status, lqsData.margin.valid, lqsData.fiber.reconciled, lqsData.fiber.method, lqsData.margin.viableAtEol, displayAdminState, displayOperationState, displayTopologySource, customerName, domainTypes, resilienceLevel, directionality, displayDeploymentState, ringType, ringCompleteness", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: tpes, expectations, networkConstructs, planned, freDiscovered, frePlanned, supportedByFreResiliencyClientTpes", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["fres"], "summary": "Retrieve a list of FREs provided with the satisfying parameters", "consumes": ["application/json"], "operationId": "searchPostFresV2"}, "get": {"responses": {"200": {"description": "Successfully retrieved the list of FREs.", "schema": {"$ref": "#/definitions/FreListRO"}}, "500": {"description": "Failed to retrieve the FREs with given query parameter.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "\nNote: when querying by identifiers, the supported syntax is as follows:\n     ?identifierKey=key1,key2,...&identifierValue=value1,value2,...\nFor instance:\n     ?identifierKey=ossLabel&identifierValue=ossLabel", "parameters": [{"description": "(Optional) Comma separated list of FRE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text, (default search Fields are name, layerRate, tpeLocations if searchFields is not specified.)", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search with, combined with searchText. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of fre planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "FRE layer rates in comma separated list. The allowed values are: ETHERNET, OTU1, OTU2, OTU2e, OTU3, OTU4, OTUCn, OTSi, OMS, OS, PHY, OTS, FICON, FC, ODU, ODU0, ODU1, ODU2, ODU2e, ODU3, ODU4, ODUCn, DSR, DSR_10GE, DSR_100GE, DSR_ETHERNET, ENCAPSULATION, MPLS, MPLS_PROTECTION, MEDIA, LAG, RS, E1, E3, E1_2M, EC1, DSR_2M, LINE_OC3_STS3_AND_MS_STM1, SECTION_OC3_STS3_AND_RS_STM1, DSR_OC3_STM1, DSR_OC12_STM4, DSR_OC48_STM16, DSR_OC192_STM64, CES_IWF, T1, DSR_1_5M, STS1, STS3C, STS12C, STS24C, STS48C, DS0, DS1, DS3, VT15, VT2, NOT_APPLICABLE, ODUFLEX, OTUg, ODUg, BGP", "required": false, "type": "string", "name": "layerRate", "in": "query"}, {"description": "(Optional) Comma separated Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"enum": ["or", "and"], "description": "(Optional) The logical operator to use when searching Network Construct identifiers", "required": false, "in": "query", "type": "string", "name": "networkConstruct.id.operator"}, {"description": "(Optional) Comma separated TPE identifier for endpoints", "required": false, "type": "string", "name": "tpe.id", "in": "query"}, {"enum": ["or", "and"], "description": "(Optional) The logical operator to use when searching tpeIds", "required": false, "in": "query", "type": "string", "name": "tpe.id.operator"}, {"description": "List of comma separated keys for an identifer object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "List of comma separated values for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) List of concrete FRE identifiers", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional)  Flag that enables/disables a link from having additional tunnel BW being consumed", "required": false, "in": "query", "type": "string", "name": "bookingData.lockout"}, {"enum": ["dwa", "infrastructure", "packet", "packet_infrastructure", "tdm"], "description": "(Optional, Deprecated) FRE group :<ul><li>dwa for all FREs in OTU4 and all top level FREs in ETHERNET, DSR, DSR_ETHERNET, OTSi(OCH), ODU2, ODU4, ODUCn, OTUCn<li>infrastructure for all FRE-APs representing forwarding constructs between ROADM OTS'<li>packet for all L2 nodal and top level FREs in ETHERNET including infrastructure</ul>", "required": false, "in": "query", "type": "string", "name": "group"}, {"description": "FRE types in comma separated list The allowed values are: explicitRoute, explicitRouteGroup, snc, sncGroup", "required": false, "type": "string", "name": "freType", "in": "query"}, {"description": "User label", "required": false, "type": "string", "name": "userLabel", "in": "query"}, {"description": "Management Name", "required": false, "type": "string", "name": "managementName", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "freExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The identifier indicating type of parent to be returned. If specified, parent matching the criteria will be returned", "required": false, "type": "string", "name": "signalContentType", "in": "query"}, {"description": "(Optional) Find roadmlines by srlg values separated by comma. A roadmline is a FRE between two SAM cards.", "required": false, "type": "string", "name": "srlg", "in": "query"}, {"description": "(Optional) Find services configured over a roadmline based on the roadmline FRE identifier.", "required": false, "type": "string", "name": "roadmLineId", "in": "query"}, {"description": "Concrete TPE identifier for endpoints", "required": false, "type": "string", "name": "endpoint.tpe.concrete", "in": "query"}, {"description": "(Optional) deploymentState parameter used to filter results", "required": false, "type": "string", "name": "deploymentState", "in": "query"}, {"description": "(Optional) Represents the deployment state of the service intent through its life cycle", "required": false, "type": "string", "name": "intentDeploymentStateString", "in": "query"}, {"description": "(Optional) Represents the different phases of the service intent through its life cycle", "required": false, "type": "string", "name": "intentLifeCyclePhaseString", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional) The active state of the resource", "required": false, "in": "query", "type": "string", "name": "active"}, {"enum": ["unidirectional", "bidirectional"], "description": "(Optional) Indicates if unidirectional or bidirectional FREs should be returned", "required": false, "in": "query", "type": "string", "name": "directionality"}, {"enum": ["IFRE", "FREAP", "FREhAP", "ROADMLINE", "IFRECP"], "description": "(Optional) Determines if the FRE participates in an internal or external forwarding view or involves access points or connection points", "required": false, "in": "query", "type": "string", "name": "networkRole"}, {"description": "FRE types in comma separated list. The allowed values are: service, link, roadmline-ap, roadmline", "required": false, "type": "string", "name": "type", "in": "query"}, {"description": "(Optional) Allow filtering on the FRE service class. This parameter accepts a list of comma separated values. The allowed values are: EVC, ETransit, EAccess, VLAN, TDM, Transport Client, Photonic, Tunnel, IP, LLDP, LAG, OTU, ROADM Line, Fiber, SNC , OSRP Link, OSRP Line, SNCP, ICL, Ring", "required": false, "type": "string", "name": "serviceClass", "in": "query"}, {"description": "(Optional) Indicates additional qualification information for a LayerRate. For example, for beyond 100G rates (e.g. OTUCn, ODUCn), defines the n multiplier, or the n-M subrate value.", "required": false, "type": "string", "name": "layerRateQualifier", "in": "query"}, {"description": "(Optional) Retrieves all supported parent FREs (default is one serviceClass/layer level up) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportedByFreId", "in": "query"}, {"enum": ["one", "all"], "description": "(Optional) Used in conjunction with supportedByFreId and controls if only one-level (default) or all parent FREs with a serviceClass are returned", "required": false, "in": "query", "type": "string", "name": "supportedByQualifier"}, {"description": "(Optional) Retrieves all supporting child FREs (one serviceClass/layer level down) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportingFreId", "in": "query"}, {"description": "(Optional) Search for an exact match on customerName", "required": false, "type": "string", "name": "customerName", "in": "query"}, {"description": "(Optional) For Control Plane SNCs only: Retrieves all SNCs provided the parent SNCG userLabel", "required": false, "type": "string", "name": "sncgUserlabel", "in": "query"}, {"description": "(Optional) Allow filtering on FRE Tunnel class service. This parameter accepts a list of comma separated values: dynamic, static", "required": false, "type": "string", "name": "tunnelType", "in": "query"}, {"description": "(Optional) Allow filtering on type of G8032 ring. This parameter accepts a list of comma separated values: majorRing, subRing", "required": false, "type": "string", "name": "ringType", "in": "query"}, {"description": "(Optional) Allow filtering on type of G8032 ring completeness. This parameter accepts a list of comma separated values: partial, complete", "required": false, "type": "string", "name": "ringCompleteness", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState. This parameter accepts a list of comma separated values: enabled, disabled, not applicable, In Service, Out of Service", "required": false, "type": "string", "name": "adminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState. This parameter accepts a list of comma separated values: fully operating, not operating, degraded operation, Not Applicable, Undetermined, In Service, Degraded, Out of Service External, Out of Service", "required": false, "type": "string", "name": "operationState", "in": "query"}, {"enum": ["good", "high", "low", "upgrade"], "description": "(Optional) Allow filtering on the LQS status. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.status"}, {"enum": ["true", "false"], "description": "(Optional) The LQS margin validity state", "required": false, "in": "query", "type": "string", "name": "lqsData.margin.valid"}, {"enum": ["true", "false"], "description": "(Optional) The LQS fiber reconciled state", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.reconciled"}, {"enum": ["totalPower", "osc"], "description": "(Optional) Allow filtering on the LQS fiber method. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.method"}, {"description": "(Optional) A list of LQS margin viable at EOL states", "required": false, "type": "string", "name": "lqsData.margin.viableAtEol", "in": "query"}, {"description": "(Optional) Retrieves all correlated FREs that are co-routed and co-terminated with the specified FRE Id", "required": false, "type": "string", "name": "coroutedFreId", "in": "query"}, {"description": "(Optional) Allow filtering on FRE tags. This parameter accepts a list of comma separated strings", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState display string", "required": false, "type": "string", "name": "displayAdminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState display string", "required": false, "type": "string", "name": "displayOperationState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE topologySource display string", "required": false, "type": "string", "name": "displayTopologySource", "in": "query"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) Comma-separated named query id list; The allowed values are: resiliency, tdmServices, topologicalLinks, roadmLineSpan, reusableSNCG, tunnelReplacement, layer1OtuLinks, photonicSncpWorkLegs, relatedFresFull, relatedFresLight<br><br>tunnelReplacement cannot be used in combination with other named queries<br><br>photonicSncpWorkLegs can not be used alone, networkConstruct.Id must be provided with this named query<br><br>relatedFresFull can not be used alone, namedQueryParam1  must be provided with this named query.<br><br>relatedFresLight can not be used alone, namedQueryParam1  must be provided with this named query.", "required": false, "type": "string", "name": "namedQuery", "in": "query"}, {"description": "Mandatory when namedQuery relatedFresFull/relatedFresLight is used. This parameter accepts a list of comma separated freIds", "required": false, "type": "string", "name": "namedQueryParam1", "in": "query"}, {"description": "(Optional) Allow filtering on FRE domainTypes. This parameter accepts a list of comma separated values", "required": false, "type": "string", "name": "domainTypes", "in": "query"}, {"description": "(Optional) Allow filtering on FRE domainTypes. This parameter accepts a list of comma separated values: unprotected, partial, protected", "required": false, "type": "string", "name": "resilienceLevel", "in": "query"}, {"description": "(Optional) Retrieves all parent FREs that have the specified FRE as a partition relation", "required": false, "type": "string", "name": "partitionFreIds", "in": "query"}, {"description": "(Optional) Retrieves all parent FREs that have the specified FRE as a decomposed relation", "required": false, "type": "string", "name": "decomposedFreIds", "in": "query"}, {"enum": ["exclude"], "description": "(Optional) Allow filtering of FRE's with facilityBypass tunnels.", "required": false, "in": "query", "type": "string", "name": "facilityBypass"}, {"description": "(Optional) The child FRE identifier to return its parents", "required": false, "type": "string", "name": "childFreId", "in": "query"}, {"description": "(Optional) GNE Subnet name of the FRE", "required": false, "type": "string", "name": "gneSubnetName", "in": "query"}, {"description": "(Optional) Retrieves all FREs that have an inclusion constraint relationship to the specified identifier", "required": false, "type": "string", "name": "routingConstraints.inclusionConstraints.id", "in": "query"}, {"description": "(Optional) Allow filtering on FRE deploymentState display string", "required": false, "type": "string", "name": "displayDeploymentState", "in": "query"}, {"description": "(Optional) List of comma-separated network construct tags that is an endpoint for an FRE", "required": false, "type": "string", "name": "ncTags", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "30", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "MetaData to be included. The allowed values are: layerRate, layerRateQualifier, signalContentType, intentLifeCyclePhaseString, intentDeploymentStateString, serviceClass, sncgUserlabel, adminState, operationState, lqsData.status, lqsData.margin.valid, lqsData.fiber.reconciled, lqsData.fiber.method, lqsData.margin.viableAtEol, displayAdminState, displayOperationState, displayTopologySource, customerName, domainTypes, resilienceLevel, directionality, displayDeploymentState, ringType, ringCompleteness", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: tpes, expectations, networkConstructs, planned, freDiscovered, frePlanned, supportedByFreResiliencyClientTpes", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["fres"], "summary": "Retrieve a list of FREs provided with the satisfying parameters", "operationId": "searchFres"}}, "/nsi/api/v1/search/networkConstructs": {"get": {"responses": {"200": {"description": "List of Network Constructs", "schema": {"$ref": "#/definitions/NetworkConstructListRO"}}, "404": {"description": "Unable to retrieve all network elements"}, "500": {"description": "Retrieval of network constructs failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Discovered Network Constructs returned as a JSON list of Network Construct objects. \nNote: When querying using identifiers, the supported syntax is as follows: \n   ?identifierKey=key1,key2,...&identifierValue=value1,value2,... \nFor instance, \n   ?identifierKey=subnetName&identifierValue=PV0438A---PV0428D---SUBNET", "parameters": [{"description": "(Optional) List of networkConstruct Ids", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of networkConstruct planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "(Optional) List of Management Session Ids", "required": false, "type": "string", "name": "sessionId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) Physical location id", "required": false, "type": "string", "name": "physicalLocationId", "in": "query"}, {"description": "(Optional) List of device name values", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) List of device displayName values", "required": false, "type": "string", "name": "displayName", "in": "query"}, {"description": "The identifier key list", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "The identifier value list", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) Id of the concrete networkConstruct", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"description": "(Optional) Ip Address of Network Construct", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "(Optional) List of Network Construct types. The allowed values are: networkElement, shelf, osrpNode, manual, branchingUnit, submarineRepeater", "required": false, "type": "string", "name": "networkConstructType", "in": "query"}, {"description": "(Optional) List of networkConstruct resourceTypes", "required": false, "type": "string", "name": "resourceType", "in": "query"}, {"description": "(Optional) List of networkConstruct associationStates. The allowed values are: GOA, LOA", "required": false, "type": "string", "name": "associationState", "in": "query"}, {"description": "(Optional) List of networkConstruct syncStates. The allowed values are: notSynchronized, synchronizing, synchronized, failed, timeout, aborted, deleting, deleteFailed", "required": false, "type": "string", "name": "syncState", "in": "query"}, {"description": "(Optional) List of networkConstruct software versions", "required": false, "type": "string", "name": "softwareVersion", "in": "query"}, {"description": "(Optional) List of networkConstruct syncStates. The allowed values are: planned, notSynchronized, synchronizing, synchronized, failed, pending, deleting, timeout", "required": false, "type": "string", "name": "displaySyncState", "in": "query"}, {"description": "(Optional) The subnet name list", "required": false, "type": "string", "name": "subnetName", "in": "query"}, {"description": "(Optional) macAddress parameter used to filter results", "required": false, "type": "string", "name": "macAddress", "in": "query"}, {"description": "(Optional) List of networkConstruct typeGroups", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "(Optional)  slteType parameter used to filter results. The allowed values are: SLTE", "required": false, "type": "string", "name": "slteType", "in": "query"}, {"description": "(Optional) List of resourcePartitionInfo", "required": false, "type": "string", "name": "resourcePartitionInfo", "in": "query"}, {"description": "(Optional) Allow filtering on NC tags. This parameter accepts a list of comma separated strings", "required": false, "type": "string", "name": "tags", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional) List of networkConstruct based on BGP RRConfiguration.", "required": false, "in": "query", "type": "string", "name": "rrConfigured"}, {"description": "(Optional) Comma-separated named query id list; The allowed values are: OADMCapabilityNodes, OADMCapabilityNodesV2", "required": false, "type": "string", "name": "namedQuery", "in": "query"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) Association state qualifier. The allowed values are: MANUAL, SYSTEM, NETWORK", "required": false, "type": "string", "name": "associationStateQualifier", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of meta data to be included. The allowed values are: resourceType, associationState, syncState, networkConstructType, resourceState, softwareVersion, displaySyncState, tags, subnetName, associationStateQualifier, resourcePartitionInfo", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, physicalLocation, parentNetworkConstruct, networkConstructDiscovered, networkConstructPlanned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["networkConstructs"], "summary": "Get list of discovered Network Construct(s) satisfying the query parameters", "operationId": "searchNcsV1"}}, "/nsi/api/search/networkConstructs": {"get": {"responses": {"200": {"description": "List of Network Constructs", "schema": {"$ref": "#/definitions/NetworkConstructListRO"}}, "404": {"description": "Unable to retrieve all network elements"}, "500": {"description": "Retrieval of network constructs failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Discovered Network Constructs returned as a JSON list of Network Construct objects. \nNote: When querying using identifiers, the supported syntax is as follows: \n   ?identifierKey=key1,key2,...&identifierValue=value1,value2,... \nFor instance, \n   ?identifierKey=subnetName&identifierValue=PV0438A---PV0428D---SUBNET", "parameters": [{"description": "(Optional) List of networkConstruct Ids", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of networkConstruct planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "(Optional) List of Management Session Ids", "required": false, "type": "string", "name": "sessionId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) Physical location id", "required": false, "type": "string", "name": "physicalLocationId", "in": "query"}, {"description": "(Optional) List of device name values", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) List of device displayName values", "required": false, "type": "string", "name": "displayName", "in": "query"}, {"description": "The identifier key list", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "The identifier value list", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) Id of the concrete networkConstruct", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"description": "(Optional) Ip Address of Network Construct", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "(Optional) List of Network Construct types. The allowed values are: networkElement, shelf, osrpNode", "required": false, "type": "string", "name": "networkConstructType", "in": "query"}, {"description": "(Optional) List of networkConstruct resourceTypes", "required": false, "type": "string", "name": "resourceType", "in": "query"}, {"description": "(Optional) List of networkConstruct associationStates. The allowed values are: GOA, LOA", "required": false, "type": "string", "name": "associationState", "in": "query"}, {"description": "(Optional) List of networkConstruct syncStates. The allowed values are: notSynchronized, synchronizing, synchronized, failed, aborted, deleting, deleteFailed", "required": false, "type": "string", "name": "syncState", "in": "query"}, {"description": "(Optional) List of networkConstruct software versions", "required": false, "type": "string", "name": "softwareVersion", "in": "query"}, {"description": "(Optional) List of networkConstruct syncStates. The allowed values are: planned, notSynchronized, synchronizing, synchronized, failed, pending, deleting", "required": false, "type": "string", "name": "displaySyncState", "in": "query"}, {"description": "(Optional) The subnet name list", "required": false, "type": "string", "name": "subnetName", "in": "query"}, {"description": "(Optional) macAddress parameter used to filter results", "required": false, "type": "string", "name": "macAddress", "in": "query"}, {"description": "(Optional) List of networkConstruct typeGroups", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "(Optional)  slteType parameter used to filter results. The allowed values are: SLTE", "required": false, "type": "string", "name": "slteType", "in": "query"}, {"description": "(Optional) List of resourcePartitionInfo", "required": false, "type": "string", "name": "resourcePartitionInfo", "in": "query"}, {"description": "(Optional) Allow filtering on NC tags. This parameter accepts a list of comma separated strings", "required": false, "type": "string", "name": "tags", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional) List of networkConstruct based on BGP RRConfiguration.", "required": false, "in": "query", "type": "string", "name": "rrConfigured"}, {"description": "(Optional) Comma-separated named query id list; The allowed values are: OADMCapabilityNodes, OADMCapabilityNodesV2", "required": false, "type": "string", "name": "namedQuery", "in": "query"}, {"description": "(Optional) Minimum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMin", "in": "query"}, {"description": "(Optional) Maximum value of startDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "startDateMax", "in": "query"}, {"description": "(Optional) Minimum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMin", "in": "query"}, {"description": "(Optional) Maximum value of endDate, format is: yyyy-MM-dd'T'HH:mm:ss.SSSZ", "required": false, "type": "string", "name": "endDateMax", "in": "query"}, {"description": "(Optional) Association state qualifier. The allowed values are: MANUAL, SYSTEM, NETWORK", "required": false, "type": "string", "name": "associationStateQualifier", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of meta data to be included. The allowed values are: resourceType, associationState, syncState, networkConstructType, resourceState, softwareVersion, displaySyncState, tags, subnetName, associationStateQualifier, resourcePartitionInfo", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of meta data options. The allowed values are: absoluteTotals", "required": false, "type": "string", "name": "metaDataQualifiers", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, physicalLocation, parentNetworkConstruct, networkConstructDiscovered, networkConstructPlanned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["networkConstructs"], "summary": "Get list of discovered Network Construct(s) satisfying the query parameters", "operationId": "searchNcs"}}, "/nsi/api/v1/search/groups": {"get": {"responses": {"200": {"description": "Successfully retrieved the list of Groups.", "schema": {"$ref": "#/definitions/GroupListRO"}}, "500": {"description": "Failed to retrieve the Groups with given query parameter.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "(Optional) Comma separated list of Group identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search with, combined with searchText. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) Comma separated list of group names to retrieve", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) Comma separated list of groupTypes to retrieve", "required": false, "type": "string", "name": "groupType", "in": "query"}, {"description": "(Optional) Comma separated list of parentGroups to retrieve", "required": false, "type": "string", "name": "parentGroup", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["groups"], "summary": "Retrieve a list of Groups provided with the satisfying parameters", "operationId": "getGroups"}}}, "schemes": ["http", "https"], "tags": [{"name": "000 - nsiapisearch", "description": "Search inventory resources<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "998 - nsiapiv2search", "description": "Search inventory resources (version 2)"}, {"name": "999 - nsiapiv1search", "description": "Search inventory resources (version 1)"}, {"name": "equipment"}, {"name": "equipmentGroups"}, {"name": "fres"}, {"name": "groups"}, {"name": "networkConstructs"}, {"name": "tpes"}], "definitions": {"Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "MbbHistoryEntryRO": {"type": "object", "properties": {"reason": {"type": "string", "description": "Reason of the make-before-break"}, "endTime": {"type": "string", "description": "End time of the make-before-break happened"}, "result": {"type": "string", "description": "Result of the make-before-break"}, "startTime": {"type": "string", "description": "Start time of the make-before-break happened"}}}, "ConnectionRuleRO": {"type": "object", "properties": {"immediateClientPotential": {"type": "string", "description": "If describing connectionRulesInAdaptationLayer: names of TPESpec of immediate client TPE. If describing connectionRulesInOwnLayer: null (not relevant). If describing mustConnectInternally: null (not relevant)."}, "immediateDualPortPeerPotential": {"type": "string", "description": "If describing connectionRulesInAdaptationLayer: names of TPESpec of dual port peer TPE. If describing connectionRulesInOwnLayer: null (not relevant). If describing mustConnectInternally: null (not relevant)."}, "targetLayer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "rule": {"enum": ["mustConnectInternally", "clientExternalFGRule", "connectsExternally", "toServerUsingClientExternalFGRule", "externalFGRule", "externalFGRuleViaImmediateClientPotential", "toDualPortPeerUsingClientExternalFGRule", "transitionalAtCreationTime"], "type": "string", "description": "toServerUsingClientExternalFGRule matchers server's clientExternalFGRule"}}}, "GroupPackageRO": {"type": "object", "properties": {"aid": {"type": "string", "description": "AID of the participating sncs something like aidSnc1:aidSnc2"}, "groupId": {"type": "string", "description": "UUID of the group it will be set once Group is created by NSI"}, "groupToBeCreated": {"default": false, "type": "boolean", "description": " flag to indicate that Group needs to be created"}}}, "BgpMsgsRO": {"type": "object", "properties": {"peerInTotalMessages": {"type": "string", "description": "Total Number of peer messages"}, "peerInUpdateElapsedTime": {"type": "string", "description": "Peer updated elapsed time in seconds"}, "peerOutUpdates": {"type": "string", "description": "Number of peer out updates"}, "peerInUpdates": {"type": "string", "description": "Number of peer in updates"}, "lastError": {"description": "This stores BGP Message Last Error related information.", "$ref": "#/definitions/MsgsLastErrorRO"}, "peerOutTotalMessages": {"type": "string", "description": "Total number of peer out messages"}}}, "TpeResiliencyPackageRO": {"type": "object", "properties": {"role": {"enum": ["Protected", "Working", "Protecting"], "type": "string", "description": "the role of the tpe"}, "resiliencyType": {"enum": ["TPT", "OPS"], "type": "string", "description": "resiliencyType"}}}, "BookingDataRO": {"type": "object", "properties": {"bookingFactor": {"type": "string", "description": "The factor that dictates how much overbooking is allowed."}, "assignedBandwidth": {"type": "string", "description": "The bandwidth assigned to the link."}, "assignedBandwidthUnit": {"type": "string", "description": "The unit of the bandwidth assigned to the link."}, "bandwidthLockout": {"default": false, "type": "boolean", "description": "Flag that enables/disables a link from having additional tunnel BW being consumed."}}}, "NetworkConstructAttributesRO": {"type": "object", "properties": {"l2Data": {"items": {"$ref": "#/definitions/L2DataRO"}, "type": "array", "description": "It represents the L2 Configuration Data on the NE."}, "macAddress": {"type": "string", "description": "MAC address of the device."}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the NE belongs to."}, "memberFunction": {"enum": ["ILA", "DGE", "ROADM"], "type": "string", "description": "Member function of the network construct."}, "shelfType": {"enum": ["ILA", "DGE"], "type": "string", "description": "Shelf type of the network construct."}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "displayData": {"$ref": "#/definitions/NetworkConstructDisplayDataRO"}, "softwareImage": {"type": "string", "description": "Software image"}, "longName": {"type": "string", "description": "Extended name of the Network Construct"}, "accessIdentifier": {"type": "string", "description": "AID of the device, i.e. for 6500 shelf : SHELF-n."}, "associationStateQualifier": {"enum": ["MANUAL", "SYSTEM", "NETWORK"], "type": "string", "description": "How the associationState has been set."}, "associationStateQualifierReason": {"type": "string", "description": "Reason for going into maintenance mode."}, "numberOfShelves": {"type": "integer", "description": "Number of shelves (primary + member shelves in case of TIDc)", "format": "int32"}, "typeGroup": {"type": "string", "description": "Resource adapter type group."}, "deviceType": {"type": "string", "description": "Device Type."}, "networkConstructType": {"enum": ["networkElement", "shelf", "osrpNode", "manual", "branchingUnit", "submarineRepeater", "unknown"], "type": "string", "description": "The type of network construct. It is used to represent the physical hierarchy of a network element."}, "capabilitySpecRef": {"type": "string", "description": "Name of the file which contains the constraint rules of the network device."}, "syncState": {"$ref": "#/definitions/SyncStateRO"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "ipCommunicationDetails": {"description": "IP communications data for the network construct", "$ref": "#/definitions/IPCommunicationDetailsRO"}, "tags": {"items": {"type": "string"}, "type": "array", "description": "A list of tags for a given NC."}, "associationState": {"enum": ["GOA", "LOA"], "type": "string", "description": "Association state of the network construct."}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "softwareType": {"type": "string", "description": "Software type (e.g. OCP)"}, "associationStateLastUpdatedTime": {"type": "string", "description": "Date at which we last changed association state."}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "geoLocation": {"description": "The geography location of the device", "$ref": "#/definitions/GeoLocationRO"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "name": {"type": "string", "description": "Name (e.g. TID) of the Network Construct"}, "resourceType": {"type": "string", "description": "Resource Type."}, "serialNumber": {"type": "string", "description": "Serial number (e.g. NNTMHQDP0001)"}, "softwareVersion": {"type": "string", "description": "Software version running in the device."}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePoliciesRO"}, "subnetName": {"type": "string", "description": "Subnet name (e.g. ROADM1---ROADM2---SUBNET)"}, "ipAddress": {"type": "string", "description": "IP address of the network construct."}, "deviceVersion": {"type": "string", "description": "Device version (e.g. 6500 32-SLOT OPTICAL)"}}}, "TpeAttributesRO": {"type": "object", "properties": {"displayAlias": {"type": "string", "description": "The displayAlias of the TPE"}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "lifeCycleOwner": {"type": "string", "description": "Specifies who owns the lifecycle of a TPE"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array"}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "displayData": {"$ref": "#/definitions/TpeDisplayDataRO"}, "customerCode": {"type": "string", "description": "Customer code"}, "parentEBBWConstraintList": {"items": {"$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "type": "array", "description": "A list of Virtual TPEs as BW constraint."}, "cardMode": {"enum": ["maxReach", "maxCapacity", "undetermined"], "type": "string", "description": "Provides a means to differentiate different configurations of the card setup. For example, WLAi 400G OTR has several configuration options for 400G line service rate."}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "category": {"enum": ["CHANNEL_TX", "CHANNEL_RX", "OTN_ACCESS"], "type": "string"}, "resiliencyHandlingPackage": {"items": {"$ref": "#/definitions/ResiliencyHandlingPackageRO"}, "type": "array", "description": " triggers stitcher building resiliency view and NSI updating layerRate in resiliency view"}, "structureType": {"enum": ["PTP", "FTP", "CTP_SERVER_TO_CLIENT", "CTP_CLIENT_TO_SERVER", "CTP_CLIENT_TO_CLIENT", "CTP_SERVER_TO_DOMAIN"], "type": "string"}, "fgiSpecificationRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance.  E.g 'May_Comment:1.0.0:1234'"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the TPE"}, "parentEBFREBWConstraintList": {"items": {"$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "type": "array", "description": "A list of Virtual TPEs as FRE constraint."}, "userLabel": {"type": "string", "description": "The label given to the TPE by an user"}, "state": {"enum": ["IS", "OOS", "OOS_AUMA"], "type": "string", "description": "State of the TPE."}, "availableCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "dynamicFgiSpecificationRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of dynamic Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance.  E.g 'May_Comment:1.0.0:1234'"}, "roadmLine": {"type": "string"}, "bookingData": {"description": "Bandwidth booking data", "$ref": "#/definitions/BookingDataRO"}, "layerTerminations": {"items": {"$ref": "#/definitions/LayerTerminationRO"}, "type": "array"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "tpeGroupSpecs": {"items": {"type": "string"}, "type": "array", "description": "Names of TPEGSpec-s this TPE belongs to. FUTURE: enumerated value, part of TPEGSpec catalog."}, "resiliencyPackage": {"description": "The resiliency package contains attributes only appear in resiliency view.", "$ref": "#/definitions/TpeResiliencyPackageRO"}, "provisioningAttributes": {"description": "Indicates attributes that are used solely in the provisioning workflow. These attributes would not be reported on discovery, but aid in the provisioning workflow.", "$ref": "#/definitions/ProvisioningAttributesRO"}, "capabilitySpecification": {"description": "Defines a capability specification; normally for a TPE but can be utilized elsewhere in the future.", "$ref": "#/definitions/CapabilitySpecRO"}, "cardType": {"type": "string"}, "gneSubnetName": {"type": "string", "description": "The GNE Subnet Name of the TPE"}, "capacityReservations": {"items": {"$ref": "#/definitions/CapacityReservationRO"}, "type": "array"}, "plannedEndpointRole": {"enum": ["drop", "source"], "type": "string", "description": "The role that this end point plays for multicast FRE."}, "parentEBFREBWConstraint": {"description": "Virtual TPe reference for constraints update", "$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "active": {"default": false, "type": "boolean", "description": "An indicator to flag when a TPE is active, or simply a potential."}, "nativeName": {"type": "string", "description": "The name of the TPE that is native to the network element"}, "stackDirection": {"enum": ["client_to_server", "server_to_client", "bidirectional", "horizontal_unidirectional", "unknown"], "type": "string"}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "stitchingTriggers": {"$ref": "#/definitions/StitchingTriggersRO"}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "tpeSpec": {"type": "string", "description": "Name of TPESpec describing this TPE instance. FUTURE: enumerated value, part of TPESpec catalog."}, "structureSubType": {"enum": ["osrpLink", "osrpLine", "regen"], "type": "string"}, "parentEBBWConstraint": {"description": "Virtual TPe reference for constraints update", "$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePoliciesRO"}, "owningServerTpeListType": {"enum": ["uniDecomposed", "inverseMux", "none"], "type": "string", "description": "Owning server tpe list type."}}}, "FreCfmPackageRO": {"type": "object", "properties": {"ccmIntervalUnit": {"type": "string", "description": "The unit of interval between transmitting each message (e.g.: seconds)"}, "ccmPriority": {"type": "string", "description": "Priority of the CC messages (0-7)"}, "ccmInterval": {"type": "string", "description": "The interval between transmitting each message (e.g.: 1)"}, "ccmTransmitState": {"enum": ["ON", "OFF", "PARTIAL"], "type": "string", "description": "The transmission state of CCM (on/off)"}, "cfmOperState": {"enum": ["ENABLED", "DISABLED", "PARTIAL"], "type": "string", "description": "The operational state (enabled/disabled/partial)"}, "mdName": {"type": "string", "description": "The name of the maintenance domain"}, "maFormat": {"type": "string", "description": "The format of the maintenance association name"}, "cfmAdminState": {"enum": ["ENABLED", "DISABLED", "PARTIAL"], "type": "string", "description": "The administrative state (enabled/disabled/partial)"}, "cfmServiceName": {"type": "string", "description": "The name of the CFM service"}, "megId": {"type": "string", "description": "The ID of the maintenance entity group"}, "mdLevel": {"type": "string", "description": "The level of the maintenance domain (0-7)"}, "mdFormat": {"type": "string", "description": "The format of the maintenance domain name"}, "maName": {"type": "string", "description": "The name of the maintenance association"}}}, "BgpPackageRO": {"type": "object", "properties": {"routerId": {"type": "string", "description": "Router Id configured on the Node."}, "as": {"type": "integer", "description": "AS number assigned to the Node/EquipmentGroup", "format": "int64"}, "rrConfig": {"description": "Holds RR Configuration.", "$ref": "#/definitions/RRConfigRO"}}}, "LifeCycleRuleRO": {"type": "object", "properties": {"autoDeletedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto deleted by the network and/or device (true) or must it explicitly be created (false)."}, "autoCreatedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto created by the network and/or device (true) or must it explicitly be created (false)."}}}, "ControlPlanePackageRO": {"type": "object", "properties": {"sncRole": {"enum": ["WORKING", "PROTECT"], "type": "string", "description": "Role of SNC i.e WORKING or PROTECT"}, "configuredLatencyType": {"enum": ["disc", "manual"], "type": "string", "description": "Describe whether the latency is discovered or  manual."}, "grouped": {"default": false, "type": "boolean"}, "exclusiveRouting": {"default": false, "type": "boolean"}, "regroomAllowed": {"default": false, "type": "boolean", "description": "Indicates if re-groom operation can be performed on this SNC."}, "sncType": {"enum": ["DYNAMIC", "PERMANENT"], "type": "string"}, "rhpEnabled": {"default": false, "type": "boolean", "description": "Retain Home Path capability for the SNC."}, "ovpnIds": {"items": {"type": "string"}, "type": "array", "description": "The primary optical virtual private network ID list"}, "secOvpnIds": {"items": {"type": "string"}, "type": "array", "description": "The secondary optical virtual private network ID list"}, "meshRestorable": {"default": false, "type": "boolean"}, "sncpPackage": {"description": "Defines SNCP peer information", "$ref": "#/definitions/SncpPackageRO"}, "integrityCheckEnabled": {"enum": ["YES", "NO"], "type": "string", "description": "This parameter indicates the SnIC Admin State for a SNC. It can be yes or no to enable or disable SnIC on a SNC."}, "backOffPeriod": {"type": "integer", "description": "Back-off period for retrying SNC setup", "format": "int32"}}}, "PowerPackageRO": {"type": "object", "properties": {"txMaxPower": {"type": "string", "description": "Maximum transmitter power level (dBm)."}, "rxActualPower": {"type": "string", "description": "Current receiver power (dBm)."}, "rxMinPower": {"type": "string", "description": "Minimum receiver power level (dBm)."}, "txActualPower": {"type": "string", "description": "Current transmitter power (dBm)."}, "txMinPower": {"type": "string", "description": "Minimum transmitter power level (dBm)."}, "rxMaxPower": {"type": "string", "description": "Maximum receiver power level (dBm)."}}}, "AssociationObjectAttributesRO": {"type": "object", "properties": {"associations": {"items": {"$ref": "#/definitions/AssociationRO"}, "type": "array", "description": "List of associations"}}}, "FreBgpPackageRO": {"type": "object", "properties": {"sessionState": {"enum": ["IDLE", "CONNECT", "ACTIVE", "OPENSENT", "OPENCONFIRM", "ESTABLISHED"], "type": "string", "description": "BGP states"}, "protocolVersion": {"type": "string", "description": "Lower of negotiatedBgpVersion reported on both BGP CTP's."}, "sessionType": {"enum": ["IBGP", "EBGP"], "type": "string", "description": "IBGP/EBGP depending on peerAs number is same as local or different."}}}, "TpeRelationshipsRO": {"type": "object", "properties": {"ownedPeerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "configurationAndSwitchControl": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "partnerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "tpePlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "controller": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "owningPeerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipment": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "owningClientTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstructAssociation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "tpeDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "tpeExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "clientTpes": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "owningServerTpeList": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "owningServerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "FreDisplayDataRO": {"type": "object", "properties": {"sncgUserlabel": {"type": "string", "description": "For ControlPlane SNCs only, the userlabel of the parent SNC group"}, "displayPhotonicSpectrumData": {"items": {"$ref": "#/definitions/FreDisplayPhotonicSpectrumDataRO"}, "type": "array"}, "displayTopologySource": {"type": "string", "description": "The source of the FRE"}, "intentDeploymentStateString": {"enum": ["NOT_APPLICABLE", "IN_PROGRESS", "FAILED", "IN_THE_NETWORK", "NETWORK_MISMATCH_DETECTED", "PROPERTY_MISMATCH"], "type": "string", "description": "Represents the deployment state of the service intent through its life cycle"}, "operationState": {"type": "string", "description": "Represents the total traffic carrying capability of the FRE. Relates to flow of traffic across the FRE between endpoints."}, "adminState": {"type": "string", "description": "Indicates the administrative state of the FRE, including whether traffic has been enabled and whether the FRE should be used by clients. It is derived from the state(s) of terminating TPE(s). Disabled means that FRE is prevented from carrying traffic. Enabled means that FRE is allowed to carry traffic."}, "frequency": {"type": "string", "description": "The frequency value for one of the underlying Endpoints"}, "displayDeploymentState": {"enum": ["SCHEDULED", "NETWORK_MISMATCH_DETECTED", "PROPERTY_MISMATCH", "DEPLOYED", "DISCOVERED", "DEPLOYING", "MONITORING", "DEPLOYMENT_FAILED", "DELETING", "DELETE_FAILED"], "type": "string", "description": "Represents the stage that the FRE is at in the construction/deployment/discovery life cycle"}, "intentLifeCyclePhaseString": {"enum": ["SCHEDULED", "DEPLOYING", "DEPLOYED", "DELETING", "DISCOVERED"], "type": "string", "description": "Represents the different phases of the service intent through its life cycle"}, "wavelength": {"type": "string", "description": "The corresponding wavelength value for the frequency attribute"}, "channel": {"type": "string", "description": "The corresponding channel number for the frequency attribute"}}}, "NamingRulesRO": {"type": "object", "properties": {"potentialGrowth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "total": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "used": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}}}, "ConnectionPointRO": {"type": "object", "properties": {"mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "dynamicOwningPoolAdapterFgiRules": {"items": {"type": "string"}, "type": "array", "description": "dynamicOwningPoolAdapterFgiRules"}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "namingRules": {"items": {"$ref": "#/definitions/NamingRulesRO"}, "type": "array"}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "owningPoolAdapterType": {"type": "string", "description": "Type of the owner Adapter."}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}}}, "SRLGDataRO": {"type": "object", "properties": {"type": {"enum": ["SRLG"], "type": "string", "description": "The SRLG Attribute type"}, "id": {"type": "string", "description": "The identifier value of the SRLG. It's same as the native value of structured srlg attributes"}}}, "RangeRO": {"type": "object", "properties": {"maxValue": {"type": "integer", "description": "This defines the max value for the range.", "format": "int32"}, "minValue": {"type": "integer", "description": "This defines the min value for the range.", "format": "int32"}}}, "SncpPackageRO": {"type": "object", "properties": {"peerOsrpNodeName": {"type": "string"}, "peerIdentifier": {"type": "string"}, "peerRole": {"enum": ["WORKING", "PROTECT"], "type": "string"}, "srcEpShared": {"default": false, "type": "boolean"}, "destEpShared": {"default": false, "type": "boolean"}}}, "ResiliencyTopologyPackageRO": {"type": "object", "properties": {"switchTpeId": {"type": "string", "description": "Switch port client TPE"}, "resilientFreId": {"type": "string", "description": "Resilient nodal fre id"}}}, "AdapterRO": {"type": "object", "properties": {"nameToCapacityMappingRules": {"items": {"$ref": "#/definitions/NameToCapacityMappingRulesRO"}, "type": "array"}, "poolAdapterType": {"type": "string", "description": "The type for the adapter."}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "mappingInteractionRules": {"items": {"$ref": "#/definitions/MappingInteractionRuleRO"}, "type": "array", "description": "The specification of the interaction between the support for different client layer protocols signals."}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "connectionRulesInAdaptationLayer": {"items": {"$ref": "#/definitions/ConnectionRuleRO"}, "type": "array", "description": "Directions of how to instantiate client TPE(s) for this adapter, including indirect (client over client) client TPE instantiation."}, "namingRules": {"items": {"$ref": "#/definitions/NamingRulesRO"}, "type": "array"}, "adaptsToLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "continuousAdapterRulesPackage": {"description": "This package stores various rules to be considered when instantiating a new TPE utilizing continuous b/w.", "$ref": "#/definitions/ContinuousAdapterRulesPackageRO"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "potentialAdapterCapacities": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array", "description": "Total potential capacity of this Adapter."}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "cardinality": {"type": "string", "description": "Number of possible potential TPEs. Can be a numeric (eg '1', '96', '1000', ...) or can be categorical (eg 'indirect')."}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "name": {"type": "string", "description": "Name of the Adapter. Unique in the scope of this TPE."}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "eFreTerminationState": {"enum": ["hapFre_terminated", "hapFre_not_terminated"], "type": "string", "description": "Values to handle TPEs that have multiple poolAdapters, especially multiple poolAdapters adapting to the same layer rate"}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}}}, "MplsPackageRO": {"type": "object", "properties": {"prevHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the previous hop of this MPLS tunnel"}, "subType": {"enum": ["TP", "TE"], "type": "string", "description": "TP refers to Transport Profile; TE refers to Traffic Engineering"}, "aisSessionAdminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of the AIS session for this MPLS tunnel"}, "mbbHistory": {"items": {"$ref": "#/definitions/MbbHistoryEntryRO"}, "type": "array"}, "shareSrlg": {"items": {"type": "string"}, "type": "array", "description": "A list of share SRLG values used by dynamic tunnel during provisioning."}, "TxTag": {"type": "string", "description": "The label used for traffic egressing from this endpoint"}, "facilityBypass": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is facility-bypass (FB) tunnel"}, "nextHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the next hop of this MPLS tunnel"}, "stickyLsp": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating a dynamic tunnel stays on the same path after change in required resources. Applicable to dynamic coRouted tunnels only."}, "tunnelType": {"enum": ["rsvp_ingress_corout", "rsvp_egress_corout", "rsvp_transit_corout", "static_ingress_corout", "static_egress_corout", "static_transit_corout", "static_ingress_unidir", "static_egress_unidir", "static_transit_unidir", "rsvp_ingress_unidir", "rsvp_transit_unidir", "static_ingress_assoc", "rsvp_ingress", "rsvp_transit", "rsvp_egress"], "type": "string", "description": "Tunnel type (static/dynamic, ingress/egress, corouted/unidrectional)"}, "bfd": {"description": "Holds BFD attributes for one LER TPE endpoint", "$ref": "#/definitions/BfdRO"}, "optimization": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating if tunnel optimization should be attempted by the control-plane"}, "destTunnelId": {"type": "string", "description": "The ID of the far end of this MPLS tunnel"}, "fb": {"description": "MPLS FB tunnel attributes", "$ref": "#/definitions/MplsFbRO"}, "destIp": {"type": "string", "description": "The IP-data interface address of the far end of this MPLS tunnel"}, "fwdIn": {"type": "string", "description": "The inward ID in the forward direction (transit)"}, "localIfNamePrevHop": {"type": "string", "description": "The local interface name of the previous hop of this MPLS tunnel (6200 only)"}, "localIfNameNextHop": {"type": "string", "description": "The local interface name of the next hop of this MPLS tunnel (6200 only)"}, "frrSignaling": {"enum": ["on", "off"], "type": "string", "description": "Deprecated by frr package and will be removed later. Flag for fast re-route capability"}, "colorGroup": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "direction": {"enum": ["bidirectional", "ingress", "egress", "unidirectional"], "type": "string", "description": "Tunnel direction. Use value bidirectional or unidirectional only and TPE attribute stackDirection since ingress and egress are ambiguous"}, "lspId": {"type": "string", "description": "The numeric ID of this MPLS tunnel"}, "srcTunnelId": {"type": "string", "description": "The ID of the near end of this MPLS tunnel"}, "aisProfileName": {"type": "string", "description": "The name of the Alarm Indication Signal profile for this MPLS tunnel"}, "optimizationInterval": {"type": "integer", "description": "The interval between tunnel optimization attempts", "format": "int32"}, "excludeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "signaled": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is dynamic; otherwise it is static"}, "diversityResource": {"enum": ["unknown", "none", "link", "srlg", "node", "srlg_and_node", "srlg_and_link", "link_and_node", "srlg_or_node", "srlg_and_link_and_node"], "type": "string", "description": "The object upon which to base diversity for the backup tunnel"}, "aisRefreshTimerUnit": {"type": "string", "description": "The units for aisRefreshTimer field"}, "fixedTtl": {"type": "string", "description": "The time-to-live for tunnel hops (1-255)"}, "lspName": {"type": "string", "description": "The name of this MPLS tunnel"}, "autoBackup": {"enum": ["on", "off"], "type": "string", "description": "A flag to signal if auto-backup tunnel creation is on or off"}, "aisRefreshTimer": {"type": "integer", "description": "The interval between each AIS refresh for this MPLS tunnel", "format": "int32"}, "nextHopIfNum": {"type": "string", "description": "The interface number of the next hop of this MPLS tunnel"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string", "description": "The role at this point in the MPLS tunnel"}, "includeAll": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "prevHopIfNum": {"type": "string", "description": "The interface number of the previous hop of this MPLS tunnel"}, "explicitTunnel": {"description": "Holds data for the explicit tunnel path", "$ref": "#/definitions/TunnelPathRO"}, "includeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "diversityLevel": {"enum": ["strict", "maximal"], "type": "string", "description": "The diversity level of backup tunnel creation (maximal meaning best-effort)"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "A list of shared-risk link-group values assigned to this interface"}, "setupPriority": {"type": "string", "description": "The priority of the dynamic tunnel setup (0-7)"}, "revIn": {"type": "string", "description": "The inward ID in the reverse direction (transit)"}, "explicitRouteObject": {"items": {"type": "string"}, "type": "array", "description": "An ordered list of hop-by-hop IP-data interface addresses traversed by this dynamic MPLS tunnel"}, "revOut": {"type": "string", "description": "The outward ID in the reverse direction (transit)"}, "frr": {"description": "MPLS FRR details attributes", "$ref": "#/definitions/MplsFrrRO"}, "fwdOut": {"type": "string", "description": "The outward ID in the forward direction (transit)"}, "softPreemption": {"enum": ["enable", "disable"], "type": "string", "description": "If true, soft preemption is enabled. Applicable to dynamic TE unidirectional tunnels only."}, "optimizationIntervalUnit": {"type": "string", "description": "The unit for optimizationInterval"}, "RxTag": {"type": "string", "description": "The label used for traffic ingressing to this endpoint"}, "bw": {"description": "Holds bandwidth attributes for a dynamic tunnel endpoint or an IP interface", "$ref": "#/definitions/BwRO"}, "holdPriority": {"type": "string", "description": "The priority of the dynamic tunnel steady-state (0-7)"}, "srcIp": {"type": "string", "description": "The IP-data interface address of the near end of this MPLS tunnel"}, "coRouted": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is co-routed; otherwise it is associated"}, "frrProfile": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "Deprecated by frr package and will be removed later. The fast re-route profile for this MPLS tunnel"}, "ctrlPlaneId": {"type": "string", "description": "A generated value to uniquely identify a particular tunnel instance"}}}, "AggregationBucketRO": {"type": "object", "properties": {"absoluteTotal": {"type": "string", "description": "The unfiltered total number of entities in the data"}, "subAggregations": {"description": "The aggregated data based on a requested aggregation name and criteria", "$ref": "#/definitions/AggregationRO"}, "bucketValue": {"type": "string", "description": "The result of the aggregation"}, "bucketKey": {"type": "string", "description": "The key of the aggregation criteria"}}}, "NetworkConstructRelationshipsRO": {"type": "object", "properties": {"physicalLocation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "parentNetworkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "networkConstructDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "networkConstructPlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "concreteAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "managementSession": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "networkConstructExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "groups": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "childrenNetworkConstruct": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "AfiSafiPrefixListRO": {"type": "object", "properties": {"direction": {"enum": ["in", "out"], "type": "string", "description": "Direction to filter BGP advertisements."}, "name": {"type": "string", "description": "Name to filter BGP advertisements."}}}, "OspfcircuitRO": {"type": "object", "properties": {"networkArea": {"type": "string", "description": "Network area in the form of an IPV4 address"}, "cost": {"type": "integer", "description": "Cost associated with the network interface", "format": "int32"}, "identifier": {"type": "string", "description": "Unique identifier for the OSPFv3 circuit"}, "carrier": {"type": "string", "description": "Identifies the carrier, ie. Section, Line, GCC0, GCC1. When an interface supports multiple layers, carrier may be required to uniquely identify the entry"}}}, "FreRelationshipsRO": {"type": "object", "properties": {"partitionFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "decomposedFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "partitionFreAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "partitioningFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "endPoints": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "configurationAndSwitchControl": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "decomposedFreAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "fre": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "concreteAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "encapsulatedResiliency": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "composingFre": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "freExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "freSwitch": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "freDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "resiliencyController": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "networkConstructAssociation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "groups": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "relatedToFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "frePlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "freSwitchList": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "abstracts": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "OneToManyRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array", "description": "The one-to-many relationship"}}}, "BgpTransportRO": {"type": "object", "properties": {"peerPort": {"type": "string", "description": "Peer port reported in OPENCONFIRM and ESTABLISHED states."}, "localIp": {"type": "string", "description": "If update-source is configured then IP address of the interface. Rely on learned localIp if it is reported. Reported in OPENCONFIRM and ESTABLISHED states."}, "localPort": {"type": "string", "description": "Local port reported in OPENCONFIRM and ESTABLISHED states."}, "peerIp": {"type": "string", "description": "Peer Ip configured as part of BGP peer configuration."}}}, "AttributePolicyOverrideRO": {"type": "object", "properties": {"attributeSource": {"type": "string", "description": "Attribute source, in case it has the value from some other references, (e.g. attributes.srlg is relationships.srlgs.id"}, "attributeName": {"type": "string", "description": "Attribute path(e.g. attribute.customerCode or relationship.endpoints)"}, "policies": {"items": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string"}, "type": "array"}}}, "EquipmentGroupDataRO": {"type": "object", "properties": {"relationships": {"description": "The equipment group relationships", "$ref": "#/definitions/EquipmentGroupRelationshipsRO"}, "attributes": {"description": "The equipment group attributes", "$ref": "#/definitions/EquipmentGroupAttributesRO"}, "type": {"enum": ["equipmentGroup"], "type": "string", "description": "The equipmentGroup resource type"}, "id": {"type": "string", "description": "The unique identifier for the equipment group resource"}}}, "OspfcircuitRO_": {"type": "object", "properties": {"networkArea": {"type": "string", "description": "Network area in the form of an IPV4 address"}, "cost": {"type": "integer", "description": "Cost associated with the network interface", "format": "int32"}, "identifier": {"type": "string", "description": "Unique identifier for the OSPFv3 circuit"}, "carrier": {"type": "string", "description": "Identifies the carrier, ie. Section, Line, GCC0, GCC1. When an interface supports multiple layers, carrier may be required to uniquely identify the entry"}}}, "NoteRO": {"type": "object", "properties": {"noteMsg": {"type": "string", "description": "The message left on the note left by the user"}, "lastUpdatedBy": {"type": "string", "description": "The name of the user that last edited the note"}, "lastUpdatedTime": {"type": "string", "description": "The time the note was last updated"}}}, "ExplicitRouteGroupRO": {"type": "object", "properties": {"groupType": {"enum": ["INCLUSION", "EXCLUSION"], "type": "string", "description": "The resource type"}}}, "AfiSafiNextHopSelfRO": {"type": "object", "properties": {"configured": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}, "excludeReflectedRoutes": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}}}, "SRLGOneToManyRelationshipRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/SRLGDataRO"}, "type": "array", "description": "The SRLG one-to-many relationship"}}}, "EquipmentRelationshipsRO": {"type": "object", "properties": {"equipmentDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "equipmentHolder": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentPlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "AdditionalAttributesRO": {"type": "object"}, "TpeDisplayDataRO": {"type": "object", "properties": {"displayNativeName": {"type": "string", "description": "The name of the TPE that we want UI to display if it is different than nativeName"}}}, "AssociationIdentifierRO": {"type": "object"}, "IdentifierRO": {"type": "object"}, "ProvisioningAttributesRO": {"type": "object"}, "AdaptationPoolRO": {"type": "object", "properties": {"poolAdapters": {"items": {"$ref": "#/definitions/AdapterRO"}, "type": "array"}, "memberAdaptationPools": {"items": {"type": "string"}, "type": "array", "description": "Reference(s) to 0 or more member AdaptationPool-s. Allows for nesting of AdaptationPools."}, "logicalRule": {"enum": ["xOR", "OR"], "type": "string", "description": "Restrict the number of active poolAdapters could be xOR or OR - default is OR"}, "name": {"type": "string", "description": "Name of the AdaptationPool. Unique in the scope of this TPE."}, "namingRules": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}}}, "AssociationRO": {"type": "object", "properties": {"nodalId": {"type": "string", "description": "The id of the resource being referenced by this association"}, "relationship": {"enum": ["networkConstructs", "tpes", "fres"], "type": "string", "description": "The association relationship resource type"}, "orderIndex": {"type": "integer", "description": "The order index value of this entry (to allow defining an entry order)", "format": "int32"}, "relationshipType": {"enum": ["concrete", "owningServer", "physical"], "type": "string", "description": "The type of association. Each value indicates what type of relationship this association is representing."}, "identifier": {"description": "Association Identifier", "$ref": "#/definitions/AssociationIdentifierRO"}, "id": {"type": "string", "description": "The id of the resource being referenced by this association"}}}, "CapacityRO": {"type": "object", "properties": {"layer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "capacity": {"type": "integer", "description": "Number of potential client instances or usage instances", "format": "int32"}, "capacityCalculationRule": {"type": "string", "description": "Core logic that will be used on capacity calculation"}, "source": {"type": "string", "description": "Source of the capacity"}, "capacitySize": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacitySizeRO"}, "maxLimit": {"type": "integer", "description": "Maximum potential client instances", "format": "int32"}, "capacityClass": {"enum": ["discrete", "continuous"], "type": "string", "description": "Discrete \u2013 b/w space is treated as a list of discrete values; this is default. Continuous \u2013 b/w space is treated as continuous segment, in the range of low/upper."}}}, "TpeListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Referenced sub-resources"}, "meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "data": {"items": {"$ref": "#/definitions/TpeDataRO"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "BandwidthThresholdRO": {"type": "object", "properties": {"ODUFLEXRSZ": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (in Bps) for Resizable ODU Flex advertised for a link."}, "ODU2E": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU2E) advertised for a link."}, "ODUFLEXNRSZ": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (in Bps) for Non-Resizable ODU Flex advertised for a link."}, "ODU4": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU4) advertised for a link."}, "ODU2": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU2) advertised for a link."}, "ODU3": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU3) advertised for a link."}, "ODU0": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU0) advertised for a link."}, "ODU1": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU1) advertised for a link."}}}, "AttributeSpecRO": {"type": "object", "properties": {"modificationRules": {"items": {"$ref": "#/definitions/AttributeModificationRuleRO"}, "type": "array", "description": "List of operations that are permitted on the attribute."}, "name": {"type": "string", "description": "Name of attribute."}, "defaultValue": {"type": "string", "description": "Default value for attribute."}, "location": {"type": "string", "description": "Location of attribute, using dot notation e.g. attributes.layerTerminations[DSR].additionalAttributes."}, "valueOptions": {"description": "Provides a means to specify the possible values for an attribute.", "$ref": "#/definitions/AttributeValueOptionRO"}, "matchingRules": {"items": {"$ref": "#/definitions/AttributeMatchingRuleRO"}, "type": "array", "description": "List of matching rules that apply to this attribute."}}}, "TerminationRO": {"type": "object", "properties": {"connectionRulesInOwnLayer": {"items": {"$ref": "#/definitions/ConnectionRuleRO"}, "type": "array"}}}, "AttributeValueOptionRO": {"type": "object", "properties": {"selectFrom": {"items": {"type": "string"}, "type": "array", "description": "A comma separated list of the choices available for selection."}, "range": {"type": "string", "description": "A range of values in the format of '<from>,<to>,[step]' whereby from is the initial value, to is the end value, and an optional step value to indicate the increment."}}}, "AdjacencyPackageRO": {"type": "object", "properties": {"adjacencyMechanism": {"type": "string", "description": "The attribute defining the adjacency mechanism used."}, "provisionedRemoteTagFormat": {"type": "string", "description": "The format of the remote provisioning adjacency tag."}, "remoteTagFormat": {"type": "string", "description": "The format of the remote adjacency tag."}, "remoteTag": {"type": "string", "description": "The actual remote tag as discovered by the network element."}, "linkAttributes": {"description": "This package stores information of Link.", "$ref": "#/definitions/LinkAttributesRO"}, "provisionedRemoteTag": {"type": "string", "description": "The provisioned remote tag is the expected destination defined by the user that adheres to the remoteTagFormat."}, "topologySourceTag": {"type": "string", "description": "The tag representing the topological state. This could be 'DISCOVERED', for example."}, "localTag": {"type": "string", "description": "The actual tag of the originating network element."}, "localTagFormat": {"type": "string", "description": "The format of the local adjacency tag."}, "adjacencyType": {"type": "string", "description": "This field delimits the adjacency type between two network elements (Ex: LIM, LINE, etc...)."}}}, "RoutingConstraintsRO": {"type": "object", "properties": {"protectionClass": {"enum": ["UNPROTECTED_HIGH", "UNPROTECTED_LOW"], "type": "string", "description": "service class of protection for the SNC."}, "maxCost": {"type": "integer", "description": "Max cost", "format": "int32"}, "maxProtectCost": {"type": "integer", "description": "The maximum allowable weight/cost of the ProtectRoute", "format": "int32"}, "costCriteria": {"enum": ["Delay", "AdminWeight"], "type": "string", "description": "Defines Cost Criteria between admin wt or latency"}, "isGroupingForCoroutingRequired": {"default": false, "type": "boolean", "description": "Specifies if the FRE should be part of a group"}, "routeExclusivity": {"enum": ["Working", "WorkingProtect", "Preferred", "No", "Yes", "Disable"], "type": "string", "description": "Specifies type of route exclusivity"}, "exclusionConstraints": {"$ref": "#/definitions/AssociationObjectAttributesRO"}, "inclusionConstraints": {"$ref": "#/definitions/AssociationObjectAttributesRO"}, "homeCostPreference": {"enum": ["Mandatory", "BestEffort", "Disable"], "type": "string", "description": "Available Cost Preferences for home and protect path of SNC"}, "protectCostPreference": {"enum": ["Mandatory", "BestEffort", "Disable"], "type": "string", "description": "Available Cost Preferences for home and protect path of SNC"}, "isRouteExclusive": {"default": false, "type": "boolean", "description": "Route exclusive true/false"}, "identifier": {"type": "string", "description": "The identifier to the decomposed fre"}}}, "BandwidthTriggersRO": {"type": "object", "properties": {"dependentLinks": {"items": {"type": "string"}, "type": "array", "description": "List of dependent LLDP/LAG for the stitched FRE."}, "assignedBW": {"type": "string", "description": "Used BW by the FRE."}, "maxBW": {"type": "string", "description": "Maximum BW for the FRE."}, "dependentTunnels": {"items": {"type": "string"}, "type": "array", "description": "List of dependent Tunnels for the stitched FRE."}}}, "EquipmentGroupAttributesRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "name": {"type": "string", "description": "Deprecated"}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "subType": {"type": "string", "description": "The equipment group sub type"}, "type": {"type": "string", "description": "The equipment group type"}}}, "CapacityPatternRO": {"type": "object", "properties": {"type": {"enum": ["LIST", "RANGE", "POOL", "PERCENTAGE"], "type": "string", "description": "Identifies Pattern type"}, "format": {"type": "string", "description": "An optional regex expression or format string describing how to parse the size string in case of multiple values, e.g. CIR:EIR"}}}, "LqsFiberDataRO": {"type": "object", "properties": {"reconciled": {"default": false, "type": "boolean"}, "method": {"enum": ["totalPower", "osc"], "type": "string"}, "modeledMargin": {"type": "number", "format": "double"}, "measuredLoss": {"type": "number", "format": "double"}, "modeledLoss": {"type": "number", "format": "double"}, "deltaLoss": {"type": "number", "format": "double"}}}, "LqsMarginDataRO": {"type": "object", "properties": {"viableAtEol": {"type": "string"}, "sdMargin": {"type": "number", "format": "double"}, "upgrMargin": {"type": "number", "format": "double"}, "valid": {"default": false, "type": "boolean"}, "minMargin": {"type": "number", "format": "double"}}}, "ResiliencyHandlingEdgeRO": {"type": "object", "properties": {"switchTpeId": {"type": "string", "description": "The ID of the CTPs in the physical view"}, "clientTpeId": {"type": "string", "description": "The ID of the client PTP connected to the switch"}}}, "NameToCapacityMappingRulesRO": {"type": "object", "properties": {"capacityUnit": {"type": "string", "description": "Unit of the capacity."}, "mapperRule": {"items": {"$ref": "#/definitions/MapperRuleRO"}, "type": "array"}, "mapping": {"enum": ["FIXED", "FLEXIBLE", "FLEXIBLE_GROUPED", "ALL"], "type": "string", "description": "Identifies namespace to capacity mapping."}, "noOfUnits": {"type": "integer", "description": "Number 1-80 in switching and broadband case", "format": "int32"}, "namingUnit": {"type": "string", "description": "Unit of namespace."}, "relationType": {"enum": ["ONE_TO_ONE", "ONE_TO_MANY"], "type": "string", "description": "Relation type"}}}, "EquipmentAttributesRO": {"type": "object", "properties": {"siteName": {"type": "string", "description": "The site name associated with the equipment"}, "specificationMismatchStatus": {"type": "string", "description": "Indicates the status of a mismatch between either the planned, installed, or provisioned specifications"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array", "description": "The list of locations associated with the equipment"}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "displayData": {"description": "The equipment display data", "$ref": "#/definitions/EquipmentDisplayDataRO"}, "secondaryState": {"type": "string", "description": "The secondary state of the equipment"}, "installedSpec": {"description": "An equipment specification. Is either an installed specification (physical representation) or a provisioned specification (logical representation) of an equipment", "$ref": "#/definitions/EquipmentSpecRO"}, "maintenanceMode": {"default": false, "type": "boolean", "description": "Maintenance mode to indicate if the equipment is available or not to MCP. While in maintenance mode, MCP will not provision anything against this equipment (including TPE information)"}, "category": {"enum": ["rack", "shelf", "pluggable", "standalone"], "type": "string", "description": "The equipment category"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the equipment"}, "provisionedSpec": {"description": "An equipment specification. Is either an installed specification (physical representation) or a provisioned specification (logical representation) of an equipment", "$ref": "#/definitions/EquipmentSpecRO"}, "state": {"enum": ["IS", "OOS", "OOS_AU", "OOS_MA", "OOS_AUMA"], "type": "string", "description": "The primary state of the equipment"}, "neContactState": {"enum": ["IN", "OUT"], "type": "string", "description": "The connection status of a shelf"}, "specificationMismatch": {"default": false, "type": "boolean", "description": "Indicates if there's a mismatch between either the planned, installed, or provisioned specifications"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "capabilitySpecification": {"description": "Defines a capability specification; normally for a TPE but can be utilized elsewhere in the future.", "$ref": "#/definitions/CapabilitySpecRO"}, "cardType": {"type": "string", "description": "The card type"}, "siteId": {"type": "string", "description": "The site identifier associated with the equipment"}, "reservationState": {"enum": ["UNKNOWN", "NOT_RESERVED", "RESERVED_FOR_MAINTENANCE", "RESERVED_FOR_FACILITY", "RESERVED_FOR_REVERSION"], "type": "string", "description": "The reservation state of the equipment"}, "nativeName": {"type": "string", "description": "The native name of the equipment"}, "availabilityState": {"enum": ["PLANNED", "AVAILABLE", "UNVALIDATED", "INUSE"], "type": "string", "description": "The availability state of the equipment"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "validationState": {"enum": ["UNSET", "VALID", "INVALID"], "type": "string", "description": "Validation state is used by RNC to denote that this equipment has either not been examined by RNC, or been examined by RNC and found to match (valid) or not match (invalid) customer expectations"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "customerCode": {"type": "string", "description": "Customer code"}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePoliciesRO"}}}, "BgpBfdRO": {"type": "object", "properties": {"transmitInterval": {"type": "string", "description": "The interval between transmitting BFD messages"}, "configured": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "mhop": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "receiveInterval": {"type": "string", "description": "The interval between receiving BFD messages"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of BFD for this endpoint"}, "role": {"enum": ["passive", "active", "any"], "type": "string", "description": "The role of BFD for this endpoint"}, "profileName": {"type": "string", "description": "The profile name associated with this set of BFD attributes"}, "operationalState": {"enum": ["up", "down"], "type": "string", "description": "The operational state of BFD for this endpoint"}}}, "TrafficProfileRO": {"type": "object", "properties": {"trafficParams": {"items": {"$ref": "#/definitions/TrafficProfileParamRO"}, "type": "array", "description": "List of traffic parameters that must be used as input in the use-case."}, "routeConstraints": {"description": "Defines the traffic profile route characteristics used to data-drive provisioning workflows.", "$ref": "#/definitions/RouteConstraintsRO"}, "inputParams": {"items": {"$ref": "#/definitions/TrafficProfileParamRO"}, "type": "array", "description": "List of input parameters to be matched to derive the correct trafficProfile for the use-case."}, "outputs": {"items": {"$ref": "#/definitions/TrafficProfileParamRO"}, "type": "array", "description": "List of outputs that are expected in the use-case."}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "MsgsLastErrorRO": {"type": "object", "properties": {"errorCode": {"type": "string", "description": "Error code for last error"}, "errorSubCode": {"type": "string", "description": "Sub error code for last error"}}}, "GroupListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to group, such as GroupPlanned"}, "data": {"items": {"$ref": "#/definitions/GroupDataRO"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "BgpTimersRO": {"type": "object", "properties": {"peerNegotiatedKeepAliveTime": {"type": "string", "description": "Peer negotiation keep alive time in seconds"}, "peerMinRouteAdvertisementInterval": {"type": "string", "description": "Peer minimum advertised intervel in seconds"}, "peerConfiguredHoldTime": {"type": "string", "description": "Peer configured hold time in seconds"}, "peerConnectRetryInterval": {"type": "string", "description": "Peer connection retry intervel in seconds."}, "peerConfiguredKeepAliveTime": {"type": "string", "description": "Peer configured keep alive time in seconds"}, "peerMinASOriginationInterval": {"type": "string", "description": "Peer minimum AS origination intervel in seconds"}, "peerNegotiatedHoldTime": {"type": "string", "description": "Peer negotiation hold time in seconds"}}}, "IisisInfrastructureRO": {"type": "object", "properties": {"l2priority": {"type": "integer", "description": "1-127, 64 is default", "format": "int32"}, "routerlevelsummarisition": {"type": "string", "description": "Whether routes or route summaries are redistributed"}, "routerLevel": {"type": "string", "description": "Level 1 or Level 2 router, default is Level 1"}, "l1priority": {"type": "integer", "description": "1-127, 64 is default", "format": "int32"}}}, "BgpRrRO": {"type": "object", "properties": {"peerRole": {"enum": ["client", "routeReflector"], "type": "string", "description": "Role of the peer"}, "role": {"enum": ["client", "routeReflector"], "type": "string", "description": "self role"}, "peerClusterId": {"type": "string", "description": "The cluster-id to which peer belongs if it is configured as RR client."}}}, "TtiPackageRO": {"type": "object", "properties": {"ttiTx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttributeRO"}, "traceFailedMode": {"enum": ["NULL", "ALARM", "ALARM_FAIL_LINE"], "type": "string"}, "ttiExpectedRx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttributeRO"}, "ttiRx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttributeRO"}}}, "L2DataRO": {"type": "object", "properties": {"mgmtVlans": {"items": {"type": "string"}, "type": "array", "description": "mgmtVlans in the NE."}, "l2NodeRoutingCapabilities": {"description": "Describes L2 Routing capabilities of the node", "$ref": "#/definitions/L2NodeRoutingCapabilitiesRO"}, "externalFgiSpecsRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of External Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance."}, "loopbackAddresses": {"items": {"type": "string"}, "type": "array", "description": "The loopback addresses in the NE."}, "shelf": {"type": "string"}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/BgpPackageRO"}, "cftProfileNames": {"items": {"type": "string"}, "type": "array", "description": "CFT profiles in the NE."}, "l2NodeRole": {"enum": ["AN", "AGN", "NID"], "type": "string", "description": "L2 Node Role."}, "dynamicLabelRange": {"description": "Describes a Range attribute", "$ref": "#/definitions/RangeRO"}, "benchmarkMacs": {"items": {"type": "string"}, "type": "array", "description": "Benchmark MAC addresses in the NE."}, "switchFabricType": {"enum": ["XC", "CTM", "EMOTR", "PTS"], "type": "string", "description": "Optional field.  It represents a switch fabric where XC (PTKOTN on S-series), CTM (PTKOTN on T-series)"}, "staticVcLabelRange": {"description": "Describes a Range attribute", "$ref": "#/definitions/RangeRO"}, "cosProfileNames": {"items": {"type": "string"}, "type": "array", "description": "CoS profiles in the NE."}, "eqptGrp": {"type": "string", "description": "The group ID obtained from RTRV-EQPTGRP for the SAOS card on which the entity resides"}, "fgiSpecsRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance."}, "staticTunnelLabelRange": {"description": "Describes a Range attribute", "$ref": "#/definitions/RangeRO"}}}, "FreDerivedAttributesRO": {"type": "object", "properties": {"intentDeploymentState": {"enum": ["READY_TO_DEPLOY", "DEPLOYMENT_IN_PROGRESS", "INCOMPLETE_DEPLOYMENT", "COMPLETE_FULLY_READY", "INCOMPLETE_NOT_READY", "INCOMPLETE_NOT_READY_CONFLICT", "INCOMPLETE_READY_BEST_EFFORT", "UNDEPLOYMENT_IN_PROGRESS", "INCOMPLETE_UNDEPLOYMENT", "WAITING_TO_ADOPT"], "type": "string", "description": "Represents the intent deployment stage that the FRE is at in the construction/deployment/discovery life cycle"}, "intentLifeCyclePhase": {"enum": ["WAITING_TO_DEPLOY", "DEPLOYING", "ASSURING", "RETIRING", "ADOPTING_DISCOVERED"], "type": "string", "description": "Represents the intent life cycle stage that the FRE is at in the construction/deployment/discovery life cycle"}}}, "MappingTableEntryRO": {"type": "object", "properties": {"ip": {"type": "string", "description": "The ip address."}, "direction": {"enum": ["RX", "TX", "RXTX"], "type": "string", "description": "The directionality defined in terms of RX/TX."}, "cos": {"type": "string", "description": "The class of service."}, "label": {"type": "string", "description": "The user label."}}}, "EquipmentDisplayDataRO": {"type": "object", "properties": {"displayName": {"type": "string", "description": "Display name of the equipment"}, "displayNameFormat": {"type": "string", "description": "Format of the display name"}}}, "ClientToClientRO": {"type": "object", "properties": {"intraCluster": {"enum": ["enabled", "disabled"], "type": "string", "description": "A flag to check if cluster is intra-cluster."}}}, "AccessPointRO": {"type": "object", "properties": {"mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "clientTpeRulesInOwnLayer": {"items": {"$ref": "#/definitions/ConnectionRuleRO"}, "type": "array", "description": "Directions of how to instantiate client TPE(s) for this access point, including indirect (client over client) client TPE instantiation."}, "namingRules": {"items": {"$ref": "#/definitions/NamingRulesRO"}, "type": "array"}, "adaptsToLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "cardinality": {"type": "string", "description": "Number of possible potential TPEs. Can be a numeric (eg '1', '96', '1000', ...) or can be categorical (eg 'indirect')."}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}}}, "AfiSafiOrfRO": {"type": "object", "properties": {"direction": {"enum": ["rx", "tx", "both"], "type": "string", "description": "Outbound Route Filtering direction"}, "type": {"type": "string", "description": "Outbound Route Filtering type"}}}, "ColorGroupRO": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color group"}, "colors": {"items": {"$ref": "#/definitions/ColorEntryRO"}, "type": "array"}, "name": {"type": "string", "description": "The name of the color group"}}}, "Ipv6RO": {"type": "object", "properties": {"ip": {"type": "string", "description": "Value of IP address, can be either a V6 address, should support all formats of V6 address"}, "prefix": {"type": "string", "description": "The prefix which is applied on the interface, an IPV6 prefix"}, "defaultGateway": {"type": "string", "description": "The next hope router IP, can be a V6 address, should support all formats of V6 address"}, "ospfcircuit": {"items": {"$ref": "#/definitions/OspfcircuitRO_"}, "type": "array"}}}, "CapacitySizeRO": {"type": "object", "properties": {"pattern": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacityPatternRO"}, "unit": {"type": "string", "description": "unit for size string value"}, "size": {"items": {"type": "string"}, "type": "array", "description": "Capacity size to be interpreted with CapacityPattern"}}}, "MepEntryRO": {"type": "object", "properties": {"mepId": {"type": "string", "description": "The ID of the MEP"}, "mepType": {"enum": ["UP", "DOWN"], "type": "string", "description": "The type of the MEP, up or down"}, "ccmPriority": {"type": "string", "description": "Priority of the CC messages (0-7)"}, "ccmTransmitState": {"enum": ["ON", "OFF"], "type": "string", "description": "The transmission state of CCM (on/off)"}, "mepAdminState": {"enum": ["ENABLED", "DISABLED"], "type": "string", "description": "The administrative state (enabled/disabled) of the MEP"}, "mepMacAddress": {"type": "string", "description": "The MAC address of the MEP"}, "dmm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731AttributesRO"}, "vlanId": {"type": "string", "description": "The VLAN ID of the MEP"}, "slm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731AttributesRO"}, "lmm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731AttributesRO"}, "remoteMepId": {"type": "string", "description": "The ID of the remote MEP"}}}, "RouteConstraintsRO": {"type": "object", "properties": {"maxInCpGroup": {"type": "string", "description": "Maximum number of routes that can be present in a control plane group. Could be a number, or could be a number evident n the model i.e. inverseMux."}, "signalPattern": {"enum": ["adjacent"], "type": "string", "description": "If photonic route type, specifies the frequency or wavelength pattern to choose for the routes."}, "numberOfRoutes": {"type": "string", "description": "Number of routes defined by the configuration. For example, a PRIME/MEMBER configuration.  Could be a number, or could be a number evident from the model i.e. inverseMux. Generally, should only be specified if the configuration implies more than 1 route."}, "sizeOfEachRoute": {"type": "string", "description": "For each route, what is the required size of each route. For example, '200G' in the case of 400G WLAi OTR 2xOTSi."}, "routeCharacteristic": {"enum": ["coRouted", "maximumDiversity"], "type": "string", "description": "If multiple routes need to be defined, what's the relationship between the routes."}, "type": {"enum": ["photonic"], "type": "string", "description": "The route type i.e. photonic. In the future, other types may be supported."}}}, "IPCommunicationDetailsRO": {"type": "object", "properties": {"interfaceDetails": {"items": {"$ref": "#/definitions/InterfaceIPAttributesRO"}, "type": "array", "description": "List of comms interfaces and their attributes."}, "ipv4Infrastructure": {"$ref": "#/definitions/Ipv4InfrastructureRO"}, "iisisInfrastructure": {"description": "IISIS Router Details", "$ref": "#/definitions/IisisInfrastructureRO"}, "ipv6Infrastructure": {"$ref": "#/definitions/Ipv6InfrastructureRO"}}}, "NetworkConstructDisplayDataRO": {"type": "object", "properties": {"displayMACAddress": {"type": "string", "description": "MAC address used for expectations."}, "displaySyncState": {"enum": ["PLANNED", "NOT_SYNCHRONIZED", "SYNCHRONIZING", "SYNCHRONIZED", "FAILED", "PENDING", "DELETING", "TIMEOUT", "AUDIT_PENDING", "AUDITING"], "type": "string"}, "displayName": {"type": "string", "description": "Name (e.g. TID) of the Network Construct"}, "displayIpAddress": {"type": "string", "description": "IP address used for expectations."}}}, "LocationIndexesRO": {"type": "object"}, "CapabilitySpecRO": {"type": "object", "properties": {"attributeSpecs": {"items": {"$ref": "#/definitions/AttributeSpecRO"}, "type": "array", "description": "List of attributes defined in the capability specification that can be acted upon."}}}, "MapperRuleRO": {"type": "object", "properties": {"groupedTribSlots": {"items": {"items": {"type": "string"}, "type": "array"}, "type": "array"}, "tribPort": {"type": "string", "description": "Tributary port"}, "tribSlots": {"items": {"type": "string"}, "type": "array", "description": "Mapped tributary slots corresponding to tributary port"}}}, "SignalIndexRO": {"type": "object", "properties": {"index": {"type": "string", "description": "The signal index. Indicates a time slot."}, "wavelengthMax": {"type": "string", "description": "The maximum signal wavelength."}, "phy_index": {"type": "string", "description": "The physical index. Indicates a time slot."}, "width": {"type": "string", "description": "The signal width."}, "maxFreq": {"type": "string", "description": "The maximum signal frequency."}, "odu4_index": {"type": "string", "description": "The odu4 index. Indicates a time slot or tributary port number."}, "oduCn_index": {"type": "string", "description": "The oduCn index. Indicates a time slot or tributary port number."}, "channels": {"items": {"type": "string"}, "type": "array", "description": "Indicates the list of discrete channels utilized e.g. tributary slots on broadband cards. Plans are to utilize this generically for any list of discrete list of signals."}, "eth_index": {"type": "string", "description": "The eth index."}, "odu3_index": {"type": "string", "description": "The odu3 index. Indicates a time slot or tributary port number."}, "odu2_index": {"type": "string", "description": "The odu2 index. Indicates a time slot or tributary port number."}, "frequency": {"type": "string", "description": "The central signal frequency."}, "minFreq": {"type": "string", "description": "The minimum signal frequency."}, "ots_index": {"type": "string", "description": "The ots index. Indicates a time slot."}, "wavelength": {"type": "string", "description": "The signal wavelength (nm)."}, "mappingTable": {"items": {"$ref": "#/definitions/MappingTableEntryRO"}, "type": "array"}, "indexes": {"description": "Map of index attributes to represent more than one indexes per LT. Plan is to remove above odu2_index, odu4_index & oduCn_index signal attributes in future and use this one", "$ref": "#/definitions/IndexesRO"}, "wavelengthMin": {"type": "string", "description": "The minimum signal wavelength."}, "mgmtMcId": {"type": "string", "description": "The management identifier of the media channel"}}}, "ColorEntryRO": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color"}, "name": {"type": "string", "description": "The name of the color"}}}, "SyncScopeRO": {"type": "object", "properties": {"name": {"items": {"type": "string"}, "type": "array", "description": "The synchronization scope name"}, "context": {"type": "string", "description": "The synchronization scope context"}}}, "EquipmentGroupListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Referenced sub-resources"}, "meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "data": {"items": {"$ref": "#/definitions/EquipmentGroupDataRO"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "Y1731AttributesRO": {"type": "object", "properties": {"count": {"type": "integer", "description": "The count of the message being transmitted", "format": "int32"}, "remoteMepMacAddress": {"type": "string", "description": "The MAC address of the remote MEP"}, "frameSize": {"type": "string", "description": "The frame size of the messages being transmitted (numeric), if applicable to this measurement"}, "interval": {"type": "string", "description": "The interval between transmitting each message (e.g.: 1)"}, "enabled": {"default": false, "type": "boolean", "description": "True when the particular measurement is enabled"}, "intervalUnit": {"type": "string", "description": "The unit of interval between transmitting each message (e.g.: seconds)"}, "priority": {"type": "string", "description": "The priority of the messages being transmitted (0-7)"}, "repeatDelay": {"type": "integer", "description": "The repeat delay of the message being transmitted", "format": "int32"}, "remoteMepId": {"type": "string", "description": "The ID of the remote MEP"}, "iterate": {"type": "integer", "description": "The iteration number of the message being transmitted", "format": "int32"}}}, "AttributeModificationRuleRO": {"type": "object", "properties": {"permittedOperation": {"enum": ["writeAtCreationTime", "readWrite", "readOnly"], "type": "string"}, "constraint": {"enum": ["writeAtFarEnd"], "type": "string"}}}, "NetworkConstructDataRO": {"type": "object", "properties": {"relationships": {"description": "The relationships of a network construct", "$ref": "#/definitions/NetworkConstructRelationshipsRO"}, "attributes": {"$ref": "#/definitions/NetworkConstructAttributesRO"}, "type": {"enum": ["networkConstructs"], "type": "string", "description": "The Network Construct resource type"}, "id": {"type": "string", "description": "The unique identifier for the NetworkConstruct resource"}}}, "G8032PackageRO": {"type": "object", "properties": {"guardTime": {"type": "integer", "description": "guard time in millisecond.", "format": "int32"}, "operationalChannelBlock": {"default": false, "type": "boolean", "description": "True if the port is blocked, i.e portState == Blocked"}, "forceSwitch": {"default": false, "type": "boolean", "description": "a flag indicating whether the switching is forced or not."}, "portState": {"enum": ["disabled", "forwarding", "blocked", "unknown"], "type": "string", "description": "the state of the port"}, "portDirection": {"enum": ["east", "west"], "type": "string", "description": "the direction of the port."}, "ringId": {"type": "string", "description": "The logical ring ID"}, "ringMembers": {"type": "string", "description": "a comma separated list of virtual ring members."}, "rapsVid": {"type": "string", "description": "the R-APS VID of the ring"}, "portStatus": {"enum": ["ok", "down", "CCMFailure", "localForceSwitch", "remoteForceSwitch", "remoteSignalFailure", "unknown"], "type": "string", "description": "the status of the port"}, "holdOffTimeUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "waitToRestoreUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "rplOwner": {"default": false, "type": "boolean", "description": "True if the port is configured as RPL-owner."}, "waitToBlock": {"type": "integer", "description": "wait to block time in milliseconds. ", "format": "int32"}, "revertive": {"default": false, "type": "boolean", "description": "revertive"}, "ringState": {"enum": ["initializing", "ok", "adminDisabled", "operationalDisabled", "protecting", "recovering", "unknown"], "type": "string", "description": "the state of the ring"}, "logicalRingName": {"type": "string", "description": "The logical ring name"}, "ringType": {"enum": ["majorRing", "subRing"], "type": "string", "description": "the type of ring"}, "waitToRestore": {"type": "integer", "description": "wait to restore time in minute. ", "format": "int32"}, "virtualRingName": {"type": "string", "description": "the virtual ring name"}, "ringStatus": {"enum": ["ok", "localSignalFailure", "localForceSwitch", "remoteOtherPortSignalFailure", "remoteOtherPortForceSwitch", "provisioningMismatch", "notReceivingPDUS", "noRPLOwnerDetected", "unknown"], "type": "string", "description": "the status of the ring"}, "sharedPort": {"type": "string", "description": "sharedPort information for the sub-ring (ONLY for sub-ring endNode)"}, "guardTimeUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "subRingTermination": {"default": false, "type": "boolean", "description": "flag indicating whether the subring is terminating or not"}, "holdOffTime": {"type": "integer", "description": "hold off time in milliseconds", "format": "int32"}, "waitToBlockUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}}}, "LocationRO": {"type": "object", "properties": {"mplsLabel": {"type": "string", "description": "MPLS tunnel forward/reverse in/out label"}, "interfaceIp": {"type": "string", "description": "DEPRECATED The IP address of MPLS interface"}, "baynum": {"type": "string", "description": "Bay number"}, "mcId": {"type": "string", "description": "The identifier of the media channel"}, "fiberPairTermination": {"type": "string", "description": "The terminating fiber pair id within a Branching Unit (BU)"}, "frequency": {"type": "string", "description": "The frequency of the channel"}, "subshelf": {"type": "string"}, "wavelength": {"type": "string"}, "ringId": {"type": "string", "description": "ID of the ring"}, "eqptGrp": {"type": "string", "description": "The group ID obtained from RTRV-EQPTGRP for the SAOS card on which the entity resides"}, "port": {"type": "string"}, "leg": {"enum": ["trunk", "a1", "a2"], "type": "string", "description": "Branching Unit (BU) leg e.g. Trunk, A1 or A2"}, "slot": {"type": "string"}, "index": {"type": "string"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string", "description": "MPLS tunnel role"}, "vce": {"type": "string", "description": "The VS name of the CTP entity"}, "fic": {"type": "string", "description": "Frame identification code"}, "subport": {"type": "string"}, "neName": {"type": "string", "description": "Name of the networkConstruct. For example, the OSRP node name in controlPlane."}, "logicalPortName": {"type": "string"}, "protectionRole": {"enum": ["primary", "backup"], "type": "string", "description": "Protection role"}, "lagName": {"type": "string", "description": "Name of the LAG"}, "instance": {"type": "string"}, "locationIndex": {"items": {"$ref": "#/definitions/LocationIndexesRO"}, "type": "array", "description": "List of location indexes"}, "odu2_index": {"type": "string"}, "rapsVid": {"type": "string", "description": "R-APS VID"}, "iclName": {"type": "string", "description": "Name of the ICL"}, "channel": {"type": "string"}, "nmcId": {"type": "string", "description": "OSTi CTP for the SNC"}, "direction": {"enum": ["tx", "rx"], "type": "string", "description": "The direction of the traffic flow e.g. Tx or Rx"}, "mgmtNmcId": {"type": "string", "description": "TBD"}, "peerIp": {"type": "string", "description": "Address of the BGP peer"}, "shelf": {"type": "string"}, "peerAs": {"type": "integer", "description": "Autonomous System number of the BGP peer", "format": "int64"}, "vlan": {"type": "string", "description": "The VLAN ID of the CTP entity"}, "oduCn_index": {"type": "string"}, "lspName": {"type": "string", "description": "MPLS tunnel name"}, "virtualRingName": {"type": "string", "description": "Name of the virtual ring"}, "logicalId": {"type": "string"}, "mgmtMcId": {"type": "string", "description": "TBD"}, "primaryLspName": {"type": "string", "description": "The primary MPLS tunnel name"}, "interfaceName": {"type": "string", "description": "Interface name of the IP FTP"}, "odu4_index": {"type": "string"}, "subsubslot": {"type": "string"}, "managementType": {"enum": ["tl1", "saos", "netconf", "rest", "corba", "submarineConf"], "type": "string", "description": "Management protocol type"}, "sncId": {"type": "string", "description": "Snc id number"}, "eth_index": {"type": "string"}, "pseudoWireId": {"type": "string", "description": "DEPRECATED The identifier of Pseudo-Wire CTP"}, "srcIp": {"type": "string", "description": "Source IP of the node"}, "pseudoWireName": {"type": "string", "description": "The name of the Pseudo-Wire on the CTP"}, "rack": {"type": "string"}, "subslot": {"type": "string"}}}, "ClusterRO": {"type": "object", "properties": {"clusterId": {"type": "string", "description": "Id of this Cluster."}, "clientToClient": {"description": "Holds information about ClientToClient Reflection.", "$ref": "#/definitions/ClientToClientRO"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "GatewayRO_": {"type": "object", "properties": {"overRide": {"default": false, "type": "boolean", "description": "Override the default definition of the gateway"}, "access": {"type": "string", "description": "Defines the type of Gateway ie. 6500 V6 values are:NDPROXY, OSPFV3, STATIC"}, "config": {"type": "string", "description": "Configuration of Gateway as standalone or redundant."}}}, "RRConfigRO": {"type": "object", "properties": {"clusters": {"items": {"$ref": "#/definitions/ClusterRO"}, "type": "array", "description": "Holds data related to Clusters configured on RR"}, "configured": {"default": false, "type": "boolean", "description": "A flag to check if RR configured or not."}}}, "TpeCfmPackageRO": {"type": "object", "properties": {"mep": {"items": {"$ref": "#/definitions/MepEntryRO"}, "type": "array", "description": "Each entry holds information about one Maintenance Endpoint configured on this TPE"}, "cfmServiceName": {"type": "string", "description": "The name of the CFM service"}}}, "StateHistoryRO": {"type": "object", "properties": {"state": {"enum": ["NOT_SYNCHRONIZED", "SYNCHRONIZING", "SYNCHRONIZED", "FAILED", "ABORTED", "DELETING", "DELETE_FAILED", "TIMEOUT"], "type": "string"}, "time": {"type": "string"}}}, "Ipv4RO": {"type": "object", "properties": {"ip": {"type": "string", "description": "Value of IP address, can be either a V4 "}, "ospfcircuit": {"items": {"$ref": "#/definitions/OspfcircuitRO"}, "type": "array"}, "dhcpRelayAgent": {"default": false, "type": "boolean", "description": "Defines if the interface is a V4 DHCP relay agent, must be off for unnumbered interfaces"}, "defaultGateway": {"type": "string", "description": "The next hope router IP, can be a V4 address"}, "subnetMask": {"type": "string", "description": "The mask which is applied on the interface, an IPV4 mask"}}}, "LoopbackPackageRO": {"type": "object", "properties": {"loopbackWavelength": {"type": "string", "description": "Wavelength of the loopback test; taken directly from the value of the TL1 LPBKWVL field"}, "loopbackStatus": {"type": "string", "description": "Status of the test; taken directly from the value of the TL1 LPBKSTATUS field."}}}, "MplsFbProtectedTunnelRO": {"type": "object", "properties": {"srcIp": {"type": "string", "description": "Source IP address of the tunnel protected by this FB tunnel"}, "destIp": {"type": "string", "description": "Destination IP address of the tunnel protected by this FB tunnel"}, "role": {"enum": ["ingress", "transit"], "type": "string", "description": "The role at this point of the MPLS tunnel protected by this FB tunnel"}, "name": {"type": "string", "description": "Name of the tunnel protected by this FB tunnel"}}}, "TrafficProfileParamRO": {"type": "object", "properties": {"selectFrom": {"items": {"type": "string"}, "type": "array", "description": "Alternate form of value attribute that permits a comma separated list of the choices available for selection."}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "name": {"type": "string", "description": "Name of attribute."}, "value": {"type": "string", "description": "Value of attribute."}, "location": {"enum": ["self", "intent", "farEnd", "immediateClientTpe"], "type": "string", "description": "If an input, where to find the attribute. If an output, where to set the attribute."}}}, "TunnelPathRO": {"type": "object", "properties": {"hops": {"items": {"$ref": "#/definitions/HopEntryRO"}, "type": "array"}, "pathName": {"type": "string", "description": "The name of this explicit tunnel path"}}}, "Ipv6InfrastructureRO": {"type": "object", "properties": {"dhcpRelayAgent": {"description": "DHCP Relay agent attributes.", "$ref": "#/definitions/DhcpRelayAgentRO_"}, "dhcpclient": {"default": false, "type": "boolean", "description": "Indicates if the DHCP client is enabled"}, "ospfRouter": {"description": "OSPF Router Details", "$ref": "#/definitions/OspfRouterRO_"}, "gateway": {"description": "Gateway Details of the network construct", "$ref": "#/definitions/GatewayRO_"}, "stackEnabled": {"default": false, "type": "boolean", "description": "Indicates if IPV4 is enabled"}}}, "NetworkConstructListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Array of associated planned, expectations, discovered, physical locations, or parent Network Constructs"}, "meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "data": {"items": {"$ref": "#/definitions/NetworkConstructDataRO"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "FreDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/FreRelationshipsRO"}, "attributes": {"$ref": "#/definitions/FreAttributesRO"}, "type": {"enum": ["fres", "relatedFres"], "type": "string", "description": "The FRE resource type"}, "id": {"type": "string", "description": "The unique identifier for the FRE resource"}}}, "DhcpRelayAgentRO_": {"type": "object", "properties": {"enable": {"default": false, "type": "boolean", "description": "Disable the DHCP relay agent"}, "serverIp": {"type": "string", "description": "The IP address the relay agent should forward to"}}}, "VirtualTpeBWConstraintsRO": {"type": "object", "properties": {"isFre": {"default": false, "type": "boolean"}, "owningPoolAdapterType": {"type": "string"}, "unitsToConsume": {"type": "string"}, "id": {"type": "string"}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}}}, "GroupAttributesRO": {"type": "object", "properties": {"groupType": {"type": "string", "description": "Type of the group"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "name": {"type": "string", "description": "Name of the group."}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}}}, "InterfaceIPAttributesRO": {"type": "object", "properties": {"ipv6": {"items": {"$ref": "#/definitions/Ipv6RO"}, "type": "array", "description": "List IPV6 Addresses for an interface."}, "iisis": {"$ref": "#/definitions/IisisRO"}, "name": {"type": "string", "description": "The name of the interface the IP communications details are associated with"}, "ipv4": {"$ref": "#/definitions/Ipv4RO"}}}, "BgpAfiSafiRO": {"type": "object", "properties": {"grCapability": {"enum": ["enabled", "disabled"], "type": "string", "description": "GR capability"}, "name": {"enum": ["IPV4_UNICAST", "IPV4_LABELED_UNICAST"], "type": "string", "description": "Supported afi-safi names."}, "nextHopSelf": {"description": "This stores BGP Afi Safi NextHopSelf related information.", "$ref": "#/definitions/AfiSafiNextHopSelfRO"}, "activated": {"default": false, "type": "boolean", "description": "true if activated otherwise false"}, "rrEnabled": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}, "prefixList": {"description": "This stores BGP Afi Safi Prefix List related information.", "$ref": "#/definitions/AfiSafiPrefixListRO"}, "orf": {"description": "This stores BGP Afi Safi Orf related information.", "$ref": "#/definitions/AfiSafiOrfRO"}}}, "UserDataRO": {"type": "object"}, "AttributeMatchingRuleRO": {"type": "object", "properties": {"impact": {"enum": ["trafficImpactingWithNoMatch", "noTrafficImpactWithNoMatch"], "type": "string"}, "matchRequired": {"default": false, "type": "boolean"}, "matchingScope": {"enum": ["e2e", "local"], "type": "string"}}}, "DhcpRelayAgentRO": {"type": "object", "properties": {"enable": {"default": false, "type": "boolean", "description": "Disable the DHCP relay agent"}, "serverIp": {"type": "string", "description": "The IP address the relay agent should forward to"}}}, "BwRO": {"type": "object", "properties": {"available": {"type": "string", "description": "The available bandwidth left to be"}, "requested": {"type": "string", "description": "The requested bandwidth from the supporting layer, e.g. a dynamic tunnel requesting bandwidth from IP interface"}, "autoSize": {"enum": ["enable", "disable"], "type": "string", "description": "If true, the MPLS tunnel will be auto-sized by the NE"}, "used": {"type": "string", "description": "The current used bandwidth by all supported clients"}, "autoSizeLastResizeStartTime": {"type": "string", "description": "Start time of the last auto resize happened"}, "autoSizeIntervalMinutes": {"type": "string", "description": "The configured interval between auto-sizing attempts"}, "autoSizeLastResizeEndTime": {"type": "string", "description": "End time of the last auto resize happened"}, "maximum": {"type": "string", "description": "The maximum bandwidth configured for supported clients"}, "operational": {"type": "string", "description": "The current bandwidth being allocated from the supporting layer"}, "autoSizeLastResizeReason": {"type": "string", "description": "Reason of the last auto resize happened"}, "bookingFactor": {"type": "string", "description": "The booking factor of how much the bandwidth can be oversubscribed, e.g. on an IP interface"}, "minimum": {"type": "string", "description": "The minimum bandwidth configured for supported clients"}, "autoSizeLastResizeState": {"enum": ["success", "failure", "in_progress"], "type": "string", "description": "The state of the last auto-sizing attempt"}, "increment": {"type": "string", "description": "The configured bandwidth increment for auto-sizing of an MPLS tunnel"}, "autoSizeFailureAction": {"enum": ["none", "alarm", "mbb"], "type": "string", "description": "The action to be taken when auto-sizing fails: raise alarm, or make-before-break"}, "maxReservable": {"type": "string", "description": "The maximum reservable bandwidth allowed to be allocated to supported clients and it's calculated as bwBookingFactor x bwTotal"}, "profileName": {"type": "string", "description": "The name of the bandwidth profile associated with the dynamic tunnel endpoint"}, "total": {"type": "string", "description": "The total bandwidth allocated or allowed, e.g. the capacity of an IP interface"}, "autoSizingMode": {"enum": ["none", "cac", "utilization"], "type": "string", "description": "The configured auto-sizing mode"}, "unit": {"type": "string", "description": "The bandwidth unit that applies to all bandwidth attributes in this package. Available values: bps, kbps, mbps, gbps"}}}, "FreResiliencyPackageRO": {"type": "object", "properties": {"role": {"enum": ["Working", "Protecting"], "type": "string", "description": "the role of the fre"}}}, "TpeDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/TpeRelationshipsRO"}, "attributes": {"$ref": "#/definitions/TpeAttributesRO"}, "type": {"enum": ["tpes"], "type": "string", "description": "The TPE resource type"}, "id": {"type": "string", "description": "The unique identifier for the TPE resource"}}}, "LinkAttributesRO": {"type": "object", "properties": {"userLabel": {"type": "string", "description": "The user label (not necessarily unique) of the topology to be created."}, "note": {"$ref": "#/definitions/NoteRO"}, "description": {"type": "string", "description": "Short description of the topology to be created."}, "tags": {"items": {"type": "string"}, "type": "array", "description": "Reference to 3rd Party Network involved in this topology, can be re-used for other purposes in future."}}}, "MappingInteractionRuleRO": {"type": "object", "properties": {"segmentBoundaryRule": {"enum": ["mustNotOverlap"], "type": "string", "description": "The default is mustNotOverlap."}}}, "OneToOneRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipDataRO"}}}, "Ipv4InfrastructureRO": {"type": "object", "properties": {"dhcpRelayAgent": {"description": "DHCP Relay agent attributes.", "$ref": "#/definitions/DhcpRelayAgentRO"}, "dhcpclient": {"default": false, "type": "boolean", "description": "Indicates if the DHCP client is enabled"}, "ospfRouter": {"description": "OSPF Router Details", "$ref": "#/definitions/OspfRouterRO"}, "gateway": {"description": "Gateway Details of the network construct", "$ref": "#/definitions/GatewayRO"}, "stackEnabled": {"default": false, "type": "boolean", "description": "Indicates if IPV4 is enabled"}}}, "IndexesRO": {"type": "object"}, "FreListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to a FRE, such as EndPointData, TpeData, FreExpectationData"}, "meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "data": {"items": {"$ref": "#/definitions/FreDataRO"}, "type": "array", "description": "An array of FREs"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "CapacityReservationRO": {"type": "object", "properties": {"endTime": {"type": "string", "format": "date-time"}, "startTime": {"type": "string", "format": "date-time"}, "usedCapacity": {"description": "Resource to track total and used capacity per client type for a TPE", "$ref": "#/definitions/CapacityRO"}}}, "LqsDataRO": {"type": "object", "properties": {"status": {"enum": ["low", "good", "upgrade", "high"], "type": "string"}, "fiber": {"$ref": "#/definitions/LqsFiberDataRO"}, "margin": {"$ref": "#/definitions/LqsMarginDataRO"}}}, "ResiliencyHandlingPackageRO": {"type": "object", "properties": {"direction": {"enum": ["Tx", "Rx"], "type": "string", "description": "the direction of the resiliency service"}, "edges": {"items": {"$ref": "#/definitions/ResiliencyHandlingEdgeRO"}, "type": "array", "description": "hold the pairs of ID of the CTPs from the physical view and its client PTP ID, for the eFRE endpoints."}, "layerRateStack": {"items": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string"}, "type": "array", "description": "ordered list of layerRates"}, "commonEdgeTpeId": {"type": "string", "description": "the ID of the common CTP in the physical view"}}}, "MetaDataRO": {"type": "object", "properties": {"absoluteTotal": {"type": "integer", "description": "The unfiltered total number of entities in the data", "format": "int64"}, "total": {"type": "integer", "description": "The total number of entities in the data", "format": "int64"}, "aggregations": {"items": {"$ref": "#/definitions/AggregationRO"}, "type": "array", "description": "The aggregated data based on a requested aggregation name and criteria"}}}, "AggregationRO": {"type": "object", "properties": {"buckets": {"items": {"$ref": "#/definitions/AggregationBucketRO"}, "type": "array", "description": "Aggregation results for different criteria"}, "name": {"type": "string", "description": "The name of the aggregation"}}}, "HopEntryRO": {"type": "object", "properties": {"hopType": {"enum": ["strict", "loose"], "type": "string", "description": "The type of this hop"}, "hopAddress": {"type": "string", "description": "The IP-data interface address for this hop"}}}, "PhotonicSpectrumPackageRO": {"type": "object", "properties": {"minFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the previous NMC."}, "signalBandWidth10DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 10 dBm less than peak power."}, "maxFreqDeadBand": {"type": "string", "description": "Upper dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "targetMinFreq": {"type": "string", "description": "Allows the automatic adjustment of the MINFREQ when any associated NMCTP are deleted. Default is MINFREQ (no target lower frequency)."}, "signalBandWidth3DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 3 dBm less than peak power."}, "minFreqDeadBand": {"type": "string", "description": "Lower dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "maxFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the next NMC."}, "frequency": {"type": "string", "description": "The central signal frequency."}, "freqResolution": {"type": "string", "description": "Indicates the recurring frequency step that is allowed to be configured on the transponder."}, "maxFreq": {"type": "string", "description": "The maximum signal frequency."}, "targetMaxFreq": {"type": "string", "description": "Allows the automatic adjustment of the MAXFREQ when any associated NMCTP are deleted. Default is MAXFREQ (no target upper frequency)."}, "wavelength": {"type": "string", "description": "The central signal wavelength."}, "wavelengthGrid ": {"type": "string", "description": "A hexadecimal number representing the vector of wavelengths that can be used by this SNC. Each bit set within the number indicates which wavelength is currently configured"}, "minFreq": {"type": "string", "description": "The minimum signal frequency."}}}, "EquipmentDataRO": {"type": "object", "properties": {"relationships": {"description": "The equipment relationships", "$ref": "#/definitions/EquipmentRelationshipsRO"}, "attributes": {"description": "The equipment attributes", "$ref": "#/definitions/EquipmentAttributesRO"}, "type": {"enum": ["equipment"], "type": "string", "description": "The equipment resource type"}, "id": {"type": "string", "description": "The unique identifier for the equipment resource"}}}, "FreDisplayPhotonicSpectrumDataRO": {"type": "object", "properties": {"wavelength": {"type": "string", "description": "The corresponding wavelength value for the frequency attribute"}, "frequency": {"type": "string", "description": "The frequency value for one of the underlying Endpoints"}, "channel": {"type": "string", "description": "The corresponding channel number for the frequency attribute"}}}, "RelationshipMetaDataRO": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean", "description": "Flags whether the included relationship object is partially populated or not"}}}, "EquipmentGroupRelationshipsRO": {"type": "object", "properties": {"networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "parent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "expectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "discovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipment": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "planned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "LinksRO": {"type": "object", "properties": {"last": {"type": "string", "description": "The last page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "next": {"type": "string", "description": "The next page of data", "format": "uri"}, "current": {"type": "string", "description": "The current page of data", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "OspfRouterRO_": {"type": "object", "properties": {"routerId": {"type": "string", "description": "ID of the router primarily applicable for OSPFV3, takes the from of an IPV4 address"}, "areaBorderRouter": {"enum": ["RFC_3509", "RFC_2328"], "type": "string", "description": "Area border Router"}, "area": {"type": "string", "description": "OSPFV3 area of the network construct. Takes the form of an IPV4 address"}}}, "LayerProtocolRO": {"type": "object", "properties": {"termination": {"description": "The specification of the layer protocol termination (including framing, modulation etc). For example the specification of the function that takes a MAC frame and extracts the content (removing the MAC address in the process).", "$ref": "#/definitions/TerminationRO"}, "accessPoint": {"$ref": "#/definitions/AccessPointRO"}, "connectionPoint": {"$ref": "#/definitions/ConnectionPointRO"}, "layeredAttributes": {"items": {"$ref": "#/definitions/LayeredAttributeRO"}, "type": "array"}, "adaptationPools": {"items": {"$ref": "#/definitions/AdaptationPoolRO"}, "type": "array"}}}, "EquipmentSpecRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "hardwareVersion": {"type": "string", "description": "The hardware version"}, "serialNumber": {"type": "string", "description": "The serial number"}, "version": {"type": "string", "description": "The software version"}, "partNumber": {"type": "string", "description": "The part number"}, "type": {"type": "string", "description": "The type of equipment"}, "displayLabels": {"description": "Display label key/value pair map", "$ref": "#/definitions/DisplayLabelMapRO"}, "manufacturer": {"type": "string", "description": "The manufacturer"}}}, "MplsFrrRO": {"type": "object", "properties": {"frrProtected": {"default": false, "type": "boolean", "description": "If true, the tunnel is protected by fast re-route (FRR) on the headend TX MPLS CTP"}, "profileName": {"type": "string", "description": "The FRR profile name on the headend TX MPLS CTP"}, "localProtection": {"description": "Holds MPLS FRR local protection attributes for TX MPLS CTP", "$ref": "#/definitions/MplsFrrLocalProtectionRO"}, "actualProtectionRoute": {"items": {"$ref": "#/definitions/MplsFrrProtectionRouteHopRO"}, "type": "array", "description": "Actual FRR protection route on the headend TX MPLS CTP"}}}, "GroupDataRO": {"type": "object", "properties": {"relationships": {"description": "The relationships of a group", "$ref": "#/definitions/GroupRelationshipsRO"}, "attributes": {"$ref": "#/definitions/GroupAttributesRO"}, "type": {"enum": ["group"], "type": "string", "description": "The Group resource type"}, "id": {"type": "string", "description": "The unique identifier for the Group resource"}}}, "BfdRO": {"type": "object", "properties": {"transmitInterval": {"type": "string", "description": "The interval between transmitting BFD messages"}, "configured": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "receiveInterval": {"type": "string", "description": "The interval between receiving BFD messages"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of BFD for this endpoint"}, "role": {"enum": ["passive", "active", "any"], "type": "string", "description": "The role of BFD for this endpoint"}, "profileName": {"type": "string", "description": "The profile name associated with this set of BFD attributes"}, "operationalState": {"enum": ["up", "down"], "type": "string", "description": "The operational state of BFD for this endpoint"}}}, "StitchingTriggersRO": {"type": "object", "properties": {"partitioningFreConcreteIds": {"items": {"type": "string"}, "type": "array", "description": "List of physical FRE IDs for which stitcher should add a concrete relationship to on the stitched FRE"}, "protectingFreConcreteIds": {"items": {"type": "string"}, "type": "array", "description": "List of physical FRE IDs for which stitcher should add a concrete relationship to on the stitched resiliency FRE, where there is an EncapsulatedResiliency with a protectionScheme defined."}, "backpropagateTpeId": {"type": "string", "description": "Stitcher uses backpropagte TPE id while creating FRE in physical view"}}}, "MplsFrrProtectionRouteHopRO": {"type": "object", "properties": {"ip": {"type": "string", "description": "IP interface address or node loopback IP address of the current hop"}, "bwProtected": {"default": false, "type": "boolean", "description": "True when the bandwidth is protected on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}, "protectionType": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "The FB protection type on this hop for this unidirectional tunnel"}}}, "SyncStateRO": {"type": "object", "properties": {"lastStateUpdated": {"type": "string"}, "stateHistory": {"items": {"$ref": "#/definitions/StateHistoryRO"}, "type": "array", "description": "list of state and time history."}, "state": {"enum": ["NOT_SYNCHRONIZED", "SYNCHRONIZING", "SYNCHRONIZED", "FAILED", "ABORTED", "DELETING", "DELETE_FAILED", "TIMEOUT"], "type": "string"}, "additionalText": {"type": "string"}, "lastSynchronized": {"type": "string"}}}, "EquipmentListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to equipment, such as EquipmentExpectationData"}, "meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "data": {"items": {"$ref": "#/definitions/EquipmentDataRO"}, "type": "array", "description": "A list of equipment"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "LayeredAttributeRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "layer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "loopbackPackage": {"description": "This package stores loopback information", "$ref": "#/definitions/LoopbackPackageRO"}}}, "AttributePoliciesRO": {"type": "object", "properties": {"defaultAttributeSourcePolicy": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string", "description": "Source of attribute."}, "overrides": {"items": {"$ref": "#/definitions/AttributePolicyOverrideRO"}, "type": "array"}}}, "IisisRO": {"type": "object", "properties": {"circuit": {"default": false, "type": "boolean", "description": "IISIS circuit exists on the interface"}}}, "LayerTerminationRO": {"type": "object", "properties": {"adminWt": {"type": "number", "description": "Administrative weight which specifies the level of importance given to the OSRP link", "format": "double"}, "resiliencyTopologyPackage": {"description": "This package stores resiliency topology information.", "$ref": "#/definitions/ResiliencyTopologyPackageRO"}, "ttiPackage": {"description": "This package stores Tti information.", "$ref": "#/definitions/TtiPackageRO"}, "powerPackage": {"description": "This package stores power related information.", "$ref": "#/definitions/PowerPackageRO"}, "structureType": {"enum": ["dual_port", "dual_port_client_mapping", "exposed_lone_cp", "lone_adapter", "full_layer_optional_exposed_cp", "full_layer_optional_exposed_cp_and_tcp", "full_layer_fixed", "exposed_tcp", "concatenating_adapter", "concatenatable_exposed_tcp", "layer_termination_structure_type_unknown", "concatenatable_fixed", "exposed_TCP_and_CP"], "type": "string", "description": "Identifies the internal structure of the layer termination."}, "mplsPackage": {"description": "This package stores MPLS tunnel information.", "$ref": "#/definitions/MplsPackageRO"}, "layerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "boundaries": {"items": {"type": "string"}, "type": "array", "description": "Array of strings to track boundaries of Layer Termination"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of the layer termination."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "cfmPackages": {"items": {"$ref": "#/definitions/TpeCfmPackageRO"}, "type": "array", "description": "Holds data related to CFM services configured on an Ethernet service"}, "terminationState": {"enum": ["layer_termination_cannot_terminate", "layer_termination_not_terminated", "terminated_server_to_client_flow", "terminated_client_to_server_flow", "terminated_bidirectional", "layer_termination_permanently_terminated", "termination_state_unknown"], "type": "string", "description": "Whether and how this LayerTermination is terminated."}, "signalIndex": {"description": "Attribute representing a signal index (e.g. channel information, wavelength, etc).", "$ref": "#/definitions/SignalIndexRO"}, "controlPlanePackage": {"description": "The northbound model of Control Plane Package.", "$ref": "#/definitions/ControlPlanePackageRO"}, "latency": {"type": "number", "description": "Indicates the delay in microseconds.", "format": "double"}, "dynamicLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "layerProtocol": {"description": "A LayerProtocol instance is used for controlling termination and monitoring functionality. Also, it is used for controlling the adaptation (i.e. encapsulation and/or multiplexing of client signal), tandem connection monitoring, traffic conditioning and/or shaping functionality at an intermediate point along a connection.", "$ref": "#/definitions/LayerProtocolRO"}, "adjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackageRO"}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "trafficProfiles": {"items": {"$ref": "#/definitions/TrafficProfileRO"}, "type": "array", "description": "Traffic profile characteristics used to data-drive provisioning workflows."}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/BgpPackageRO"}, "active": {"default": false, "type": "boolean", "description": "Whether or not an inactive layer appears to be absent from the layer stack."}, "nativeName": {"type": "string", "description": "The name of the TPE that is native to the network element."}, "g8032Package": {"description": "This package stores information about the G8032 ring", "$ref": "#/definitions/G8032PackageRO"}, "retainedAdjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackageRO"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "serviceLabel": {"type": "string", "description": "The service-identifiying label"}, "manualAdjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackageRO"}, "operationalState": {"enum": ["up", "down", "link_flapping", "abnormal"], "type": "string", "description": "The operational (actual) state of the layer termination."}, "nativeLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "bundleIds": {"items": {"type": "string"}, "type": "array", "description": "List of up to 20 protection bundles to which the OSRP link belongs"}}}, "FreRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to a FRE, such as FreData, EndPointData, TpeData, EquipmentData, EquipmentHolderData, FrePlannedData, FreExpectationData, FreDiscoveredData, ResiliencyControllerData, EncapsulatedResiliencyData"}, "data": {"$ref": "#/definitions/FreDataRO"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "FreAttributesRO": {"type": "object", "properties": {"latency": {"type": "number", "description": "Indicates the delay in microseconds.", "format": "double"}, "adminWt": {"type": "number", "description": "Administrative weight which specifies the level of importance given to the OSRP link", "format": "double"}, "customerName": {"type": "string", "description": "The name of the customer for the fre."}, "resiliencyTopologyPackage": {"description": "This package stores resiliency topology information.", "$ref": "#/definitions/ResiliencyTopologyPackageRO"}, "relatedType": {"type": "string", "description": "The Type of Relation"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition this fre belongs to."}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "adminState": {"enum": ["ENABLED", "DISABLED", "NOT_APPLICABLE", "IN_SERVICE", "OUT_OF_SERVICE"], "type": "string", "description": "Indicates the administrative state of the FRE, including whether traffic has been enabled and whether the FRE should be used by clients. It is derived from the state(s) of terminating TPE(s). Disabled means that FRE is prevented from carrying traffic. Enabled means that FRE is allowed to carry traffic."}, "displayData": {"$ref": "#/definitions/FreDisplayDataRO"}, "reliability": {"enum": ["MANUAL", "AUTO"], "type": "string", "description": "Stitcher attribute to set reliability on FRE"}, "freType": {"enum": ["explicitRoute", "explicitRouteGroup", "snc", "sncGroup", "regen", "route", "resilientConfig", "osrpLine", "osrpLink", "sncp", "eline", "elan", "etree", "dropAndContinue"], "type": "string", "description": "The sub type of FRE"}, "bandwidthTriggers": {"$ref": "#/definitions/BandwidthTriggersRO"}, "userLabel": {"type": "string", "description": "The label given to the FRE by an user"}, "maxReservableBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "lqsData": {"$ref": "#/definitions/LqsDataRO"}, "topologySources": {"items": {"enum": ["discovered", "adjacency", "stitched", "connection_rule", "connection_rule_nodal", "backpropagated", "connection_rule_snc", "connection_rule_sncp", "manual", "retained"], "type": "string"}, "type": "array", "description": "Source of topology"}, "deploymentState": {"enum": ["SCHEDULED", "NOT_PRESENT_IN_NETWORK", "DEPLOYMENT_IN_PROGRESS", "PROVISIONED", "INCOMPLETE_DEPLOYMENT", "DEPLOYED", "COMPLETE_IN_NETWORK", "INCOMPLETE_PARTIAL", "INCOMPLETE_PARTIAL_IN_CONFLICT", "INCOMPLETE_READY_BEST_EFFORT", "UNDEPLOYMENT_IN_PROGRESS", "INCOMPLETE_UNDEPLOYMENT", "DISCOVERED"], "type": "string", "description": "Represents the stage that the FRE is at in the construction/deployment/discovery life cycle"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the FRE"}, "description": {"type": "string", "description": "String to store description field on service"}, "layerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "note": {"$ref": "#/definitions/NoteRO"}, "state": {"enum": ["IS", "OOS", "OOS_AUMA"], "type": "string", "description": "TO BE REMOVED. Use adminState."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "cfmPackages": {"items": {"$ref": "#/definitions/FreCfmPackageRO"}, "type": "array", "description": "Holds data related to CFM services configured on an Ethernet service"}, "deploymentStateTransaction": {"enum": ["SCHEDULED", "NOT_PRESENT_IN_NETWORK", "DEPLOYMENT_IN_PROGRESS", "PROVISIONED", "INCOMPLETE_DEPLOYMENT", "DEPLOYED", "COMPLETE_IN_NETWORK", "INCOMPLETE_PARTIAL", "INCOMPLETE_PARTIAL_IN_CONFLICT", "INCOMPLETE_READY_BEST_EFFORT", "UNDEPLOYMENT_IN_PROGRESS", "INCOMPLETE_UNDEPLOYMENT", "DISCOVERED"], "type": "string", "description": "Represents the stage that the FRE is at in the construction/deployment/discovery life cycle"}, "stitchingTriggers": {"$ref": "#/definitions/StitchingTriggersRO"}, "controlPlanePackage": {"$ref": "#/definitions/ControlPlanePackageRO"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "isInConflict": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE is in conflict with other FREs."}, "resiliencyPackage": {"description": "The fre resiliency package contains attributes only appear in resiliency view.", "$ref": "#/definitions/FreResiliencyPackageRO"}, "provisioningAttributes": {"description": "Indicates attributes that are used solely in the provisioning workflow. These attributes would not be reported on discovery, but aid in the provisioning workflow.", "$ref": "#/definitions/ProvisioningAttributesRO"}, "tags": {"items": {"type": "string"}, "type": "array", "description": "A set of tags for a given fre."}, "derivedAttributes": {"description": "Attributes that have been derived from other attributes and need to be stored", "$ref": "#/definitions/FreDerivedAttributesRO"}, "photonicSpectrumPackageList": {"items": {"$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "type": "array"}, "serviceClass": {"enum": ["EVC", "E_TRANSIT", "E_ACCESS", "VLAN", "TDM", "PSEUDOWIRE_LINK", "TRANSPORT_CLIENT", "PHOTONIC", "TUNNEL", "IP", "LLDP", "LAG", "OTU", "OSRP_LINK", "OSRP_LINE", "ROADM_LINE", "FIBER", "SNC", "SNCP", "ICL", "RING", "BGP_SESSION"], "type": "string", "description": "Represents the type of FRE service"}, "signalContentType": {"type": "string", "description": "Represents whether the FRE is of VLAN/VCE type for L2 devices"}, "mgmtName": {"type": "string", "description": "The name given to the FRE on the NE where applicable (e.g. VS name for SAOS based devices)"}, "mplsPackage": {"description": "This package stores MPLS tunnel information.", "$ref": "#/definitions/MplsPackageRO"}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "internalStructure": {"enum": ["SIMPLE", "SIMPLE_SWITCHED", "PROTECTED_ONE_END", "MULTI_SIMPLE", "MULTIPLE", "PROTECTED_BOTH_ENDS", "MULTIPOINT", "HUB_AND_SPOKE", "EXPLICIT", "INTERCONNECT_ONE_END", "INTERCONNECT_BOTH_ENDS", "DUAL_HOMED_ONE_END", "DUAL_HOMED_BOTH_ENDS", "MULTIPOINT_DC", "UNKNOWN"], "type": "string", "description": "Visible abstraction of the internal structure of the FRE"}, "active": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE is active, or simply a potential."}, "nativeName": {"type": "string", "description": "The name of the FRE that is native to the network element"}, "controlActivityState": {"enum": ["NONE", "ACTIVATING", "DEACTIVATING", "IDLE", "PENDING", "MODIFYING", "FAILING", "DEGRADED"], "type": "string", "description": "Represents the state of management activity being performed against this FRE."}, "domainTypes": {"items": {"type": "string"}, "type": "array", "description": "List of domains/protection scheme this FRE is included in."}, "bookingData": {"description": "Bandwidth booking data", "$ref": "#/definitions/BookingDataRO"}, "explicitRouteGroup": {"description": "Explicit Route Group", "$ref": "#/definitions/ExplicitRouteGroupRO"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "multiHighestStackLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "usedBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "retainedMaxReservableBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "groupPackage": {"description": "Group Package", "$ref": "#/definitions/GroupPackageRO"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "gneSubnetName": {"type": "string", "description": "The GNE Subnet Name of the FRE"}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "resilienceLevel": {"enum": ["UNPROTECTED", "PARTIAL", "PROTECTED", "PROTECTED_IN_JEOPARDY"], "type": "string", "description": "Indicates the general level of resiliency under this given FRE."}, "directionality": {"enum": ["unidirectional", "bidirectional"], "type": "string", "description": "Indicates if the FRE is unidirectional or bidirectional"}, "operationState": {"enum": ["FULLY_OPERATING", "NOT_OPERATING", "DEGRADED_OPERATION", "NOT_APPLICABLE", "UNDETERMINED", "IN_SERVICE", "DEGRADED", "OUT_OF_SERVICE_EXTERNAL", "OUT_OF_SERVICE"], "type": "string", "description": "Represents the total traffic carrying capability of the FRE. Relates to flow of traffic across the FRE between endpoints."}, "networkRole": {"enum": ["IFRE", "FREAP", "FREhAP", "ROADMLINE", "IFRECP", "EFRE"], "type": "string", "description": "Determines if the FRE participates in an internal or external forwarding view or involves access points or connection points"}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/FreBgpPackageRO"}, "linkLabel": {"type": "string", "description": "A Label for OTU links"}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePoliciesRO"}, "stitchingFloorActive": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE should not have stitched client FREs."}, "bundleIds": {"items": {"type": "string"}, "type": "array", "description": "List of up to 20 protection bundles to which the OSRP link belongs"}, "routingConstraints": {"$ref": "#/definitions/RoutingConstraintsRO"}, "resiliencyHandlingPackage": {"items": {"$ref": "#/definitions/ResiliencyHandlingPackageRO"}, "type": "array", "description": " triggers stitcher building resiliency view and NSI updating layerRate in resiliency view"}}}, "OspfRouterRO": {"type": "object", "properties": {"routerId": {"type": "string", "description": "ID of the router primarily applicable for OSPF, takes the from of an IPV4 address"}, "areaBorderRouter": {"enum": ["RFC_3509", "RFC_2328"], "type": "string", "description": "Area border Router"}, "areaSystemBorderRouter": {"enum": ["ON", "OFF"], "type": "string", "description": "Defines if the router is a area system border router"}, "area": {"type": "string", "description": "OSPFV2 area of the network construct. Takes the form of an IPV4 address"}}}, "ContinuousAdapterRulesPackageRO": {"type": "object", "properties": {"lowerBoundaryRule": {"enum": ["mustSnapTo6_25GHzGrid_0_768", "mustSnapTo37_5GHzGrid_0_96", "snapTo6_25GHzGrid", "snapTo50GHzGrid", "snapTo100GHzGrid", "snapTo75GHzGrid"], "type": "string", "description": "Rule that the boundary of the range must follow. Can point to a specific algorithm to be executed."}, "centerFrequencyRule": {"enum": ["transponderResolution"], "type": "string", "description": "Rule that the centerFrequency of the range must follow. Can point to a specific algorithm to be executed."}, "segmentationRule": {"enum": ["oneSegementInGroup"], "type": "string", "description": "Whether the segment can be fragmented."}, "upperBoundaryRule": {"enum": ["mustSnapTo6_25GHzGrid_0_768", "mustSnapTo37_5GHzGrid_0_96", "snapTo6_25GHzGrid", "snapTo50GHzGrid", "snapTo100GHzGrid", "snapTo75GHzGrid"], "type": "string", "description": "Rule that the boundary of the range must follow. Can point to a specific algorithm to be executed."}, "widthRule": {"enum": ["mediaChannelWidthRule", "nmcWidthRule"], "type": "string", "description": "How wide the range can be. Can point to a specific algorithm to be executed."}}}, "GeoLocationRO": {"type": "object", "properties": {"latitude": {"type": "string", "description": "Latitude of the device location"}, "longitude": {"type": "string", "description": "Longitude of the device location"}, "zone": {"type": "string", "description": "Zone of the device location"}}}, "DisplayLabelMapRO": {"type": "object"}, "GroupRelationshipsRO": {"type": "object", "properties": {"fres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "groupPlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "parentGroup": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstructs": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "TtiAttributeRO": {"type": "object", "properties": {"dapi": {"type": "string", "description": "String to hold 'dapi' attribute"}, "operator": {"type": "string", "description": "String to hold 'operator' attribute"}, "sapi": {"type": "string", "description": "String to hold 'sapi' attribute"}}}, "GatewayRO": {"type": "object", "properties": {"overRide": {"default": false, "type": "boolean", "description": "Override the default definition of the gateway"}, "access": {"type": "string", "description": "Defines the type of Gateway ie. 6500 V4 values are: ARP, NAT, OSPF, STATIC, PRIVATEIP"}, "config": {"type": "string", "description": "Configuration of Gateway as standalone or redundant."}}}, "MplsFbRO": {"type": "object", "properties": {"excludeIp": {"type": "string", "description": "IP address excluded from the FB tunnel path"}, "protectedTunnels": {"items": {"$ref": "#/definitions/MplsFbProtectedTunnelRO"}, "type": "array"}, "frrAutoCreated": {"default": false, "type": "boolean", "description": "The flag indicating whether the FB tunnel is auto created by FRR"}, "protectedInterface": {"type": "string", "description": "Name of the interface being protected by the FB tunnel"}}}, "L2NodeRoutingCapabilitiesRO": {"type": "object", "properties": {"isRSVPTEEnabled": {"default": false, "type": "boolean", "description": "true , if RSVP-TE protocol is enabled on this L2 node."}, "isBGPEnabled": {"default": false, "type": "boolean", "description": "true, if BGP protocol is enabled on this L2 node."}, "isQiQEnabled": {"default": false, "type": "boolean", "description": "true , if QiQ protocol is enabled on this L2 node."}, "isMPLSEnabled": {"default": false, "type": "boolean", "description": "true, if MPLS protocol is enabled on this L2 node."}}}, "MplsFrrLocalProtectionRO": {"type": "object", "properties": {"protectionFbName": {"type": "string", "description": "Protection FB tunnel name"}, "protectionAvailable": {"default": false, "type": "boolean", "description": "True when the protection is available on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_market.json b/tapi/resources/MCP_4.0.0_market.json
deleted file mode 100644
index 1f2b911a3f686f4f7f580315484dc52e89519a43..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_market.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"termsOfService": "", "description": "APIs for the Market component", "license": {"url": "", "name": ""}, "title": "Market", "contact": {"name": ""}, "version": "v1"}, "paths": {"/type-artifacts/realm": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [], "tags": ["type-artifacts"], "description": "This resource contains metadata on the type layer itself. This metadata can be used to determine the\n      status of pending type definition on-boarding operations. Specifically, the content of the response can be\n      compared against the result of an accepted pull request to determine whether the changes have finished propagating\n      into market. The version represents the latest commit fully incorporated into the type layer. The headCommit is\n      the latest accepted commit in the asset area. The property current is set to true when those values match.", "summary": "Get information on the type layer itself", "operationId": "HeadGetTypeLayerVersion"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/TypeLayerCurrentReply"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [], "tags": ["type-artifacts"], "description": "This resource contains metadata on the type layer itself. This metadata can be used to determine the\n      status of pending type definition on-boarding operations. Specifically, the content of the response can be\n      compared against the result of an accepted pull request to determine whether the changes have finished propagating\n      into market. The version represents the latest commit fully incorporated into the type layer. The headCommit is\n      the latest accepted commit in the asset area. The property current is set to true when those values match.", "summary": "Get information on the type layer itself", "operationId": "GetTypeLayerVersion"}}, "/application-slices/{applicationSliceId}/remove-sub-domains": {"post": {"responses": {"201": {"description": "Created"}, "200": {"description": "OK", "schema": {"$ref": "#/definitions/UpdateApplicationSliceSubDomainsReport"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice for which subdomains are to be removed", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "applicationSliceId"}, {"schema": {"$ref": "#/definitions/AppSliceSubDomains"}, "description": "Specifies the IDs of the subdomains to be removed", "required": true, "name": "sub-domains", "in": "body"}], "tags": ["application-slices"], "description": "", "summary": "Remove subdomains from the specified application slice", "operationId": "RemoveSubDomainsFromApplicationSlice"}}, "/tag-keys": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}], "tags": ["tag-keys"], "description": "", "summary": "Get all of the tag keys in the market", "operationId": "HeadListTagKeys"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/TagKey"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/TagKey"}, "description": "Specification defining a tag key", "required": true, "name": "tagKeyObject", "in": "body"}], "tags": ["tag-keys"], "description": "", "summary": "Create a tag key in the market using the information in the provided tag key object", "operationId": "CreateTagKey"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[TagKey]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}], "tags": ["tag-keys"], "description": "", "summary": "Get all of the tag keys in the market", "operationId": "ListTagKeys"}}, "/resources": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Optional query to limit resources by product type", "required": false, "type": "string", "name": "productId", "in": "query"}, {"description": "Optional query to limit resources by domain", "required": false, "type": "string", "name": "domainId", "in": "query"}, {"description": "Optional query to limit resources by resource provider", "required": false, "type": "string", "name": "resourceProviderId", "in": "query"}, {"description": "Optional query to limit resources by one or more resource types. Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "resourceTypeId", "in": "query"}, {"description": "Optional query to identify resource by provider resource ID", "required": false, "type": "string", "name": "providerResourceId", "in": "query"}, {"description": "Optional query to limit resources by one or more exact resource types (takes precedence over resourceTypeId). Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "exactTypeId", "in": "query"}, {"description": "Optional query to limit resources by one or more subdomain ids. Use a comma-separated string to specify multiple subdomain ids.", "required": false, "type": "string", "name": "subDomainId", "in": "query"}, {"description": "Optional query to limit resources by the application slice id.", "required": false, "type": "string", "name": "applicationSliceId", "in": "query"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Optional query parameter to define a tag filter. May use whitespace-separated AND/OR query (e.g. (one:1) OR (two:2) AND (three:3)) syntax or tagKey:tagValue syntax", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "One (and only one) of productId, resourceTypeId or exactTypeId must be specified when using the q or p filters on properties.\nThe Resource `differences` attribute supports q filtering whether any differences exist or not via `q=differences:empty` or `q=differences:nonEmpty` respectively.", "summary": "List all of the resources created within the Market", "operationId": "HeadListResources"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/Resource"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/ResourceProp"}, "description": "Specification defining a resource", "required": true, "name": "resource", "in": "body"}, {"description": "Whether to perform custom validation in addition to built-in schema and accessor validations", "default": false, "required": false, "in": "query", "type": "boolean", "name": "validate"}], "tags": ["resources"], "description": "Initial orchestration state is requested.  Poll resource until state is active or failed.", "summary": "Create a new resource in the market", "operationId": "CreateResource"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Resource]"}}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Optional query to limit resources by product type", "required": false, "type": "string", "name": "productId", "in": "query"}, {"description": "Optional query to limit resources by domain", "required": false, "type": "string", "name": "domainId", "in": "query"}, {"description": "Optional query to limit resources by resource provider", "required": false, "type": "string", "name": "resourceProviderId", "in": "query"}, {"description": "Optional query to limit resources by one or more resource types. Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "resourceTypeId", "in": "query"}, {"description": "Optional query to identify resource by provider resource ID", "required": false, "type": "string", "name": "providerResourceId", "in": "query"}, {"description": "Optional query to limit resources by one or more exact resource types (takes precedence over resourceTypeId). Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "exactTypeId", "in": "query"}, {"description": "Optional query to limit resources by one or more subdomain ids. Use a comma-separated string to specify multiple subdomain ids.", "required": false, "type": "string", "name": "subDomainId", "in": "query"}, {"description": "Optional query to limit resources by the application slice id.", "required": false, "type": "string", "name": "applicationSliceId", "in": "query"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Optional query parameter to define a tag filter. May use whitespace-separated AND/OR query (e.g. (one:1) OR (two:2) AND (three:3)) syntax or tagKey:tagValue syntax", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "One (and only one) of productId, resourceTypeId or exactTypeId must be specified when using the q or p filters on properties.\nThe Resource `differences` attribute supports q filtering whether any differences exist or not via `q=differences:empty` or `q=differences:nonEmpty` respectively.", "summary": "List all of the resources created within the Market", "operationId": "ListResources"}}, "/type-artifacts": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["type-artifacts"], "description": "", "summary": "Get all of the type artifacts in the market", "operationId": "HeadListTypeArtifacts"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[TypeArtifactDescriptor]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["type-artifacts"], "description": "", "summary": "Get all of the type artifacts in the market", "operationId": "ListTypeArtifacts"}}, "/tag-keys/{tagKey}": {"put": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/TagKey"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Tag key to update", "required": true, "type": "string", "name": "tagKey", "in": "path"}, {"schema": {"$ref": "#/definitions/TagKey"}, "description": "Specification defining a tag key", "required": true, "name": "tagKeyObject", "in": "body"}], "tags": ["tag-keys"], "description": "", "summary": "Update a tag key in the market based on the data in the provided instance", "operationId": "UpdateTagKey"}, "patch": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/TagKey"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Tag key to update", "required": true, "type": "string", "name": "tagKey", "in": "path"}, {"schema": {"$ref": "#/definitions/TagKey"}, "description": "Partial tag key object specifying data to update", "required": true, "name": "tagKeyObject", "in": "body"}], "tags": ["tag-keys"], "description": "", "summary": "Patch update a tag key in the market based on the data in the provided instance", "operationId": "PatchTagKey"}, "head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": " Requested tag key", "required": true, "type": "string", "name": "tagKey", "in": "path"}], "tags": ["tag-keys"], "description": "", "summary": "Get a specific tag key from the market", "operationId": "HeadGetTagKey"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Tag key to delete", "required": true, "type": "string", "name": "tagKey", "in": "path"}], "tags": ["tag-keys"], "description": "", "summary": "Delete a tag key from the market", "operationId": "DeleteTagKey"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/TagKey"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": " Requested tag key", "required": true, "type": "string", "name": "tagKey", "in": "path"}], "tags": ["tag-keys"], "description": "", "summary": "Get a specific tag key from the market", "operationId": "GetTagKey"}}, "/resources/history": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Consider create/delete event since this time only", "required": false, "type": "string", "name": "after", "in": "query"}, {"description": "Consider create/delete event before this time only", "required": false, "type": "string", "name": "before", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "Enter date/time values in UTC (Zulu time) ISO-8601 format e.g., 2014-10-24T16:29:56.640Z", "summary": "Get history of all resource life cycles", "operationId": "HeadListResourcesHistory"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[ResourcesHistoryEvent]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Consider create/delete event since this time only", "required": false, "type": "string", "name": "after", "in": "query"}, {"description": "Consider create/delete event before this time only", "required": false, "type": "string", "name": "before", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "Enter date/time values in UTC (Zulu time) ISO-8601 format e.g., 2014-10-24T16:29:56.640Z", "summary": "Get history of all resource life cycles", "operationId": "ListResourcesHistory"}}, "/application-slices/{applicationSliceId}/sub-domains": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice whose subdomains are to be listed", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "applicationSliceId"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["application-slices"], "description": "", "summary": "Lists all non-extended subdomains of the given application slice", "operationId": "HeadListApplicationSliceSubDomains"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[SubDomain]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice whose subdomains are to be listed", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "applicationSliceId"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["application-slices"], "description": "", "summary": "Lists all non-extended subdomains of the given application slice", "operationId": "ListApplicationSliceSubDomains"}}, "/sub-domains/{subDomainId}/add-resources": {"post": {"responses": {"201": {"description": "Created"}, "200": {"description": "OK", "schema": {"$ref": "#/definitions/AddResourcesToSubDomainReport"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the subdomain to add the resources", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "subDomainId"}, {"schema": {"$ref": "#/definitions/SubDomainResourceSet"}, "description": "Specify IDs of the resources to be added", "required": true, "name": "resources", "in": "body"}], "tags": ["sub-domains"], "description": "All resources should belong to the same domain as the subdomain", "summary": "Add resources to a subdomain", "operationId": "AddResourcesToSubDomain"}}, "/resource-providers": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resource-providers"], "description": "", "summary": "Get all of the resource providers in the market", "operationId": "HeadListResourceProviders"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/ResourceProvider"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/ResourceProvider"}, "description": "Specification defining a resource provider (id is ignored in creation request)", "required": true, "name": "resourceProviderRequest", "in": "body"}], "tags": ["resource-providers"], "description": "Create a resource provider using the information in the provided resource provider object", "summary": "Create a resource provider for a domain in the market", "operationId": "CreateResourceProvider"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[ResourceProvider]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resource-providers"], "description": "", "summary": "Get all of the resource providers in the market", "operationId": "ListResourceProviders"}}, "/resources/{resourceId}/promote": {"post": {"responses": {"202": {"description": "Accepted", "schema": {"$ref": "#/definitions/Resource"}}, "404": {"description": "Not Found"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource to promote", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"schema": {"$ref": "#/definitions/Resource"}, "description": "The partial resource data to patch during promotion", "required": false, "name": "resource", "in": "body"}], "tags": ["resources"], "description": "Given the id of a top-level resource whose assembly is in the Assembled state, promote the entire assembly\n           to a managed service", "summary": "Promote the Assembly to a managed service", "operationId": "PromoteResourceAssembly"}}, "/application-slices/{applicationSliceId}/parents": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice whose parent slices are to be listed", "required": true, "type": "string", "name": "applicationSliceId", "in": "path"}, {"description": "If true, returns indirect parent application-slices as well, i.e., parent of the parent, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["application-slices"], "description": "", "summary": "Lists parent slices of the given application slice id", "operationId": "HeadListParentApplicationSlices"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[SubDomain]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice whose parent slices are to be listed", "required": true, "type": "string", "name": "applicationSliceId", "in": "path"}, {"description": "If true, returns indirect parent application-slices as well, i.e., parent of the parent, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["application-slices"], "description": "", "summary": "Lists parent slices of the given application slice id", "operationId": "ListParentApplicationSlices"}}, "/resources/{resourceId}/operations/validate": {"post": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ValidationReport"}}, "404": {"description": "Not Found"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource for which the operation will be created against", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Whether the request body represents a full resource operation", "default": true, "required": true, "in": "query", "type": "boolean", "name": "full"}, {"schema": {"$ref": "#/definitions/ResourceOperationProp"}, "description": "Specification defining a resource operation", "required": true, "name": "operation", "in": "body"}], "tags": ["resources"], "description": "", "summary": "Execute a validation request for a proposed resource operation creation", "operationId": "ValidateResourceOperationCreation"}}, "/resources/{resourceId}/observed": {"put": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Resource"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource to update", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Whether to perform custom validation in addition to built-in schema and accessor validations", "default": false, "required": false, "in": "query", "type": "boolean", "name": "validate"}, {"schema": {"$ref": "#/definitions/Resource"}, "description": "The resource data to update", "required": true, "name": "resource", "in": "body"}], "tags": ["resources"], "description": "Observed state is the state of the resource as seen by the provider", "summary": "Update the resource to reflect it's observed state", "operationId": "PutResourceObserved"}, "head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the resource to get", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "tags": ["resources"], "description": "Observed state is the state of the resource as seen by the provider", "summary": "Get the observed state of the resource", "operationId": "HeadGetResourceObserved"}, "patch": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Resource"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "description": "Observed state is the state of the resource as seen by the provider", "parameters": [{"description": "Identifies the resource to update", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Whether to perform custom validation in addition to built-in schema and accessor validations", "default": false, "required": false, "in": "query", "type": "boolean", "name": "validate"}, {"schema": {"$ref": "#/definitions/Resource"}, "description": "The partial resource data to update", "required": true, "name": "resource", "in": "body"}], "tags": ["resources"], "summary": "Update the resource to reflect it's observed state", "consumes": ["application/json", "application/json-patch+json"], "operationId": "PatchResourceObserved"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Resource"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the resource to get", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "tags": ["resources"], "description": "Observed state is the state of the resource as seen by the provider", "summary": "Get the observed state of the resource", "operationId": "GetResourceObserved"}}, "/sharing-permissions/{sharingPermissionId}": {"put": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/SharingPermission"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the sharing permission to update", "required": true, "type": "string", "name": "sharingPermissionId", "in": "path"}, {"schema": {"$ref": "#/definitions/SharingPermission"}, "description": "Specification defining a sharing permission", "required": true, "name": "sharingPermissionRequest", "in": "body"}], "tags": ["sharing-permissions"], "description": "The id from the SharingPermission object parameter is ignored on update.", "summary": "Update a sharing permission in the market based on the data in the provided instance", "operationId": "UpdateSharingPermission"}, "patch": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/SharingPermission"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "description": "The id from the SharingPermission object parameter is ignored on update.", "parameters": [{"description": "Identifier of the sharing permission to update", "required": true, "type": "string", "name": "sharingPermissionId", "in": "path"}, {"schema": {"$ref": "#/definitions/SharingPermission"}, "description": "Partial sharing permission object specifying the data to update", "required": true, "name": "sharingPermissionRequest", "in": "body"}], "tags": ["sharing-permissions"], "summary": "Patch update a sharing permission in the market based on the data in the provided instance", "consumes": ["application/json", "application/json-patch+json"], "operationId": "PatchSharingPermission"}, "head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the requested sharing permission", "required": true, "type": "string", "name": "sharingPermissionId", "in": "path"}], "tags": ["sharing-permissions"], "description": "", "summary": "Get a specific sharing permission from the market", "operationId": "HeadGetSharingPermission"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the sharing permission to delete", "required": true, "type": "string", "name": "sharingPermissionId", "in": "path"}], "tags": ["sharing-permissions"], "description": "", "summary": "Delete a sharing permission from the market", "operationId": "DeleteSharingPermission"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/SharingPermission"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the requested sharing permission", "required": true, "type": "string", "name": "sharingPermissionId", "in": "path"}], "tags": ["sharing-permissions"], "description": "", "summary": "Get a specific sharing permission from the market", "operationId": "GetSharingPermission"}}, "/resources/{resourceId}/sub-domain": {"put": {"responses": {"201": {"description": "Created"}, "200": {"description": "Updated", "schema": {"$ref": "#/definitions/Resource"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource to be assigned to the subdomain", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"schema": {"$ref": "#/definitions/ResourceSubDomainInfo"}, "description": "Specification defining subdomain information to set the resource to", "required": true, "name": "subDomainInfo", "in": "body"}], "tags": ["resources"], "description": "Assign the resource to a specific subdomain", "summary": "Assign the resource to a subdomain", "operationId": "AssignResourceToSubDomain"}}, "/resource-providers/{resourceProviderId}/domains": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource provuder whose domains are being queried", "required": true, "type": "string", "name": "resourceProviderId", "in": "path"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resource-providers"], "description": "", "summary": "List all of the domains for a given resource provider", "operationId": "HeadListDomainsByRp"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Domain]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource provuder whose domains are being queried", "required": true, "type": "string", "name": "resourceProviderId", "in": "path"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resource-providers"], "description": "", "summary": "List all of the domains for a given resource provider", "operationId": "ListDomainsByRp"}}, "/resources/{resourceId}/validate": {"post": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ValidationReport"}}, "404": {"description": "Not Found"}, "500": {"description": "Internal Server Error"}}, "description": "", "parameters": [{"description": "Identifier of the resource being validated against", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"enum": ["PATCH", "PUT", "DELETE"], "description": "The HTTP method for the resource to be validated against", "default": "PATCH", "required": true, "in": "query", "type": "string", "name": "method"}, {"description": "Whether to perform custom validation in addition to built-in schema and accessor validations", "default": true, "required": false, "in": "query", "type": "boolean", "name": "custom"}, {"schema": {"$ref": "#/definitions/Resource"}, "description": "Specification defining a resource", "required": true, "name": "resource", "in": "body"}], "tags": ["resources"], "summary": "Execute a change validation request for the specified resource", "consumes": ["application/json", "application/json-patch+json"], "operationId": "ValidateResourceChange"}}, "/domains": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}, {"description": "boolean indicating if page should be obfuscated (true)", "default": true, "required": false, "in": "query", "type": "boolean", "name": "obfuscate"}], "tags": ["domains"], "description": "", "summary": "Get all of the domains in the market", "operationId": "HeadListDomains"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/Domain"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/DomainProps"}, "description": "Properties defining a domain", "required": true, "name": "domainRequest", "in": "body"}, {"description": "Whether to use a custom validator", "default": false, "required": false, "in": "query", "type": "boolean", "name": "validate"}, {"description": "if true, obfuscated properties are supplanted with a replacement pattern", "default": true, "required": false, "in": "query", "type": "boolean", "name": "obfuscate"}], "tags": ["domains"], "description": "", "summary": "Create a domain in the market using the provided properties", "operationId": "CreateDomain"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Domain]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}, {"description": "boolean indicating if page should be obfuscated (true)", "default": true, "required": false, "in": "query", "type": "boolean", "name": "obfuscate"}], "tags": ["domains"], "description": "", "summary": "Get all of the domains in the market", "operationId": "ListDomains"}}, "/resources/{resourceId}/operations/{operationId}/validate": {"post": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ValidationReport"}}, "404": {"description": "Not Found"}, "500": {"description": "Internal Server Error"}}, "description": "", "parameters": [{"description": "Identifier of the resource being validated against", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Identifier of the operation to be changed", "required": true, "type": "string", "name": "operationId", "in": "path"}, {"enum": ["PATCH", "PUT"], "description": "The HTTP method for the resource operation to be validated against", "default": "PATCH", "required": true, "in": "query", "type": "string", "name": "method"}, {"schema": {"$ref": "#/definitions/ResourceOperation"}, "description": "Specification defining a resource operation", "required": true, "name": "operation", "in": "body"}], "tags": ["resources"], "summary": "Execute a change validation request for the specified resource operation", "consumes": ["application/json", "application/json-patch+json"], "operationId": "ValidateResourceOperationChange"}}, "/application-slices/{applicationSliceId}/extended-sub-domains": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice whose extended subdomains are to be listed", "required": true, "type": "string", "name": "applicationSliceId", "in": "path"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["application-slices"], "description": "", "summary": "Lists all extended subdomains of the given application slice by id", "operationId": "HeadListApplicationSliceExtendedSubDomains"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[ApplicationSlice]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice whose extended subdomains are to be listed", "required": true, "type": "string", "name": "applicationSliceId", "in": "path"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["application-slices"], "description": "", "summary": "Lists all extended subdomains of the given application slice by id", "operationId": "ListApplicationSliceExtendedSubDomains"}}, "/resources/validate": {"post": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ValidationReport"}}, "404": {"description": "Not Found"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Whether the request body represents a full resource", "default": true, "required": true, "in": "query", "type": "boolean", "name": "full"}, {"description": "Whether to perform custom validation in addition to built-in schema and accessor validations", "default": true, "required": false, "in": "query", "type": "boolean", "name": "custom"}, {"schema": {"$ref": "#/definitions/ResourceProp"}, "description": "Specification defining a resource", "required": true, "name": "resource", "in": "body"}], "tags": ["resources"], "description": "", "summary": "Execute a validation request for a proposed resource creation", "operationId": "ValidateResourceCreation"}}, "/type-artifacts/{typeArtifactUri}": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the type artifact being queried", "required": true, "type": "string", "name": "typeArtifactUri", "in": "path"}], "tags": ["type-artifacts"], "description": "", "summary": "Get a type artifact by Id", "operationId": "HeadGetTypeArtifact"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/TypeArtifactDefinition"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the type artifact being queried", "required": true, "type": "string", "name": "typeArtifactUri", "in": "path"}], "tags": ["type-artifacts"], "description": "", "summary": "Get a type artifact by Id", "operationId": "GetTypeArtifact"}}, "/relationships": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Optional query to limit relationships by the relationship type (including derived types)", "required": false, "type": "string", "name": "relationshipTypeId", "in": "query"}, {"description": "Optional query to limit relationships by an exact relationship type", "required": false, "type": "string", "name": "exactRelationshipTypeId", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["relationships"], "description": "", "summary": "List all of the relationships registered with the Market", "operationId": "HeadListRelationships"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/Relationship"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/Relationship"}, "description": "Specification defining a relationship", "required": true, "name": "relationship", "in": "body"}], "tags": ["relationships"], "description": "", "summary": "Create a new relationship in Market", "operationId": "CreateRelationship"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Relationship]"}}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Optional query to limit relationships by the relationship type (including derived types)", "required": false, "type": "string", "name": "relationshipTypeId", "in": "query"}, {"description": "Optional query to limit relationships by an exact relationship type", "required": false, "type": "string", "name": "exactRelationshipTypeId", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["relationships"], "description": "", "summary": "List all of the relationships registered with the Market", "operationId": "ListRelationships"}}, "/relationships/unresolved": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource whose unresolved relationships to be listed", "required": false, "type": "string", "name": "resourceId", "in": "query"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["relationships"], "description": "List all unresolved relationships in Market", "summary": "List all unresolved relationships in Market", "operationId": "HeadListUnresolvedRelationships"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[UnresolvedRelationship]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource whose unresolved relationships to be listed", "required": false, "type": "string", "name": "resourceId", "in": "query"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["relationships"], "description": "List all unresolved relationships in Market", "summary": "List all unresolved relationships in Market", "operationId": "ListUnresolvedRelationships"}}, "/application-slices/{applicationSliceId}/children": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice whose children slices are to be listed", "required": true, "type": "string", "name": "applicationSliceId", "in": "path"}, {"description": "If true, returns indirect children application slices as well, i.e., children of the children, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["application-slices"], "description": "", "summary": "Lists all children slices of the given application slice id", "operationId": "HeadListChildrenApplicationSlices"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[ApplicationSlice]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice whose children slices are to be listed", "required": true, "type": "string", "name": "applicationSliceId", "in": "path"}, {"description": "If true, returns indirect children application slices as well, i.e., children of the children, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["application-slices"], "description": "", "summary": "Lists all children slices of the given application slice id", "operationId": "ListChildrenApplicationSlices"}}, "/tag-keys/{tagKey}/tag-values/{tagValue}": {"put": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/TagValue"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Tag key for the tag value being updated", "required": true, "type": "string", "name": "tagKey", "in": "path"}, {"description": "Tag value being updated", "required": true, "type": "string", "name": "tagValue", "in": "path"}, {"schema": {"$ref": "#/definitions/TagValue"}, "description": "Specification defining a tag value", "required": true, "name": "tagValueObject", "in": "body"}], "tags": ["tag-keys"], "description": "", "summary": "Update a tag value based on the data in the provided instance", "operationId": "UpdateTagValue"}, "patch": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/TagValue"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Tag key for the tag value being updated", "required": true, "type": "string", "name": "tagKey", "in": "path"}, {"description": "Tag value being updated", "required": true, "type": "string", "name": "tagValue", "in": "path"}, {"schema": {"$ref": "#/definitions/TagValue"}, "description": "Partial tag value defining the fields to update", "required": true, "name": "tagValueObject", "in": "body"}], "tags": ["tag-keys"], "description": "", "summary": "Patch update a tag value based on the data in the provided instance", "operationId": "PatchTagValue"}, "head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Tag key whose tag value is being requested", "required": true, "type": "string", "name": "tagKey", "in": "path"}, {"description": "Tag value to get", "required": true, "type": "string", "name": "tagValue", "in": "path"}], "tags": ["tag-keys"], "description": "", "summary": "Get a specific tag value from the market", "operationId": "HeadGetTagValue"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Tag key for the tag value being deleted", "required": true, "type": "string", "name": "tagKey", "in": "path"}, {"description": "Tag value being deleted", "required": true, "type": "string", "name": "tagValue", "in": "path"}], "tags": ["tag-keys"], "description": "", "summary": "Delete a tag value", "operationId": "DeleteTagValue"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/TagValue"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Tag key whose tag value is being requested", "required": true, "type": "string", "name": "tagKey", "in": "path"}, {"description": "Tag value to get", "required": true, "type": "string", "name": "tagValue", "in": "path"}], "tags": ["tag-keys"], "description": "", "summary": "Get a specific tag value from the market", "operationId": "GetTagValue"}}, "/resources/{resourceId}/history": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource whose history will be queried", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Consider create/delete event since this time only", "required": false, "type": "string", "name": "after", "in": "query"}, {"description": "Consider create/delete event before this time only", "required": false, "type": "string", "name": "before", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "Enter date/time values in UTC (Zulu time) ISO-8601 format e.g., 2014-10-24T16:29:56.640Z", "summary": "Get all history of given resource", "operationId": "HeadListResourceHistory"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[ResourceHistoryEvent]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource whose history will be queried", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Consider create/delete event since this time only", "required": false, "type": "string", "name": "after", "in": "query"}, {"description": "Consider create/delete event before this time only", "required": false, "type": "string", "name": "before", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "Enter date/time values in UTC (Zulu time) ISO-8601 format e.g., 2014-10-24T16:29:56.640Z", "summary": "Get all history of given resource", "operationId": "ListResourceHistory"}}, "/sub-domains/{subDomainId}/containers": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the subdomain whose container subdomains are to be listed", "required": true, "type": "string", "name": "subDomainId", "in": "path"}, {"description": "If true, returns indirect container subdomains as well, i.e., container of the container, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["sub-domains"], "description": "", "summary": "Lists all container subdomains of the given subdomain id", "operationId": "HeadListContainers"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[SubDomain]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the subdomain whose container subdomains are to be listed", "required": true, "type": "string", "name": "subDomainId", "in": "path"}, {"description": "If true, returns indirect container subdomains as well, i.e., container of the container, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["sub-domains"], "description": "", "summary": "Lists all container subdomains of the given subdomain id", "operationId": "ListContainers"}}, "/sub-domains/{subDomainId}": {"put": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/SubDomain"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the subdomain to update", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "subDomainId"}, {"schema": {"$ref": "#/definitions/SubDomain"}, "description": "Specification defining a subdomain", "required": true, "name": "subDomainRequest", "in": "body"}], "tags": ["sub-domains"], "description": "", "summary": "Update a subdomain in the market based on the data in the provided instance", "operationId": "UpdateSubDomain"}, "patch": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/SubDomain"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "description": "", "parameters": [{"description": "Identifier of the subdomain to update", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "subDomainId"}, {"schema": {"$ref": "#/definitions/SubDomain"}, "description": "Partial subdomain object specifying the data to update", "required": true, "name": "subDomainRequest", "in": "body"}], "tags": ["sub-domains"], "summary": "Patch update a subdomain in the market based on the data in the provided instance", "consumes": ["application/json", "application/json-patch+json"], "operationId": "PatchSubDomain"}, "head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the requested subdomain", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "subDomainId"}], "tags": ["sub-domains"], "description": "", "summary": "Get a specific subdomain from the market", "operationId": "HeadGetSubDomain"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the subdomain to delete", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "subDomainId"}], "tags": ["sub-domains"], "description": "", "summary": "Delete a subdomain from the market", "operationId": "DeleteSubDomain"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/SubDomain"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the requested subdomain", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "subDomainId"}], "tags": ["sub-domains"], "description": "", "summary": "Get a specific subdomain from the market", "operationId": "GetSubDomain"}}, "/resources/{resourceId}/interfaces": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource whose interfaces will be queried", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}], "tags": ["resources"], "description": "List all implemented interfaces which define how to create resource operations.", "summary": "Get all interfaces of given resource", "operationId": "HeadListResourceInterfaces"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[ResourceInterface]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource whose interfaces will be queried", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}], "tags": ["resources"], "description": "List all implemented interfaces which define how to create resource operations.", "summary": "Get all interfaces of given resource", "operationId": "ListResourceInterfaces"}}, "/resources/{resourceId}/reassemble": {"post": {"responses": {"202": {"description": "OK", "schema": {"$ref": "#/definitions/Resource"}}, "404": {"description": "Not Found"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource who needs to be reassembled", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "tags": ["resources"], "description": "Given the id of a assembling resource, reevaluate the discovery template", "summary": "Reassemble an Assembly", "operationId": "ReassembleResourceAssembly"}}, "/products/{productId}/resync": {"post": {"responses": {"202": {"description": "Accepted", "schema": {"$ref": "#/definitions/ResyncReply"}}, "404": {"description": "Not Found"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the product to be resynced", "required": true, "type": "string", "name": "productId", "in": "path"}], "tags": ["products"], "description": "", "summary": "Execute a resync request for the specified product", "operationId": "ResyncProduct"}}, "/resources/{resourceId}/operations/{operationId}": {"put": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ResourceOperation"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource whose operation will be changed", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Identifier of the operation to be updated", "required": true, "type": "string", "name": "operationId", "in": "path"}, {"schema": {"$ref": "#/definitions/ResourceOperation"}, "description": "Specification defining a resource operation", "required": true, "name": "operation", "in": "body"}], "tags": ["resources"], "description": "", "summary": "Update attributes of a specific operation for a given resource", "operationId": "UpdateResourceOperation"}, "head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource whose operations will be queried", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Identifier of the operation to be queried", "required": true, "type": "string", "name": "operationId", "in": "path"}], "tags": ["resources"], "description": "", "summary": "Get details of a specific operation for a given resource", "operationId": "HeadGetResourceOperation"}, "patch": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ResourceOperation"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "description": "", "parameters": [{"description": "Identifier of the resource whose operations will be changed", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Identifier of the operation to be patched", "required": true, "type": "string", "name": "operationId", "in": "path"}, {"schema": {"$ref": "#/definitions/ResourceOperation"}, "description": "Specification defining a resource operation", "required": true, "name": "operation", "in": "body"}], "tags": ["resources"], "summary": "Patch the attributes of a specific operation for a given resource", "consumes": ["application/json", "application/json-patch+json"], "operationId": "PatchResourceOperation"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ResourceOperation"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource whose operations will be queried", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Identifier of the operation to be queried", "required": true, "type": "string", "name": "operationId", "in": "path"}], "tags": ["resources"], "description": "", "summary": "Get details of a specific operation for a given resource", "operationId": "GetResourceOperation"}}, "/domains/{domainId}/resync": {"post": {"responses": {"202": {"description": "Accepted", "schema": {"$ref": "#/definitions/ResyncReply"}}, "404": {"description": "Not Found"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the domain to be resynced", "required": true, "type": "string", "name": "domainId", "in": "path"}], "tags": ["domains"], "description": "", "summary": "Execute a resync request for the specified domain", "operationId": "ResyncDomain"}}, "/resource-types/{resourceTypeId}": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource type being queried", "required": true, "type": "string", "name": "resourceTypeId", "in": "path"}], "tags": ["resource-types"], "description": "", "summary": "Get a resource type by Id", "operationId": "HeadGetResourceType"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ResourceTypeDefinition"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource type being queried", "required": true, "type": "string", "name": "resourceTypeId", "in": "path"}], "tags": ["resource-types"], "description": "", "summary": "Get a resource type by Id", "operationId": "GetResourceType"}}, "/application-slices": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["application-slices"], "description": "", "summary": "Get all of the application slices in the market", "operationId": "HeadListApplicationSlices"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/ApplicationSlice"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/ApplicationSliceProp"}, "description": "Specification defining a application slice", "required": true, "name": "applicationSliceRequest", "in": "body"}], "tags": ["application-slices"], "description": "Create an application slice using the information in the provided application slice object", "summary": "Create an application slice in the market", "operationId": "CreateApplicationSlice"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[ApplicationSlice]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["application-slices"], "description": "", "summary": "Get all of the application slices in the market", "operationId": "ListApplicationSlices"}}, "/tag-keys/{tagKey}/tag-values": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Tag key whose tag values are being requested", "required": true, "type": "string", "name": "tagKey", "in": "path"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}], "tags": ["tag-keys"], "description": "", "summary": "Get all of the tag values for a given tag key", "operationId": "HeadListTagValues"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/TagValue"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Tag key for the tag value being created", "required": true, "type": "string", "name": "tagKey", "in": "path"}, {"schema": {"$ref": "#/definitions/TagValue"}, "description": "Specification defining a tag value", "required": true, "name": "tagValueObject", "in": "body"}], "tags": ["tag-keys"], "description": "The key in the TagValue object is optional and ignored on create", "summary": "Create a tag value for a specific tag key", "operationId": "CreateTagValue"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[TagValue]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Tag key whose tag values are being requested", "required": true, "type": "string", "name": "tagKey", "in": "path"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}], "tags": ["tag-keys"], "description": "", "summary": "Get all of the tag values for a given tag key", "operationId": "ListTagValues"}}, "/resource-types": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resource-types"], "description": "", "summary": "List all of the resource types in the Market", "operationId": "HeadListResourceTypes"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[ResourceTypeDescriptor]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resource-types"], "description": "", "summary": "List all of the resource types in the Market", "operationId": "ListResourceTypes"}}, "/resources/audit": {"post": {"responses": {"202": {"description": "Accepted", "schema": {"$ref": "#/definitions/AuditReply"}}, "404": {"description": "Not Found"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the product whose resources should be audited", "required": false, "type": "string", "name": "productId", "in": "query"}, {"description": "Identifier of the domain whose resources should be audited", "required": false, "type": "string", "name": "domainId", "in": "query"}, {"description": "Identifier of the provider whose resources should be audited", "required": false, "type": "string", "name": "resourceProviderId", "in": "query"}, {"description": "Option to limit the audit to one or more resource types specified and their derived types. Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "resourceTypeId", "in": "query"}, {"description": "Option to limit the audit to one or more resource types specified (takes precedence over resourceTypeId). Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "exactTypeId", "in": "query"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Optional query parameter to define a tag filter using tagKey:tagValue syntax", "required": false, "type": "string", "name": "tags", "in": "query"}], "tags": ["resources"], "description": "Audit the resources by calling a GET asynchronously to the provider for each resource that matches the criteria.\n        One of productId, domainId, or resourceProviderId must be specified.\n        When using the q or p filters on properties, one (and only one) of productId, resourceTypeId or exactTypeId must be specified.", "summary": "Execute audit requests for all resources in the scope", "operationId": "AuditResources"}}, "/resources/{resourceId}": {"put": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Resource"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource to update", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"schema": {"$ref": "#/definitions/Resource"}, "description": "The resource data to update", "required": true, "name": "resource", "in": "body"}, {"description": "Whether to perform custom validation in addition to built-in schema and accessor validations", "default": false, "required": false, "in": "query", "type": "boolean", "name": "validate"}], "tags": ["resources"], "description": "The id from the Resource object is optional and ignored on update.", "summary": "Update a resource based on the data in the provided instance", "operationId": "UpdateResource"}, "patch": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Resource"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "description": "The id from the Resource object is optional and ignored on update.", "parameters": [{"description": "Identifier of the resource to update", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"schema": {"$ref": "#/definitions/Resource"}, "description": "The partial resource data to update", "required": true, "name": "resource", "in": "body"}, {"description": "Whether to perform custom validation in addition to built-in schema and accessor validations", "default": false, "required": false, "in": "query", "type": "boolean", "name": "validate"}], "tags": ["resources"], "summary": "Patch update a resource based on the (partial) data in the provided instance", "consumes": ["application/json", "application/json-patch+json"], "operationId": "PatchResource"}, "head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource being queried", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "If true, returns volatile status attributes from the provider that are not stored in the database", "default": false, "required": false, "in": "query", "type": "boolean", "name": "full"}], "tags": ["resources"], "description": "", "summary": "Get a resource by Id", "operationId": "HeadGetResource"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Whether to perform custom validation", "default": false, "required": false, "in": "query", "type": "boolean", "name": "validate"}], "tags": ["resources"], "description": "", "summary": "Delete a resource", "operationId": "DeleteResource"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Resource"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource being queried", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "If true, returns volatile status attributes from the provider that are not stored in the database", "default": false, "required": false, "in": "query", "type": "boolean", "name": "full"}], "tags": ["resources"], "description": "", "summary": "Get a resource by Id", "operationId": "GetResource"}}, "/domain-types": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["domain-types"], "description": "", "summary": "Get all of the domain types in the market", "operationId": "HeadListDomainTypes"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[DomainType]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["domain-types"], "description": "", "summary": "Get all of the domain types in the market", "operationId": "ListDomainTypes"}}, "/sharing-permissions": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["sharing-permissions"], "description": "", "summary": "Get all of the sharing permissions in the market", "operationId": "HeadListSharingPermissions"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/SharingPermission"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/SharingPermissionProp"}, "description": "Specification defining a sharing permission (id is honored in creation request)", "required": true, "name": "sharingPermissionRequest", "in": "body"}], "tags": ["sharing-permissions"], "description": "Create a sharing permission using the information in the provided sharing permission object", "summary": "Create a sharing permission in the market", "operationId": "CreateSharingPermission"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[SharingPermission]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["sharing-permissions"], "description": "", "summary": "Get all of the sharing permissions in the market", "operationId": "ListSharingPermissions"}}, "/domains/{domainId}/products": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the domain whose product offerings are being queried", "required": true, "type": "string", "name": "domainId", "in": "path"}, {"description": "If false, returns only products that are actively offered; if true, returns all products", "default": false, "required": false, "in": "query", "type": "boolean", "name": "includeInactive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["domains"], "description": "", "summary": "List all of the products offered by a specific domain", "operationId": "HeadListProductsByDomain"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Product]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the domain whose product offerings are being queried", "required": true, "type": "string", "name": "domainId", "in": "path"}, {"description": "If false, returns only products that are actively offered; if true, returns all products", "default": false, "required": false, "in": "query", "type": "boolean", "name": "includeInactive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["domains"], "description": "", "summary": "List all of the products offered by a specific domain", "operationId": "ListProductsByDomain"}}, "/application-slices/{applicationSliceId}/add-extended-sub-domains": {"post": {"responses": {"201": {"description": "Created"}, "200": {"description": "OK", "schema": {"$ref": "#/definitions/UpdateApplicationSliceSubDomainsReport"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice for which extended subdomains are to be added", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "applicationSliceId"}, {"schema": {"$ref": "#/definitions/AppSliceSubDomains"}, "description": "Specifies the IDs of the extended subdomains to be added", "required": true, "name": "sub-domains", "in": "body"}], "tags": ["application-slices"], "description": "", "summary": "Add extended subdomains to the specified application slice", "operationId": "AddExtendedSubDomainsToApplicationSlice"}}, "/resources/{resourceId}/resync": {"post": {"responses": {"202": {"description": "Accepted", "schema": {"$ref": "#/definitions/ResyncReply"}}, "404": {"description": "Not Found"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource to be resynced", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "tags": ["resources"], "description": "", "summary": "Execute a resync request for the specified resource", "operationId": "ResyncResource"}}, "/resources/{resourceId}/dependencies": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the resource for which dependency resources are searched", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "If true, returns indirect dependencies as well, i.e., dependencies of the dependencies, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query to limit resources by product type", "required": false, "type": "string", "name": "productId", "in": "query"}, {"description": "Optional query to limit resources by domain", "required": false, "type": "string", "name": "domainId", "in": "query"}, {"description": "Optional query to limit resources by resource provider", "required": false, "type": "string", "name": "resourceProviderId", "in": "query"}, {"description": "Optional query to limit resources by one or more resource types. Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "resourceTypeId", "in": "query"}, {"description": "Optional query to limit resources by one or more exact resource type(s) (takes precedence over resourceTypeId). Use comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "exactTypeId", "in": "query"}, {"description": "Optional query to limit resources by one or more subdomain ids. Use a comma-separated string to specify multiple subdomain ids.", "required": false, "type": "string", "name": "subDomainId", "in": "query"}, {"description": "Optional query to limit resources by the application slice id.", "required": false, "type": "string", "name": "applicationSliceId", "in": "query"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Optional query parameter to define a tag filter using tagKey:tagValue syntax", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "Dependencies are resources that this resource depends upon. One (and only one) of productId, resourceTypeId or exactTypeId must be specified when using the q or p filters on properties.", "summary": "List all dependencies of the resource", "operationId": "HeadListDependenciesOfResource"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Resource]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the resource for which dependency resources are searched", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "If true, returns indirect dependencies as well, i.e., dependencies of the dependencies, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query to limit resources by product type", "required": false, "type": "string", "name": "productId", "in": "query"}, {"description": "Optional query to limit resources by domain", "required": false, "type": "string", "name": "domainId", "in": "query"}, {"description": "Optional query to limit resources by resource provider", "required": false, "type": "string", "name": "resourceProviderId", "in": "query"}, {"description": "Optional query to limit resources by one or more resource types. Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "resourceTypeId", "in": "query"}, {"description": "Optional query to limit resources by one or more exact resource type(s) (takes precedence over resourceTypeId). Use comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "exactTypeId", "in": "query"}, {"description": "Optional query to limit resources by one or more subdomain ids. Use a comma-separated string to specify multiple subdomain ids.", "required": false, "type": "string", "name": "subDomainId", "in": "query"}, {"description": "Optional query to limit resources by the application slice id.", "required": false, "type": "string", "name": "applicationSliceId", "in": "query"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Optional query parameter to define a tag filter using tagKey:tagValue syntax", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "Dependencies are resources that this resource depends upon. One (and only one) of productId, resourceTypeId or exactTypeId must be specified when using the q or p filters on properties.", "summary": "List all dependencies of the resource", "operationId": "ListDependenciesOfResource"}}, "/resource-providers/{resourceProviderId}": {"put": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ResourceProvider"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource provider to update", "required": true, "type": "string", "name": "resourceProviderId", "in": "path"}, {"schema": {"$ref": "#/definitions/ResourceProvider"}, "description": "Specification defining a resource provider", "required": true, "name": "resourceProviderRequest", "in": "body"}], "tags": ["resource-providers"], "description": "The id from the ResourceProvider object parameter is ignored on update.", "summary": "Update a resource provider in the market based on the data in the provided instance", "operationId": "UpdateResourceProvider"}, "patch": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ResourceProvider"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource provider to update", "required": true, "type": "string", "name": "resourceProviderId", "in": "path"}, {"schema": {"$ref": "#/definitions/ResourceProvider"}, "description": "Partial resource provider object specifying the data to update", "required": true, "name": "resourceProviderRequest", "in": "body"}], "tags": ["resource-providers"], "description": "The id from the ResourceProvider object parameter is ignored on update.", "summary": "Patch update a resource provider in the market based on the data in the provided instance", "operationId": "PatchResourceProvider"}, "head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the requested resource provider", "required": true, "type": "string", "name": "resourceProviderId", "in": "path"}], "tags": ["resource-providers"], "description": "", "summary": "Get a specific resource provider from the market", "operationId": "HeadGetResourceProvider"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource provider to delete", "required": true, "type": "string", "name": "resourceProviderId", "in": "path"}], "tags": ["resource-providers"], "description": "", "summary": "Delete a resource provider from the market", "operationId": "DeleteResourceProvider"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ResourceProvider"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the requested resource provider", "required": true, "type": "string", "name": "resourceProviderId", "in": "path"}], "tags": ["resource-providers"], "description": "", "summary": "Get a specific resource provider from the market", "operationId": "GetResourceProvider"}}, "/domains/validate": {"post": {"responses": {"200": {"description": "OK"}}, "parameters": [{"description": "Whether to perform a full validation request", "default": true, "required": true, "in": "query", "type": "boolean", "name": "full"}, {"schema": {"$ref": "#/definitions/DomainProps"}, "description": "Properties defining a domain", "required": true, "name": "domainRequest", "in": "body"}], "tags": ["domains"], "description": "", "summary": "Validate domain creation in market using the provided properties", "operationId": "ValidateDomainCreate"}}, "/application-slices/{applicationSliceId}/remove-extended-sub-domains": {"post": {"responses": {"201": {"description": "Created"}, "200": {"description": "OK", "schema": {"$ref": "#/definitions/UpdateApplicationSliceSubDomainsReport"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice for which subdomains are to be added and/or removed", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "applicationSliceId"}, {"schema": {"$ref": "#/definitions/AppSliceSubDomains"}, "description": "Specifies the IDs of the subdomains to be removed", "required": true, "name": "sub-domains", "in": "body"}], "tags": ["application-slices"], "description": "", "summary": "Remove extended subdomains from the specified application slice", "operationId": "RemoveExtendedSubDomainsFromApplicationSlice"}}, "/relationships/{relationshipId}": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the relationship being queried", "required": true, "type": "string", "name": "relationshipId", "in": "path"}], "tags": ["relationships"], "description": "", "summary": "Get the relationship from the market", "operationId": "HeadGetRelationship"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the relationship", "required": true, "type": "string", "name": "relationshipId", "in": "path"}], "tags": ["relationships"], "description": "", "summary": "Delete a relationship", "operationId": "DeleteRelationship"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Relationship"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the relationship being queried", "required": true, "type": "string", "name": "relationshipId", "in": "path"}], "tags": ["relationships"], "description": "", "summary": "Get the relationship from the market", "operationId": "GetRelationship"}}, "/application-slices/{applicationSliceId}": {"put": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ApplicationSlice"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the application slice to update", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "applicationSliceId"}, {"schema": {"$ref": "#/definitions/ApplicationSlice"}, "description": "Specification defining an application slice", "required": true, "name": "applicationSliceRequest", "in": "body"}], "tags": ["application-slices"], "description": "", "summary": "Update an application slice in the market based on the data in the provided instance", "operationId": "UpdateApplicationSlice"}, "patch": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ApplicationSlice"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "description": "", "parameters": [{"description": "Identifier of the application slice to update", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "applicationSliceId"}, {"schema": {"$ref": "#/definitions/ApplicationSlice"}, "description": "Partial application slice object specifying the data to update", "required": true, "name": "applicationSliceRequest", "in": "body"}], "tags": ["application-slices"], "summary": "Patch update an application slice in the market based on the data in the provided instance", "consumes": ["application/json", "application/json-patch+json"], "operationId": "PatchApplicationSlice"}, "head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the requested application slice", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "applicationSliceId"}], "tags": ["application-slices"], "description": "", "summary": "Get a specific application slice from the market", "operationId": "HeadGetApplicationSlice"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the application slice to delete", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "applicationSliceId"}], "tags": ["application-slices"], "description": "", "summary": "Delete an application slice from the market", "operationId": "DeleteApplicationSlice"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ApplicationSlice"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the requested application slice", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "applicationSliceId"}], "tags": ["application-slices"], "description": "", "summary": "Get a specific application slice from the market", "operationId": "GetApplicationSlice"}}, "/domains/{domainId}": {"put": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Domain"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the domain to update", "required": true, "type": "string", "name": "domainId", "in": "path"}, {"schema": {"$ref": "#/definitions/Domain"}, "description": "Specification defining a domain", "required": true, "name": "domainRequest", "in": "body"}, {"description": "if true, obfuscated properties are supplanted with a replacement pattern", "default": true, "required": false, "in": "query", "type": "boolean", "name": "obfuscate"}], "tags": ["domains"], "description": "The id from the Domain object parameter is optional and ignored on update.", "summary": "Update a domain in the market based on the data in the provided instance", "operationId": "UpdateDomain"}, "patch": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Domain"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the domain to update", "required": true, "type": "string", "name": "domainId", "in": "path"}, {"schema": {"$ref": "#/definitions/Domain"}, "description": "The partial domain data to update", "required": true, "name": "domainRequest", "in": "body"}, {"description": "if true, obfuscated properties are supplanted with a replacement pattern", "default": true, "required": false, "in": "query", "type": "boolean", "name": "obfuscate"}], "tags": ["domains"], "description": "The id from the Domain object parameter is optional and ignored on update.", "summary": "Patch update a domain in the market based on the (partial) data in the provided instance", "operationId": "PatchDomain"}, "head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the domain being queried", "required": true, "type": "string", "name": "domainId", "in": "path"}, {"description": "if true, obfuscated properties are supplanted with a replacement pattern", "default": true, "required": false, "in": "query", "type": "boolean", "name": "obfuscate"}], "tags": ["domains"], "description": "", "summary": "Get a specific domain from the market", "operationId": "HeadGetDomain"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the domain to delete", "required": true, "type": "string", "name": "domainId", "in": "path"}], "tags": ["domains"], "description": "", "summary": "Delete a domain from the market", "operationId": "DeleteDomain"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Domain"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the domain being queried", "required": true, "type": "string", "name": "domainId", "in": "path"}, {"description": "if true, obfuscated properties are supplanted with a replacement pattern", "default": true, "required": false, "in": "query", "type": "boolean", "name": "obfuscate"}], "tags": ["domains"], "description": "", "summary": "Get a specific domain from the market", "operationId": "GetDomain"}}, "/resources/{resourceId}/operations": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource whose operations will be queried", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "Resource types may define custom operations in addition to activate, update and terminate lifecycle plans.\n          This endpoint shows the history of these custom operations invoked on the specified resource.", "summary": "Get all custom operations invoked for a given resource", "operationId": "HeadListResourceOperations"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/ResourceOperation"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource for whom the operation is being created", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"schema": {"$ref": "#/definitions/ResourceOperationProp"}, "description": "Specification defining a resource operation", "required": true, "name": "operation", "in": "body"}], "tags": ["resources"], "description": "Instantiate an operation as defined by the resource's type which is executed asynchronously.\n           The current status can be retrieved via GET while valid operation definitions can be found under the /interfaces API", "summary": "Create an operation for a specific resource", "operationId": "CreateResourceOperation"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[ResourceOperation]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource whose operations will be queried", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "Resource types may define custom operations in addition to activate, update and terminate lifecycle plans.\n          This endpoint shows the history of these custom operations invoked on the specified resource.", "summary": "Get all custom operations invoked for a given resource", "operationId": "ListResourceOperations"}}, "/resource-types/{resourceTypeId}/products": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Products are filtered to those that are of this resource type", "required": true, "type": "string", "name": "resourceTypeId", "in": "path"}, {"description": "If false, returns only products that are actively offered; if true, returns all products", "default": false, "required": false, "in": "query", "type": "boolean", "name": "includeInactive"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resource-types"], "description": "", "summary": "List all of the products offered for the specific resource type", "operationId": "HeadListProductsByResourceType"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Product]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Products are filtered to those that are of this resource type", "required": true, "type": "string", "name": "resourceTypeId", "in": "path"}, {"description": "If false, returns only products that are actively offered; if true, returns all products", "default": false, "required": false, "in": "query", "type": "boolean", "name": "includeInactive"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resource-types"], "description": "", "summary": "List all of the products offered for the specific resource type", "operationId": "ListProductsByResourceType"}}, "/sub-domains": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query to limit subdomains by domain ID", "required": false, "type": "string", "name": "domainId", "in": "query"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["sub-domains"], "description": "", "summary": "Get all of the subdomains in the market", "operationId": "HeadListSubDomains"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/SubDomain"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/SubDomainProp"}, "description": "Specification defining a subdomain", "required": true, "name": "subDomainRequest", "in": "body"}], "tags": ["sub-domains"], "description": "Create a subdomain using the information in the provided subdomain object", "summary": "Create a subdomain in the market", "operationId": "CreateSubDomain"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[SubDomain]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "Optional query to limit subdomains by domain ID", "required": false, "type": "string", "name": "domainId", "in": "query"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["sub-domains"], "description": "", "summary": "Get all of the subdomains in the market", "operationId": "ListSubDomains"}}, "/application-slices/{applicationSliceId}/add-sub-domains": {"post": {"responses": {"201": {"description": "Created"}, "200": {"description": "OK", "schema": {"$ref": "#/definitions/UpdateApplicationSliceSubDomainsReport"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the application slice for which subdomains are to be added", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "applicationSliceId"}, {"schema": {"$ref": "#/definitions/AppSliceSubDomains"}, "description": "Specifies the IDs of the subdomains to be added", "required": true, "name": "sub-domains", "in": "body"}], "tags": ["application-slices"], "description": "", "summary": "Add subdomains to the specified application slice", "operationId": "AddSubDomainsToApplicationSlice"}}, "/ping": {"head": {"responses": {"200": {"description": "OK"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["ping"], "description": "", "summary": "Ping the system to see whether the component is ready to handle requests or not", "operationId": "HeadGetPing"}, "get": {"responses": {"200": {"description": "OK"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["ping"], "description": "", "summary": "Ping the system to see whether the component is ready to handle requests or not", "operationId": "GetPing"}}, "/sub-domains/{subDomainId}/containees": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the subdomain whose containee subdomains are to be listed", "required": true, "type": "string", "name": "subDomainId", "in": "path"}, {"description": "If true, returns indirect containee subdomains as well, i.e., containees of the containees, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["sub-domains"], "description": "", "summary": "Lists all containee subdomains of the given subdomain id", "operationId": "HeadListContainees"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[SubDomain]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the subdomain whose containee subdomains are to be listed", "required": true, "type": "string", "name": "subDomainId", "in": "path"}, {"description": "If true, returns indirect containee subdomains as well, i.e., containees of the containees, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["sub-domains"], "description": "", "summary": "Lists all containee subdomains of the given subdomain id", "operationId": "ListContainees"}}, "/resources/{resourceId}/dependents": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the resource for which dependent resources are searched", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "If true, returns indirect dependents as well, i.e., dependents of the dependents, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query to limit resources by product type", "required": false, "type": "string", "name": "productId", "in": "query"}, {"description": "Optional query to limit resources by domain", "required": false, "type": "string", "name": "domainId", "in": "query"}, {"description": "Optional query to limit resources by resource provider", "required": false, "type": "string", "name": "resourceProviderId", "in": "query"}, {"description": "Optional query to limit resources by one or more resource types. Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "resourceTypeId", "in": "query"}, {"description": "Optional query to limit resources by one or more exact resource types (takes precedence over resourceTypeId). Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "exactTypeId", "in": "query"}, {"description": "Optional query to limit resources by one or more subdomain ids. Use a comma-separated string to specify multiple subdomain ids.", "required": false, "type": "string", "name": "subDomainId", "in": "query"}, {"description": "Optional query to limit resources by the application slice id.", "required": false, "type": "string", "name": "applicationSliceId", "in": "query"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Optional query parameter to define a tag filter using tagKey:tagValue syntax", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "Dependents are those resources that depend upon this resource. One (and only one) of productId, resourceTypeId or exactTypeId must be specified when using the q or p filters on properties.", "summary": "List all dependents of the resource", "operationId": "HeadListDependentsOfResource"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Resource]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifies the resource for which dependent resources are searched", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "If true, returns indirect dependents as well, i.e., dependents of the dependents, etc.", "default": false, "required": false, "in": "query", "type": "boolean", "name": "recursive"}, {"description": "Optional query to limit resources by product type", "required": false, "type": "string", "name": "productId", "in": "query"}, {"description": "Optional query to limit resources by domain", "required": false, "type": "string", "name": "domainId", "in": "query"}, {"description": "Optional query to limit resources by resource provider", "required": false, "type": "string", "name": "resourceProviderId", "in": "query"}, {"description": "Optional query to limit resources by one or more resource types. Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "resourceTypeId", "in": "query"}, {"description": "Optional query to limit resources by one or more exact resource types (takes precedence over resourceTypeId). Use a comma-separated string to specify multiple resource types.", "required": false, "type": "string", "name": "exactTypeId", "in": "query"}, {"description": "Optional query to limit resources by one or more subdomain ids. Use a comma-separated string to specify multiple subdomain ids.", "required": false, "type": "string", "name": "subDomainId", "in": "query"}, {"description": "Optional query to limit resources by the application slice id.", "required": false, "type": "string", "name": "applicationSliceId", "in": "query"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Optional query parameter to define a tag filter using tagKey:tagValue syntax", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["resources"], "description": "Dependents are those resources that depend upon this resource. One (and only one) of productId, resourceTypeId or exactTypeId must be specified when using the q or p filters on properties.", "summary": "List all dependents of the resource", "operationId": "ListDependentsOfResource"}}, "/products/{productId}": {"put": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Product"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the product to update", "required": true, "type": "string", "name": "productId", "in": "path"}, {"schema": {"$ref": "#/definitions/Product"}, "description": "The complete product data to update", "required": true, "name": "product", "in": "body"}], "tags": ["products"], "description": "The id from the Product object is optional and ignored on update.", "summary": "Update a product based on the complete data in the provided instance", "operationId": "UpdateProduct"}, "patch": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Product"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the product to update", "required": true, "type": "string", "name": "productId", "in": "path"}, {"schema": {"$ref": "#/definitions/Product"}, "description": "The partial product data to update", "required": true, "name": "product", "in": "body"}], "tags": ["products"], "description": "The id from the Product object is optional and ignored on update.", "summary": "Patch update a product based on the (partial) data in the provided instance", "operationId": "PatchProduct"}, "head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the product being queried", "required": true, "type": "string", "name": "productId", "in": "path"}], "tags": ["products"], "description": "", "summary": "Get the product from the market based on its product identifier", "operationId": "HeadGetProduct"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the product being delete", "required": true, "type": "string", "name": "productId", "in": "path"}], "tags": ["products"], "description": "A product that is in use (pending orders or active resources refer to it) cannot be deleted.", "summary": "Delete the product from the market based on its product identifier", "operationId": "DeleteProduct"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Product"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the product being queried", "required": true, "type": "string", "name": "productId", "in": "path"}], "tags": ["products"], "description": "", "summary": "Get the product from the market based on its product identifier", "operationId": "GetProduct"}}, "/resources/{resourceId}/audit": {"post": {"responses": {"202": {"description": "Accepted", "schema": {"$ref": "#/definitions/AuditReply"}}, "404": {"description": "Not Found"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the resource to be resynced", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "tags": ["resources"], "description": "", "summary": "Execute an audit request for the specified resource", "operationId": "AuditResource"}}, "/products": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "If false, returns only products that are actively offered; if true, returns all products", "default": false, "required": false, "in": "query", "type": "boolean", "name": "includeInactive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["products"], "description": "", "summary": "Get all of the products in the market", "operationId": "HeadListProducts"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/Product"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/Product"}, "description": "Specification defining a product", "required": true, "name": "product", "in": "body"}], "tags": ["products"], "description": "Returns the created product object", "summary": "Create a new product in Market", "operationId": "CreateProduct"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Product]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [{"description": "If false, returns only products that are actively offered; if true, returns all products", "default": false, "required": false, "in": "query", "type": "boolean", "name": "includeInactive"}, {"description": "Optional query parameter to define a query filter using property:value syntax", "required": false, "type": "string", "name": "q", "in": "query"}, {"description": "Optional query parameter to define a partial string match filter using property:value syntax", "required": false, "type": "string", "name": "p", "in": "query"}, {"description": "Requested offset within the total result set to be the first element in the paged response", "default": 0, "required": false, "in": "query", "type": "integer", "name": "offset"}, {"description": "The maximum number of elements to return in a single paged request", "default": 1000, "required": false, "in": "query", "type": "integer", "name": "limit"}, {"description": "String pagination token returned from a previous query that encodes query information in order to optimize a\nsubsequent request for a page of results. The token includes the limit and offset parameters for the next page, but one or\nboth can be included to override the encoded values", "required": false, "type": "string", "name": "pageToken", "in": "query"}], "tags": ["products"], "description": "", "summary": "Get all of the products in the market", "operationId": "ListProducts"}}}, "schemes": ["https"], "tags": [{"name": "application-slices", "description": "Application slices that subdomains can associate with"}, {"name": "domain-types", "description": "Types of domains or systems exposing orchestration entities"}, {"name": "domains", "description": "Organizational units managing products and resources"}, {"name": "ping", "description": "Interface to check Market readiness"}, {"name": "products", "description": "Offerings to instantiate a resource type in a domain"}, {"name": "relationships", "description": "Relationships are connections between resources"}, {"name": "resource-providers", "description": "Providers of domains and resources"}, {"name": "resource-types", "description": "Resource type schema definitions"}, {"name": "resources", "description": "Resource instances"}, {"name": "sharing-permissions", "description": "Sharing permissions"}, {"name": "sub-domains", "description": "Subdomain instances that associate resources with application-slices"}, {"name": "tag-keys", "description": "Tag key/values used to label resources"}, {"name": "type-artifacts", "description": "All schema information including resource types and service templates"}], "basePath": "/bpocore/market/api/v1", "securityDefinitions": {}, "host": "10.132.251.42", "definitions": {"AddResourcesToSubDomainReport": {"required": ["message", "resourcesAdded"], "type": "object", "properties": {"resourcesAdded": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "message": {"type": "string"}}, "title": "AddResourcesToSubDomainReport"}, "JArray": {"required": ["arr"], "type": "object", "properties": {"arr": {"items": {"$ref": "#/definitions/JValue"}, "type": "array"}}, "title": "JArray"}, "ListReply[UnresolvedRelationship]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/UnresolvedRelationship"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "ResourceProvider": {"description": "Information describing a resource provider", "type": "object", "properties": {"relationships": {"items": {"$ref": "#/definitions/RelationshipSetting"}, "type": "array", "description": "Settings to declare how relationships should be identified for resource types managed by this resource provider"}, "description": {"type": "string", "description": "Description of the resource provider"}, "domainType": {"type": "string", "description": "Type of domain managed by the resource provider"}, "title": {"type": "string", "description": "Name of the resource provider"}, "providerId": {"type": "string", "description": "Identifier of the resource provider in provider's context"}, "uri": {"type": "string", "description": "Address to contact the resource provider"}, "id": {"type": "string", "description": "Unique identifier to address the resource provider"}, "asyncProtocolVersion": {"enum": ["v1", "v2"], "type": "string", "description": "Identifies the async protocol version supported by the resource provider"}, "resourceTypes": {"items": {"$ref": "#/definitions/ResourceTypeSetting"}, "type": "array", "description": "List of resource types managed by the resource provider"}, "domainSettings": {"description": "Domain level setting for the resource provider", "$ref": "#/definitions/DomainSettings"}, "protocolVersion": {"enum": ["v1", "v2", "built-in"], "type": "string", "description": "Identifies the protocol version supported by the resource provider"}, "lastUpsertTime": {"type": "string", "description": "Last time the resource provider is upserted in the database", "format": "date-time"}, "properties": {"description": "Properties of the resource provider", "$ref": "#/definitions/JObject"}}, "title": "ResourceProvider"}, "DomainProps": {"description": "Properties for creating a domain", "type": "object", "properties": {"accessUrl": {"type": "string", "description": "Access URL to the domain"}, "description": {"type": "string", "description": "Detailed description"}, "title": {"type": "string", "description": "Descriptive name/title of domain"}, "tenantId": {"type": "string", "description": "Orchestrator tenant ID for the domain owner (if unspecified defaults to requester)"}, "rpId": {"type": "string", "description": "Resource provider managing this domain"}, "address": {"description": "Address of the domain", "$ref": "#/definitions/Address"}, "properties": {"description": "Properties the domain", "$ref": "#/definitions/JObject"}, "operationMode": {"enum": ["normal", "simulated", "displayonly"], "type": "string", "description": "Operation mode of this domain"}}, "title": "DomainProps"}, "ResourceHistoryEvent": {"description": "Description of all changes made to a resource at a single time instant or transaction", "type": "object", "properties": {"changes": {"items": {"$ref": "#/definitions/AttributeChange"}, "type": "array", "description": "The set of attributes changed on the resource"}, "userId": {"type": "string", "description": "The ID of the user making the change"}, "time": {"type": "string", "description": "The timestamp of the transaction making the change", "format": "date-time"}}, "title": "ResourceHistoryEvent"}, "DomainConnectionStatus": {"type": "object", "title": "DomainConnectionStatus"}, "UnresolvedRelationship": {"description": "Description of an unresolved relationship", "type": "object", "properties": {"isDomainMangled": {"type": "number", "description": "Should the translated locator be written back to the resource in domain-mangled form"}, "requirement": {"type": "string", "description": "Identifies the relationship requirement name"}, "mangledProviderId": {"type": "string", "description": "The unresolved domain-mangled providerResourceId for the relationship"}, "locatorPath": {"type": "string", "description": "The locator path of the relationship setting, used for writing the translated property back"}, "resourceId": {"type": "string", "description": "The id of the resource where the unresolved locator id is defined"}, "isTarget": {"type": "boolean", "description": "Is the unresolved locator the targetId of the relationship"}, "capability": {"type": "string", "description": "Identifies the relationship capability name"}, "relationshipTypeId": {"type": "string", "description": "Identifies the relationship type ID"}, "index": {"type": "number", "description": "The index of the locator in an array, used for writing the translated property back"}, "id": {"type": "string", "description": "The id of the unresolved relationship", "format": "uuid"}}, "title": "UnresolvedRelationship"}, "ResourceOperation": {"description": "Information describing a resource operation", "type": "object", "properties": {"inputs": {"description": "Inputs of the operation", "$ref": "#/definitions/JObject"}, "description": {"type": "string", "description": "Description of the operation"}, "title": {"type": "string", "description": "Title of the operation"}, "resourceId": {"type": "string", "description": "ID of the resource"}, "updatedAt": {"type": "string", "description": "When the operation was last updated", "format": "date-time"}, "reason": {"type": "string", "description": "Reason for the operation state"}, "resourceStateConstraints": {"description": "Constraints of the resource state for this operation to execute", "$ref": "#/definitions/JObject"}, "executionGroup": {"type": "string", "description": "Execution group of the operation"}, "state": {"enum": ["requested", "pending", "scheduled", "executing", "successful", "failed", "cancelled"], "type": "string", "description": "Current state of the operation"}, "providerData": {"description": "Provider custom data", "$ref": "#/definitions/JObject"}, "outputs": {"description": "Outputs of the operation", "$ref": "#/definitions/JObject"}, "interface": {"type": "string", "description": "ID of the interface"}, "progress": {"description": "Describes any progress towards completion that the operation has made", "$ref": "#/definitions/JArray"}, "id": {"type": "string", "description": "Unique identifier for the operation"}, "createdAt": {"type": "string", "description": "When the operation was created", "format": "date-time"}}, "title": "ResourceOperation"}, "DiscoveryStrategy": {"description": "Settings to declare how resource type discovery should be performed", "type": "object", "properties": {"strategyType": {"enum": ["async", "sync"], "type": "string", "description": "Discovery strategy type"}, "pollingSettings": {"description": "Resource polling settings", "$ref": "#/definitions/PollingStrategySettings"}, "pollingMode": {"enum": ["listOnly", "getOnly", "noPolling"], "type": "string", "description": "Resource polling mode"}}, "title": "DiscoveryStrategy"}, "Tuple2StringJValue": {"required": ["_1", "_2"], "type": "object", "properties": {"_2": {"$ref": "#/definitions/JValue"}, "_1": {"type": "string"}}, "title": "Tuple2StringJValue"}, "ResyncReply": {"description": "Information describing the reply of a resync request", "type": "object", "properties": {"status": {"type": "integer", "description": "HTTP status code for the reply", "format": "int32"}, "source": {"type": "string", "description": "Source that produced the reply"}, "message": {"type": "string", "description": "Message of the response"}, "properties": {"description": "Optional properties of the reply", "$ref": "#/definitions/JObject"}, "items": {"items": {"$ref": "#/definitions/ResyncReplyItem"}, "type": "array", "description": "Optional items of the reply"}}, "title": "ResyncReply"}, "ValidationReport": {"description": "A report for the processing results of a resource validation request", "type": "object", "properties": {"state": {"enum": ["passed", "failed"], "type": "string", "description": "Status of the validation report"}, "results": {"items": {"$ref": "#/definitions/ValidationItem"}, "type": "array", "description": "List of validation results"}}, "title": "ValidationReport"}, "TypeArtifactDescriptor": {"description": "Information describing a single type artifact", "type": "object", "properties": {"description": {"type": "string", "description": "Description of the artifact"}, "title": {"type": "string", "description": "Title (label) of the artifact"}, "derivedFrom": {"items": {"type": "string"}, "type": "array", "description": "URI of model artifacts from which this artifact is derived from"}, "version": {"type": "string", "description": "Version level of the artifact"}, "artifactType": {"type": "string", "description": "Type of the artifact"}, "id": {"type": "string", "description": "Uniquely identifier of artifact"}, "experimental": {"type": "boolean", "description": "Experimental type artifact"}}, "title": "TypeArtifactDescriptor"}, "Product": {"description": "Information describing a product", "type": "object", "properties": {"providerProductId": {"type": "string", "description": "Identifier within the provider's context or scope for the product"}, "domainId": {"type": "string", "description": "Identifier of the domain that advertises the product"}, "description": {"type": "string", "description": "Detailed description of the product"}, "title": {"type": "string", "description": "Name or title describing the product"}, "providerData": {"description": "Provider custom data", "$ref": "#/definitions/JObject"}, "active": {"type": "boolean", "description": "State of the product (active or inactive)"}, "constraints": {"description": "Additional constraints for the product", "$ref": "#/definitions/JObject"}, "id": {"type": "string", "description": "Unique identifier of the product (ignored during create request)"}, "resourceTypeId": {"type": "string", "description": "The type of resource provided by the product"}}, "title": "Product"}, "ListReply[Product]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/Product"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "PollingStrategySettings": {"description": "Detailed settings on resource polling strategy", "type": "object", "properties": {"immediateDeletion": {"type": "boolean", "description": "Whether the deletion is considered done when the API returns"}, "deletePollingLimit": {"type": "integer", "description": "Maximum number of delete verification polling", "format": "int32"}, "syncTimeoutMs": {"type": "integer", "description": "Timeout for sync and queries", "format": "int64"}, "delayCreateTimeoutMs": {"type": "integer", "description": "Timeout value for a delayed creation to be considered failed", "format": "int64"}, "pollingIntervalMs": {"type": "integer", "description": "Polling interval in milliseconds", "format": "int64"}, "verifyMissingList": {"type": "boolean", "description": "Whether an extra GET will be called to verify a missing resource in LIST"}, "deletePollingIntervalMs": {"type": "integer", "description": "Polling interval for delete verification", "format": "int64"}}, "title": "PollingStrategySettings"}, "ListReply[TagKey]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/TagKey"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "ListReply[ResourceOperation]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/ResourceOperation"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "ListReply[ResourceProvider]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/ResourceProvider"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "DomainMetaInfoDiscoveryStrategy$": {"type": "object", "title": "DomainMetaInfoDiscoveryStrategy$"}, "ListReply[TagValue]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/TagValue"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "AppSliceSubDomains": {"required": ["subDomains"], "type": "object", "properties": {"subDomains": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}}, "title": "AppSliceSubDomains"}, "ResourceTypeDefinition": {"description": "Meta-information and content for a resource type", "type": "object", "properties": {"description": {"type": "string", "description": "Resource type description"}, "title": {"type": "string", "description": "Resource type name"}, "derivedFrom": {"items": {"type": "string"}, "type": "array", "description": "URI of model artifacts from which this artifact is derived from"}, "version": {"type": "string", "description": "Resource type version identifier"}, "model": {"description": "Resource type content", "$ref": "#/definitions/JObject"}, "id": {"type": "string", "description": "Unique identifier of the resource type"}, "experimental": {"type": "boolean", "description": "Experimental type artifact"}}, "title": "ResourceTypeDefinition"}, "ResourceSubDomainInfo": {"description": "Information describing a sub-domain for a resource to assign to", "type": "object", "properties": {"subDomainId": {"type": "string", "description": "The ID of the sub-domain", "format": "uuid"}}, "title": "ResourceSubDomainInfo"}, "ListReply[ResourceTypeDescriptor]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/ResourceTypeDescriptor"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "DomainSettings": {"description": "Settings to declare how domain should be managed", "type": "object", "properties": {"connection_status": {"type": "boolean", "description": "Specifies if maintenance of domain's connection status is supported"}, "initial_discovery_status": {"type": "boolean", "description": "Specifies if maintenance of domain's initial discovery status is supported"}, "asyncDeviceTypes": {"items": {"type": "string"}, "type": "array", "description": "Specifies the Resource Type IDs that use async discovery strategy"}, "rpType": {"description": "Specifies the RP Type", "$ref": "#/definitions/Value"}, "metaInfoDiscoveryStrategy": {"description": "Specifies the Domain meta information polling strategy", "$ref": "#/definitions/DomainMetaInfoDiscoveryStrategy$"}, "minInterUpsertIntervalMs": {"type": "number", "description": "Specifies the minimal inter-call interval bpocore should honor when upserting the Domain"}}, "title": "DomainSettings"}, "TagValue": {"description": "Tag value with description", "type": "object", "properties": {"key": {"type": "string", "description": "Tag key"}, "value": {"type": "string", "description": "Tag value"}, "description": {"type": "string", "description": "Description of the meaning of a tag value"}}, "title": "TagValue"}, "Address": {"description": "Represents a physical location/address", "type": "object", "properties": {"city": {"type": "string", "description": "City"}, "zip": {"type": "string", "description": "Postal/zip code"}, "country": {"type": "string", "description": "Country"}, "longitude": {"type": "number", "description": "Longitude"}, "state": {"type": "string", "description": "State/province"}, "street": {"type": "string", "description": "Street"}, "latitude": {"type": "number", "description": "Latitude"}}, "title": "Address"}, "ResourcesHistoryEvent": {"description": "Summary of a change event for a resource", "type": "object", "properties": {"label": {"type": "string", "description": "Textual label"}, "userId": {"type": "string", "description": "The ID of the user making the change"}, "id": {"type": "string", "description": "The UUID for the resource that was changed in this event"}, "added": {"type": "boolean", "description": "Added or retracted"}, "time": {"type": "string", "description": "The timestamp of the transaction making the change", "format": "date-time"}}, "title": "ResourcesHistoryEvent"}, "ListReply[ResourceHistoryEvent]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/ResourceHistoryEvent"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "SubDomainResourceSet": {"required": ["resources"], "type": "object", "properties": {"resources": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}}, "title": "SubDomainResourceSet"}, "Function1": {"type": "object", "title": "Function1"}, "ListReply[ResourceInterface]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/ResourceInterface"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "JValue": {"type": "object", "title": "JValue"}, "Resource": {"description": "Information describing a single resource", "type": "object", "properties": {"desiredOrchState": {"enum": ["active", "assembled", "requested", "scheduled", "terminated", "unspecified"], "type": "string", "description": "Desired orchestration state"}, "resourceTypeId": {"type": "string", "description": "The type of this resource"}, "autoClean": {"type": "boolean", "description": "Free up any resources automatically upon any activation failure"}, "nativeState": {"type": "string", "description": "Native (type specific) state"}, "discovered": {"type": "boolean", "description": "Is this resource discovered"}, "subDomainId": {"type": "string", "description": "Identifier of the resource's sub-domain", "format": "uuid"}, "updatedAt": {"type": "string", "description": "Time of last update", "format": "date-time"}, "sharingPermissionId": {"type": "string", "description": "The sharing permission associated with the resource"}, "id": {"type": "string", "description": "Unique identifier for the resource (optional/ignored on calls to create)"}, "createdAt": {"type": "string", "description": "Time of creation", "format": "date-time"}, "orchState": {"enum": ["unknown", "unspecified", "requested", "scheduled", "promoting", "assembling", "assembled", "activating", "failed", "active", "inactive", "terminating", "terminated"], "type": "string", "description": "Current state of the resource in the orchestrator"}, "label": {"type": "string", "description": "Textual label"}, "shared": {"type": "boolean", "description": "Is resource shared?"}, "providerResourceId": {"type": "string", "description": "Identifier of the resource in provider's context"}, "productId": {"type": "string", "description": "The type of product for this resource"}, "orderId": {"type": "string", "description": "If applicable, the order containing this resource"}, "description": {"type": "string", "description": "Detailed description of this resource"}, "tags": {"additionalProperties": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "type": "object", "description": "Tags"}, "differences": {"items": {"$ref": "#/definitions/Operation"}, "type": "array", "description": "Differences represent the difference between desired and observed state"}, "reason": {"type": "string", "description": "Reason for the orchestration state"}, "providerData": {"description": "Provider custom data", "$ref": "#/definitions/JObject"}, "properties": {"description": "Properties", "$ref": "#/definitions/JObject"}, "tenantId": {"type": "string", "description": "Owner tenant of the resource?"}}, "title": "Resource"}, "DiscoveryApiSettings": {"description": "Settings on API client for resource discovery", "type": "object", "properties": {"maxRedirections": {"type": "integer", "description": "Maximum redirections for http request", "format": "int32"}, "idleTimeoutMs": {"type": "integer", "description": "Time to keep an idle connection open before disconnecting it", "format": "int64"}, "serverTimeoutMs": {"type": "integer", "description": "Timeout for HTTP client when connecting to a server", "format": "int64"}, "maxHttpRetries": {"type": "integer", "description": "Maximum retries when an http request fails", "format": "int32"}, "maxConnections": {"type": "integer", "description": "Maximum concurrent http connections", "format": "int32"}}, "title": "DiscoveryApiSettings"}, "ListReply[TypeArtifactDescriptor]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/TypeArtifactDescriptor"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "Relationship": {"description": "Information describing a single relationship", "type": "object", "properties": {"orchState": {"enum": ["unknown", "unspecified", "requested", "scheduled", "promoting", "assembling", "assembled", "activating", "failed", "active", "inactive", "terminating", "terminated"], "type": "string", "description": "Current state of the resource in the orchestrator"}, "capabilityName": {"type": "string", "description": "Capability name in target resource"}, "properties": {"description": "Relationship properties", "$ref": "#/definitions/JObject"}, "sourceId": {"type": "string", "description": "UUID of source resource"}, "targetId": {"type": "string", "description": "UUID of target resource"}, "providerData": {"description": "Provider custom data", "$ref": "#/definitions/JObject"}, "requirementName": {"type": "string", "description": "Requirement name in source resource"}, "reason": {"type": "string", "description": "Reason for the orchestration state"}, "relationshipTypeId": {"type": "string", "description": "URI of relationship type"}, "id": {"type": "string", "description": "Unique identifier for the relationship (optional/ignored on calls to create)"}}, "title": "Relationship"}, "JObject": {"required": ["obj"], "type": "object", "properties": {"obj": {"items": {"$ref": "#/definitions/Tuple2StringJValue"}, "type": "array"}}, "title": "JObject"}, "ValidationItem": {"type": "object", "properties": {"status": {"type": "integer", "description": "HTTP status code for the result", "format": "int32"}, "validator": {"type": "string", "description": "Validator that produced the status"}, "pointer": {"type": "string", "description": "JSON pointer to the source of the issue"}, "detail": {"type": "string", "description": "Detailed description of the validation"}}, "title": "ValidationItem"}, "Value": {"type": "object", "title": "Value"}, "SubDomainProp": {"description": "Information describing a to-be-created sub-domain", "type": "object", "properties": {"assignable": {"type": "boolean", "description": "Whether the sub-domain can be re-assigned"}, "domainId": {"type": "string", "description": "ID of the domain this sub-domain belongs to"}, "name": {"type": "string", "description": "Name of the sub-domain"}, "parentId": {"type": "string", "description": "The ID of the container sub-domain, if applicable", "format": "uuid"}, "applicationSlices": {"uniqueItems": true, "items": {"type": "string", "format": "uuid"}, "type": "array", "description": "Set of application slices this sub-domain is in"}, "extendedApplicationSlices": {"uniqueItems": true, "items": {"type": "string", "format": "uuid"}, "type": "array", "description": "Set of application slices for which this sub-domain acts as an extended sub-domain"}, "scope": {"enum": ["APPLICATION", "TENANT", "COMMON"], "type": "string", "description": "Scope of the sub-domain"}, "decomposable": {"type": "boolean", "description": "Whether the sub-domain can be decomposped"}, "description": {"type": "string", "description": "Description of the sub-domain"}}, "title": "SubDomainProp"}, "Tuple2": {"required": ["_1", "_2"], "type": "object", "properties": {"_2": {"type": "number"}, "_1": {"type": "number"}}, "title": "Tuple2"}, "ApplicationSliceProp": {"description": "Information describing a to-be-created application slice", "type": "object", "properties": {"extendable": {"type": "boolean", "description": "Whether the application slice is extendable"}, "ownerTenantId": {"type": "string", "description": "The id of the tenant owning the slice"}, "name": {"type": "string", "description": "Name of the application slice"}, "holderTenantId": {"type": "string", "description": "The id of the tenant holding the slice"}, "parentId": {"type": "string", "description": "The id of the parent application slice", "format": "uuid"}, "isDefault": {"type": "boolean", "description": "Whether the application slice is the default slice of the owner tenant"}, "description": {"type": "string", "description": "Description of the application slice"}}, "title": "ApplicationSliceProp"}, "TagKey": {"description": "Tag key with description", "type": "object", "properties": {"description": {"type": "string", "description": "Textual description of tag key"}, "key": {"type": "string", "description": "Tag key"}, "autoIndexed": {"type": "boolean", "description": "Are tag value for this key auto-indexed?"}}, "title": "TagKey"}, "ListReply[SharingPermission]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/SharingPermission"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "AttributeChange": {"description": "Description of a single attribute change", "type": "object", "properties": {"attrName": {"type": "string", "description": "Name of the attribute that was changed"}, "changeType": {"enum": ["Set", "Unset", "Updated", "Added", "Removed"], "type": "string", "description": "The type of change made to the attribute"}, "migration": {"type": "boolean", "description": "Indicates whether the change was part of a migration"}, "oldValue": {"description": "The original value for the attribute before this change", "$ref": "#/definitions/JValue"}, "newValue": {"description": "The resulting value for the attribute after this change", "$ref": "#/definitions/JValue"}}, "title": "AttributeChange"}, "ListReply[SubDomain]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/SubDomain"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "ListReply[Resource]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/Resource"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "RelationshipSetting": {"description": "Settings to declare how relationships can be identified between two resource types", "type": "object", "properties": {"capabilityName": {"type": "string", "description": "Identifies the relationship capability name"}, "sourceTypeId": {"type": "string", "description": "Resource type of the relationship source"}, "isDomainMangled": {"type": "boolean", "description": "Whether the remote providerResourceId specified in this property is domain-mangled when receiving from and sending to the provider"}, "requirementName": {"type": "string", "description": "Identifies the relationship requirement name"}, "targetTypeId": {"type": "string", "description": "Resource type of the relationship target"}, "multiFieldLocator": {"items": {"type": "string"}, "type": "array", "description": "Multiple JSON path expresssion to be used identifying property fields to use in relationship identification"}, "relationshipTypeId": {"type": "string", "description": "Identifies the relationship type"}, "fieldKind": {"enum": ["provider", "user"], "type": "string", "description": "Indicates what the identifying property field points to"}, "translate": {"type": "boolean", "description": "Whether translation between providerResourceIds and Market Ids should be done"}, "fieldLocator": {"type": "string", "description": "JSON path expression identifying the property field to use for relationship identification"}}, "title": "RelationshipSetting"}, "TypeArtifactDefinition": {"description": "Information describing a single type artifact", "type": "object", "properties": {"model": {"description": "Type artifact model", "$ref": "#/definitions/JObject"}, "description": {"type": "string", "description": "Description of the artifact"}, "title": {"type": "string", "description": "Title (label) of the artifact"}, "derivedFrom": {"items": {"type": "string"}, "type": "array", "description": "URI of model artifacts from which this artifact is derived from"}, "version": {"type": "string", "description": "Version level of the artifact"}, "artifactType": {"type": "string", "description": "Type of the artifact"}, "id": {"type": "string", "description": "Uniquely identifier of artifact"}, "experimental": {"type": "boolean", "description": "Experimental type artifact"}}, "title": "TypeArtifactDefinition"}, "SharingPermission": {"description": "Information describing a sharing permission", "type": "object", "properties": {"isBuiltIn": {"type": "boolean", "description": "Whether this is a built-in permission"}, "description": {"type": "string", "description": "Description of the permission"}, "deletableBySubTenants": {"type": "boolean", "description": "Whether subject is deletable by subtenants if shared"}, "visibleToSubTenants": {"type": "boolean", "description": "Whether subject is visible to subtenants if shared"}, "updatableBySubTenants": {"type": "boolean", "description": "Whether subject is updatable by subtenants if shared"}, "label": {"type": "string", "description": "Label of the permission"}, "id": {"type": "string", "description": "Unique id of the permission"}}, "title": "SharingPermission"}, "ListReply[DomainType]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/DomainType"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "Domain": {"description": "Represents an autonomous domain provider", "type": "object", "properties": {"accessUrl": {"type": "string", "description": "Access URL to the domain"}, "initialDiscoveryStatus": {"description": "Initial Discovery status of the domain", "$ref": "#/definitions/DomainInitialDiscoveryStatus"}, "description": {"type": "string", "description": "Detailed description"}, "domainType": {"type": "string", "description": "Type of the domain"}, "title": {"type": "string", "description": "Descriptive name/title of domain"}, "connectionStatus": {"description": "Connection status of the domain", "$ref": "#/definitions/DomainConnectionStatus"}, "id": {"type": "string", "description": "Unique id of the domain"}, "lastConnected": {"type": "string", "description": "Last time domain was connected to southbound", "format": "date-time"}, "rpId": {"type": "string", "description": "Resource provider that creates this domain"}, "reason": {"type": "string", "description": "Reason message for connection failure"}, "address": {"description": "Address of the domain", "$ref": "#/definitions/Address"}, "tenantId": {"type": "string", "description": "Orchestrator tenant"}, "properties": {"description": "Properties the domain", "$ref": "#/definitions/JObject"}, "operationMode": {"enum": ["normal", "simulated", "displayonly"], "type": "string", "description": "Operation mode of this domain"}}, "title": "Domain"}, "ListReply[ResourcesHistoryEvent]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/ResourcesHistoryEvent"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "ResyncReplyItem": {"description": "Information describing an item of a resync request reply", "type": "object", "properties": {"status": {"type": "integer", "description": "HTTP status code for the item", "format": "int32"}, "source": {"type": "string", "description": "Source that produced the item"}, "message": {"type": "string", "description": "Message of the item"}, "properties": {"description": "Optional properties of the item", "$ref": "#/definitions/JObject"}}, "title": "ResyncReplyItem"}, "DomainType": {"description": "Defines a the type of a domain", "type": "object", "properties": {"providers": {"items": {"type": "string"}, "type": "array", "description": "Providers for this domain type"}, "name": {"type": "string", "description": "Name for the domain type"}, "description": {"type": "string", "description": "Description of a domain type"}}, "title": "DomainType"}, "TypeLayerCurrentReply": {"description": "Version values used to determine if the Type Catalog is current with respect to the Asset Area", "type": "object", "properties": {"current": {"type": "boolean", "description": "Is the Type Catalog current?"}, "version": {"type": "string", "description": "Type Catalog version"}, "headCommit": {"type": "string", "description": "Asset Area head commit"}}, "title": "TypeLayerCurrentReply"}, "DomainInitialDiscoveryStatus": {"type": "object", "title": "DomainInitialDiscoveryStatus"}, "AuditReply": {"description": "Information describing an item of a audit request reply", "type": "object", "properties": {"message": {"type": "string", "description": "Message of the item"}}, "title": "AuditReply"}, "ResourceTypeSetting": {"description": "Settings to declare how resource types should be managed by adapters", "type": "object", "properties": {"discoveryStrategy": {"description": "Specifies the discovery strategy to use for the resource type", "$ref": "#/definitions/DiscoveryStrategy"}, "apiSettings": {"description": "Specifies the REST API client settings for the resource type", "$ref": "#/definitions/DiscoveryApiSettings"}, "id": {"type": "string", "description": "Identifies the resource type"}, "noInitialDiscoveryMarkers": {"type": "number", "description": "Specifies if initial discovery status for this resource type should be ignored"}}, "title": "ResourceTypeSetting"}, "Function1RequestContextFutureRouteResult": {"type": "object", "title": "Function1RequestContextFutureRouteResult"}, "ListReply[Domain]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/Domain"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "ListReply[Relationship]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/Relationship"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "UpdateApplicationSliceSubDomainsReport": {"required": ["message", "subdomains"], "type": "object", "properties": {"message": {"type": "string"}, "subdomains": {"uniqueItems": true, "items": {"type": "string", "format": "uuid"}, "type": "array"}}, "title": "UpdateApplicationSliceSubDomainsReport"}, "ResourceProp": {"description": "Information describing a resource creation request", "type": "object", "properties": {"orderId": {"type": "string", "description": "If applicable, the order containing this resource"}, "orchState": {"enum": ["unknown", "unspecified", "requested", "scheduled", "promoting", "assembling", "assembled", "activating", "failed", "active", "inactive", "terminating", "terminated"], "type": "string", "description": "Current state of the resource in the orchestrator"}, "subDomainId": {"type": "string", "description": "Sub-domain ID", "format": "uuid"}, "desiredOrchState": {"enum": ["active", "assembled", "requested", "scheduled", "terminated", "unspecified"], "type": "string", "description": "Desired orchestration state"}, "description": {"type": "string", "description": "Detailed description of this resource"}, "tags": {"additionalProperties": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "type": "object", "description": "Tags"}, "autoClean": {"type": "boolean", "description": "Free up any resources automatically upon any activation failure"}, "label": {"type": "string", "description": "Textual label"}, "discovered": {"type": "boolean", "description": "Is this resource discovered"}, "reason": {"type": "string", "description": "Reason for the orchestration state"}, "providerData": {"description": "Provider custom data", "$ref": "#/definitions/JObject"}, "sharingPermissionId": {"type": "string", "description": "The sharing permission of the resource"}, "shared": {"type": "boolean", "description": "Is resource shared?"}, "providerResourceId": {"type": "string", "description": "Identifier of the resource in provider's context"}, "nativeState": {"type": "string", "description": "Native (type specific) state"}, "properties": {"description": "Properties", "$ref": "#/definitions/JObject"}, "productId": {"type": "string", "description": "The type of product for this resource"}}, "title": "ResourceProp"}, "ApplicationSlice": {"description": "Information describing an application slice", "type": "object", "properties": {"extendable": {"type": "boolean", "description": "Whether the application slice is extendable"}, "ownerTenantId": {"type": "string", "description": "The id of the tenant owning the slice"}, "description": {"type": "string", "description": "Description of the application slice"}, "holderTenantId": {"type": "string", "description": "The id of the tenant holding the slice"}, "parentId": {"type": "string", "description": "The id of the parent application slice", "format": "uuid"}, "id": {"type": "string", "description": "Unique ID of the application slice", "format": "uuid"}, "isDefault": {"type": "boolean", "description": "Whether the application slice is the default slice of the owner tenant"}, "name": {"type": "string", "description": "Name of the application slice"}}, "title": "ApplicationSlice"}, "ResourceOperationProp": {"description": "Information describing a resource operation creation request", "type": "object", "properties": {"interface": {"type": "string", "description": "ID of the interface"}, "inputs": {"description": "Inputs of the operation", "$ref": "#/definitions/JObject"}, "resourceStateConstraints": {"description": "Constraints of the resource state for this operation to execute", "$ref": "#/definitions/JObject"}, "description": {"type": "string", "description": "Description of the operation"}, "title": {"type": "string", "description": "Title of the operation"}}, "title": "ResourceOperationProp"}, "ListReply[ApplicationSlice]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/ApplicationSlice"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "ResourceTypeDescriptor": {"description": "Meta-information describing a resource type", "type": "object", "properties": {"description": {"type": "string", "description": "Resource type description"}, "title": {"type": "string", "description": "Resource type name"}, "derivedFrom": {"items": {"type": "string"}, "type": "array", "description": "URI of model artifacts from which this artifact is derived from"}, "version": {"type": "string", "description": "Resource type version identifier"}, "id": {"type": "string", "description": "Unique identifier of the resource type"}, "experimental": {"type": "boolean", "description": "Experimental type artifact"}}, "title": "ResourceTypeDescriptor"}, "Operation": {"type": "object", "title": "Operation"}, "SubDomain": {"description": "Information describing a sub-domain", "type": "object", "properties": {"assignable": {"type": "boolean", "description": "Whether the sub-domain can be re-assigned"}, "domainId": {"type": "string", "description": "ID of the domain this sub-domain belongs to"}, "description": {"type": "string", "description": "Description of the sub-domain"}, "parentId": {"type": "string", "description": "The ID of the container sub-domain, if applicable", "format": "uuid"}, "applicationSlices": {"uniqueItems": true, "items": {"type": "string", "format": "uuid"}, "type": "array", "description": "Set of application slices this sub-domain is in"}, "ownerTenantId": {"type": "string", "description": "The ID of the owner tenant"}, "isDefault": {"type": "boolean", "description": "Whether this sub-domain is its domain's default sub-domain"}, "extendedApplicationSlices": {"uniqueItems": true, "items": {"type": "string", "format": "uuid"}, "type": "array", "description": "Set of application slices for which this sub-domain acts as an extended sub-domain"}, "scope": {"enum": ["APPLICATION", "TENANT", "COMMON"], "type": "string", "description": "Scope of the sub-domain"}, "id": {"type": "string", "description": "Unique ID of the sub-domain", "format": "uuid"}, "decomposable": {"type": "boolean", "description": "Whether the sub-domain can be decomposed"}, "name": {"type": "string", "description": "Name of the sub-domain"}}, "title": "SubDomain"}, "ResourceInterface": {"description": "Information describing a resource operation interface", "type": "object", "properties": {"inputs": {"description": "Inputs to the resource interface", "$ref": "#/definitions/JObject"}, "description": {"type": "string", "description": "Description of the resource interface"}, "title": {"type": "string", "description": "Title of the resource interface"}, "outputs": {"description": "Outputs from the resource interface", "$ref": "#/definitions/JObject"}, "executionGroup": {"type": "string", "description": "The execution group this interface will use"}, "id": {"type": "string", "description": "Interface identifier"}, "internalOnly": {"type": "boolean", "description": "Whether the interface is for internal use only"}}, "title": "ResourceInterface"}, "SharingPermissionProp": {"description": "Properties for creating a sharing permission", "type": "object", "properties": {"description": {"type": "string", "description": "Description of the permission"}, "deletableBySubTenants": {"type": "boolean", "description": "Whether subject is deletable by subtenants if shared"}, "visibleToSubTenants": {"type": "boolean", "description": "Whether subject is visible to subtenants if shared"}, "updatableBySubTenants": {"type": "boolean", "description": "Whether subject is updatable by subtenants if shared"}, "label": {"type": "string", "description": "Label of the permission"}, "id": {"type": "string", "description": "Unique id of the permission"}}, "title": "SharingPermissionProp"}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_network_element_configuration.json b/tapi/resources/MCP_4.0.0_network_element_configuration.json
deleted file mode 100644
index 2e32964267cead500738c092355b6a8e99e7c541..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_network_element_configuration.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Specification for Network element configuration", "title": "Network element configuration"}, "paths": {"/configmgmt/api/v1/upgrade/stop": {"post": {"responses": {"204": {"description": "Stop upgrade executed successfully"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Stop NE upgrade. \n <p>Prerequiste: Upgrade should be in progress.\"", "parameters": [{"schema": {"$ref": "#/definitions/StopUpgradeAttributes"}, "description": "Stop upgrade attributes", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Upgrade operations v1"], "summary": "Stop NE upgrade", "consumes": ["application/json"], "operationId": "stopUpgrade"}}, "/configmgmt/api/v1/customScripts/scriptStatus": {"get": {"responses": {"200": {"description": "Custom scripts status for list of Network Element(s)", "schema": {"$ref": "#/definitions/CMOperationStatusList"}}, "500": {"description": "Retrieval of custom scripts status failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "Custom scripts status returned as a JSON list of objects for Network elements \n <p>Prerequiste: None.", "tags": ["Custom Scripts v1"], "summary": "Retrieve custom script status of Network Elements", "operationId": "getCustomScriptsStatus"}}, "/configmgmt/api/v1/upgrade/status": {"get": {"responses": {"200": {"description": "Upgrade status for list of Network Element(s)", "schema": {"$ref": "#/definitions/UpgradeStatusResponse"}}, "500": {"description": "Unable to retrieve upgrade status", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Upgrade status returned as a JSON list of objects for Network element \n <p>Prerequiste: None.", "parameters": [{"description": "Networkconstruct Name for which details need to be retrieved.", "required": true, "type": "string", "name": "networkConstructName", "in": "query"}], "produces": ["application/json"], "tags": ["Upgrade operations v1"], "summary": "Retrieve upgrade status of Network Element", "operationId": "retrieveUpgradeStatus"}}, "/configmgmt/api/v1/scriptsByTypeGroup/{typeGroup}": {"get": {"responses": {"200": {"description": "Script is retrieved based on typeGroup", "schema": {"$ref": "#/definitions/ScriptDefResponseBO"}}, "404": {"description": "Script is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get scripts belongs to the given TypeGroup, present in the config management root directory \n <p>Prerequiste: Scripts must exist for specified typeGroup.", "parameters": [{"description": "The type group used for scripts lookup", "required": true, "type": "string", "name": "typeGroup", "in": "path"}], "produces": ["application/json"], "tags": ["Script Management v1"], "summary": "Get scripts belongs to the given TypeGroup", "operationId": "getAllScriptsByTypeGroup"}}, "/configmgmt/api/v1/scriptsByName/{scriptName}": {"get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/ScriptDefResponseBO"}}, "404": {"description": "Script is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get script by Script Name, if present in the config management root directory \n <p>Prerequiste: Scripts must exist for specified scriptName.", "parameters": [{"description": "The type group used for scripts lookup", "required": true, "type": "string", "name": "scriptName", "in": "path"}], "produces": ["application/json"], "tags": ["Script Management v1"], "summary": "Get script by Script Name", "operationId": "getScriptByName"}}, "/configmgmt/api/v1/port/mappings/{id}": {"delete": {"responses": {"200": {"description": "Pec code mapping definition successfully deleted"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Delete pec code mapping definition from cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "Pec code mapping definition id", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["multipart/form-data"], "tags": ["Port Provisioning v1"], "summary": "Delete pec code mapping definition", "operationId": "deletePortRateMapping"}, "get": {"responses": {"200": {"description": "Pec code mapping definition successfully downloaded"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "download a pec code mapping definition from cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "Pec code mapping definition id", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["multipart/form-data"], "tags": ["Port Provisioning v1"], "summary": "download a pec code mapping definition", "operationId": "downloadPortRateMappping"}}, "/configmgmt/api/v1/profiles/{profileId}": {"patch": {"responses": {"200": {"description": "Profile updated", "schema": {"$ref": "#/definitions/FtpProfileAttribs"}}, "404": {"description": "Profile not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Update profile information as a JSON Object for given profile id. \n <p>For backup_restore profile type, Following attributes can be modified<ul><li>userName - user name <li>userPassword - user password <li>port - port no to access the machine<li>numberOfBackupFiles - used for number of backup files to be maintained for profile type backup_restore, This setting will take effect on next backup<li>sshPort - used for profile type backup_restore and upgrade</ul><p>For upgrade profile type, Following attributes can be modified<ul><li>userName - user name <li>userPassword - user password <li>ipAddress - Ip Address of the machine <li>port - port no to access the machine<li>imageLocation - Image location for doing file transfer from \n<li>sshPort - used for profile type backup_restore and upgrade</ul><p>Prerequiste: Profile must exist for specified profile id.", "parameters": [{"description": "The ftp profile with id to be retrieved.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "profileId"}, {"schema": {"$ref": "#/definitions/FtpProfile"}, "description": "updated profile", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Profiles v1"], "summary": "Update profile information", "operationId": "updateFtpProfile"}, "delete": {"responses": {"404": {"description": "Profile are not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "profile is deleted successfully"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Delete the profile with given profile id. \n <p>Prerequiste: The following attributes should be specified in the request:<ul><li>profileId - profile id</ul>", "parameters": [{"description": "The ftp profile with id to be retrieved.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "profileId"}], "produces": ["application/json"], "tags": ["Profiles v1"], "summary": "Delete a profile.", "operationId": "deleteProfile"}, "get": {"responses": {"200": {"description": "Profile fetched", "schema": {"$ref": "#/definitions/FtpProfileAttribs"}}, "404": {"description": "Profile not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get profile information as a JSON Object for given profile id. \n <p>Attributes: \n<ul><li>name - profile name <li>profileType - profile type <li>protocolType - protocol used to do file transfer (here supported protocolType is ftp, sftp and https)<li>storageMethod - Used to specify if to use database or file system<li>userName - user name <li>userPassword - user password <li>ipAddress - Ip Address of the machine <li>port - port no to access the machine<li>imageLocation - Image location for doing file transfer from \n<p>Additional attributes: \n<li>typeGroup - Used for network element typeGroup in profile type upgrade<li>releaseNumber - Used for network element release number for profile type upgrade<li>numberOfBackupFiles - used for number of backup files to be maintained for profile type backup_restore<li>sshPort - used for profile type backup_restore and upgrade \n</ul><p>Prerequiste: Profile must exist for specified profile id.", "parameters": [{"description": "The ftp profile with id to be retrieved.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "profileId"}], "produces": ["application/json"], "tags": ["Profiles v1"], "summary": "Retrieve profile information", "operationId": "getFtpProfileBasedOnId"}}, "/configmgmt/api/v2/nes": {"get": {"responses": {"200": {"description": "List of NEs for batch type", "schema": {"$ref": "#/definitions/BatchNeStatusList"}}, "404": {"description": "Unable to retrieve NEs", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of NEs failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get all Network Elements given Batch Type as a JSON list of objects. \n<p>Prerequiste: None.", "parameters": [{"enum": ["BACKUP", "PRE_UPGRADE", "UPGRADE", "POST_UPGRADE", "SCRIPT", "CUSTOM_SCRIPT"], "description": "Retrieve all NEs details by batch type", "required": true, "in": "query", "type": "string", "name": "batchType"}], "produces": ["application/json"], "tags": ["Batch Management v2"], "summary": "Retrieve Network Elements given the Batch Type.", "operationId": "getBatchedNesByBatchType"}}, "/configmgmt/api/v1/port/mappings": {"post": {"responses": {"201": {"description": "Pec code mapping definition successfully uploaded", "schema": {"$ref": "#/definitions/PortMapping"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Upload a pec code mapping definition into cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "The Input stream of the pec code mapping definition to be uploaded.", "required": true, "type": "file", "name": "file", "in": "formData"}, {"description": "Name of the pec code mapping definition", "required": true, "type": "string", "name": "name", "in": "formData"}], "produces": ["application/json"], "tags": ["Port Provisioning v1"], "summary": "Upload a pec code mapping definition", "consumes": ["multipart/form-data"], "operationId": "uploadPortRateMappingFile"}, "get": {"responses": {"200": {"description": "List of pec code mapping definitions", "schema": {"$ref": "#/definitions/PortMappingList"}}, "404": {"description": "Retrieval of pec code mapping definitions failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "PecCode mapping definitions returned as a JSON list of objects \n <p>Prerequiste: None.", "tags": ["Port Provisioning v1"], "summary": "Retrieve pec code maaping definitions", "operationId": "getAllPortRateMappings"}}, "/configmgmt/api/v1/port/pecs/{id}": {"delete": {"responses": {"200": {"description": "Pec code definition successfully deleted"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Delete pecCode definition from cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "Pec code definition id", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["multipart/form-data"], "tags": ["Port Provisioning v1"], "summary": "Delete pecCode definition", "operationId": "deletePecCodeMapping"}, "get": {"responses": {"200": {"description": "Pec code definition successfully downloaded"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "download a pec code definition from cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "Pec code definition id", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["multipart/form-data"], "tags": ["Port Provisioning v1"], "summary": "Download a pec code definition", "operationId": "downloadPecCodeMapping"}}, "/configmgmt/api/v1/scriptProfiles": {"post": {"responses": {"201": {"description": "Script profile successfully uploaded", "schema": {"$ref": "#/definitions/ScriptProfileList"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/ScriptProfileList"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Upload a script profile into cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "The Input stream of the script profile to be uploaded.", "required": true, "type": "file", "name": "file", "in": "formData"}, {"description": "Name of the script profile", "required": true, "type": "string", "name": "profileName", "in": "formData"}], "produces": ["application/json"], "tags": ["Script Profiles v1"], "summary": "Upload a script profile", "consumes": ["multipart/form-data"], "operationId": "uploadScriptProfile"}, "get": {"responses": {"200": {"description": "List of script profiles", "schema": {"$ref": "#/definitions/ScriptProfileList"}}, "404": {"description": "Retrieval of script profiles failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "Script Profiles returned as a JSON list of objects \n <p>Prerequiste: None.", "tags": ["Script Profiles v1"], "summary": "Retrieve Script Profiles", "operationId": "getCustomScripts"}}, "/fallback-user-mgmt/api/v1/fallbackUsers/resetPasswords": {"post": {"responses": {"202": {"description": "Reset password request is accepted", "schema": {"$ref": "#/definitions/FallbackPasswordResetResponse"}}, "404": {"description": "The fallback user is not found", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/Errors"}}, "409": {"description": "The NE is not managed in the system", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The reset password request input is invalid", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Specify the NE resource type only to reset passwords for all fallback users previously created on NEs of the specified type.<p>Specify the NE resource type and a comma-separated list of NE names to reset fallback passwords on the specified NEs.<p>Example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"neType\": \"6500\",\n    \"neNames\": [\"{{6500_NE_NAME}}\"],\n    \"resetSchedule\": {\n            \"startTime\" : \"2019-08-22T22:01:00Z\",\n            \"frequency\" : \"daily\"\n       }\n}</code></pre>", "parameters": [{"schema": {"$ref": "#/definitions/FallbackPasswordResetRequest"}, "description": "Fallback password reset request", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Fallback Users v1"], "summary": "Reset fallback passwords on NEs", "consumes": ["application/json"], "operationId": "resetFallbackPasswords"}}, "/configmgmt/api/v1/upgrade/manualInvoke": {"post": {"responses": {"204": {"description": "Manual invoke executed successfully"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Manual Invoke of cards. \n <p>Prerequiste: None.\"", "parameters": [{"schema": {"$ref": "#/definitions/ManualInvokeAttributes"}, "description": "Manual invoke attributes", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Upgrade operations v1"], "summary": "Manual Invoke of cards", "consumes": ["application/json"], "operationId": "manualInvoke"}}, "/configmgmt/api/v2/profiles/{profileId}": {"patch": {"responses": {"200": {"description": "Profile updated", "schema": {"$ref": "#/definitions/NeMaintenanceProfilesList"}}, "404": {"description": "Profile not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Update profile information as a JSON Object for given profile id. \n <p>For backup_restore profile type, Following attributes can be modified<ul><li>userName - user name <li>userPassword - user password <li>port - port no to access the machine<li>numberOfBackupFiles - used for number of backup files to be maintained for profile type backup_restore, This setting will take effect on next backup<li>sshPort - used for profile type backup_restore and upgrade</ul><p>For upgrade profile type, Following attributes can be modified<ul><li>userName - user name <li>userPassword - user password <li>ipAddress - Ip Address of the machine <li>port - port no to access the machine<li>imageLocation - Image location for doing file transfer from \n<li>sshPort - used for profile type backup_restore and upgrade</ul><p>Prerequiste: Profile must exist for specified profile id.", "parameters": [{"description": "The ftp profile with id to be retrieved.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "profileId"}, {"schema": {"$ref": "#/definitions/NeMaintenanceProfileAttributes"}, "description": "updated profile", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Profiles v2"], "summary": "Update profile information", "operationId": "updateFtpProfile"}}, "/configmgmt/api/v1/backupImages": {"get": {"responses": {"200": {"description": "List of backup images for a Network Element", "schema": {"$ref": "#/definitions/NeBackupImagesResponse"}}, "404": {"description": "Unable to retrieve backup images", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of backup images failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get all Backups of given Network Element as a JSON list of objects \n<p>Prerequiste: Successfull Backup operation must executed to retrieve available images.", "parameters": [{"description": "Retrieve all backup images for an NE.", "required": true, "type": "string", "name": "nename", "in": "query"}, {"required": false, "type": "string", "name": "netype", "in": "query"}], "produces": ["application/json"], "tags": ["Configuration Details v1"], "summary": "Retrieve all available Backups given the Network Element.", "operationId": "getAllBackupImages"}}, "/configmgmt/api/v1/port/provision": {"post": {"responses": {"201": {"description": "Pec code mapping file successfully uploaded"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Port provisioning. \n <p>Prerequiste: None.\"", "parameters": [{"schema": {"$ref": "#/definitions/PortProvisioningDetails"}, "description": "Provisioning Details", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Port Provisioning v1"], "summary": "Port provisioning", "consumes": ["application/json"], "operationId": "provisionPort"}}, "/configmgmt/api/v1/deleteBatch": {"post": {"responses": {"404": {"description": "Batches are not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Batches are deleted successfully"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Delete the Batches for given Batch Ids. \n <p>Prerequisites: The following attributes should be specified in the request:<ul><li>id - Any string<li>batchIds - The list of Batch Ids comma separated</ul>", "parameters": [{"schema": {"$ref": "#/definitions/BatchRemoveRequest"}, "description": "Batch removal request having list of batch ids.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Batch Management v1"], "summary": "Delete the Batches given the batchRemoveRequest.", "operationId": "deleteConfigMgmtBatch"}}, "/fallback-user-mgmt/api/v1/fallbackUsers/resetPasswords/schedules/{id}": {"delete": {"responses": {"404": {"description": "Failed to find the specified password reset schedule", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Password reset schedule is deleted successfully"}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "The ID of the password reset schedule", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["Fallback Users v1"], "summary": "Delete specified password reset schedule", "consumes": ["application/json"], "operationId": "deletePasswordResetSchedule"}, "get": {"responses": {"200": {"description": "Password reset schedule is found successfully", "schema": {"$ref": "#/definitions/FallbackResetScheduleResponse"}}, "404": {"description": "Failed to find the specified password reset schedule", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "The ID of the password reset schedule", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["Fallback Users v1"], "summary": "Retrieve specified password reset schedule", "consumes": ["application/json"], "operationId": "getPasswordResetSchedule"}}, "/configmgmt/api/v1/doc": {"post": {"responses": {"200": {"description": "Edit DOCs successful", "schema": {"$ref": "#/definitions/ConfigDOCResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Edit DOCs configuration on NEs \n<p>Prerequiste: The following attributes should be specified in the post request:<ul><li>operationType - the operation to invoke enable/disable <p>docDetails \n<li>networkConstructName - The name of Network Element on which operation is invoked<li>docNames - Array of Doc names on which operation is invoked</ul>", "parameters": [{"schema": {"$ref": "#/definitions/EditDOC"}, "description": "Edit DOCs", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["DOC v1"], "summary": "Edit DOCs configuration (enable/disable) on NEs", "operationId": "editDOCs"}, "get": {"responses": {"200": {"description": "Config DOCs fetched", "schema": {"$ref": "#/definitions/ConfigDOCResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get DOC configuration for NEs \n<p>Attributes: <ul><li>networkConstructNames - List of comma networkConstructs name </ul><p>Prerequiste: None.", "parameters": [{"description": "Networkconstruct Names for which config DOCs to be retrieved.", "required": true, "type": "string", "name": "networkConstructNames", "in": "query"}], "produces": ["application/json"], "tags": ["DOC v1"], "summary": "Retrieve DOC configuration of NEs", "operationId": "getDOCs"}}, "/configmgmt/api/v2/nes/{batchId}": {"get": {"responses": {"200": {"description": "List of NEs associated with batch", "schema": {"$ref": "#/definitions/BatchNeStatusList"}}, "404": {"description": "Unable to retrieve batched NEs", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of batched NEs failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get all Network Elements given Batch Id as a JSON list of objects. \n<p>Prerequiste: Batches must exist for specified batchId.", "parameters": [{"description": "Retrieve all NEs associated with a batchId", "pattern": ".*", "required": true, "in": "path", "type": "string", "name": "batchId"}], "produces": ["application/json"], "tags": ["Batch Management v2"], "summary": "Retrieve Network Elements given the Batch Id.", "operationId": "getBatchedNesByBatchId"}}, "/configmgmt/api/v1/scriptProfiles/{id}": {"delete": {"responses": {"200": {"description": "Script profile successfully deleted"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Delete script profile from cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "Script profile id", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["multipart/form-data"], "tags": ["Script Profiles v1"], "summary": "Delete script profile definition", "operationId": "deleteScriptProfile"}, "get": {"responses": {"200": {"description": "Script profile successfully downloaded"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "download a script profile from cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "Script profile id", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["multipart/form-data"], "tags": ["Script Profiles v1"], "summary": "download a script profile definition", "operationId": "downloadScriptProfile"}}, "/configmgmt/api/v1/backupRestoreStatus": {"get": {"responses": {"200": {"description": "List of Network Element(s) Backup and Restore status", "schema": {"$ref": "#/definitions/NeBackupRestoreStatusList"}}, "404": {"description": "Unable to retrieve Backup and Restore status", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of Backup and Restore status failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "List of Network Element(s) Backup and Restore status returned as a JSON list of objects \n <p>Prerequiste: None.", "tags": ["Configuration Details v1"], "summary": "Retrieve Backup and Restore operation status of Network Elements", "operationId": "getNeBackupRestoreStatus"}}, "/configmgmt/api/v1/mhopbfdsessions": {"post": {"responses": {"200": {"description": "Create BFD session request is executed."}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API creates a BFD session between two NEs. \n<p>Prerequisites: The following attributes should be specified in the post request:<ul><li>bfdSessionName - name of the BFD session <li>sourceNE - name or ip of the source NE <li>neighbourNE - name or ip of the neighbour NE<li>bfdProfileName - name of bfd profile to be used (optional parameter)</ul>", "parameters": [{"schema": {"$ref": "#/definitions/CreateBFDSessionRequest"}, "description": "Create BFD session", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Create BFD session v1"], "summary": "Create BFD session", "consumes": ["application/json"], "operationId": "createBFDSession"}, "get": {"responses": {"200": {"description": "BFD sessions retrieved"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API returns a BFD session created on the NE. \n<p>Prerequisites: The following attributes should be specified in the get request:<ul><li>sourceNE - name of the source NE <li>neighbourNE (Optional) - name of the remote NE</ul>", "parameters": [{"description": "Source NE", "required": true, "type": "string", "name": "sourceNE", "in": "query"}, {"description": "(Optional) Remote NE", "required": false, "type": "string", "name": "remoteNE", "in": "query"}], "produces": ["application/json"], "tags": ["Create BFD session v1"], "summary": "Get BFD session", "operationId": "getBFDSessions"}}, "/configmgmt/api/v1/schedules/nes": {"patch": {"responses": {"204": {"description": "Schedule updated"}, "404": {"description": "Not Found", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden", "schema": {"$ref": "#/definitions/Errors"}}, "401": {"description": "Unauthorized", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}, "503": {"description": "Service Unavailable", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal Server Error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Updates Schedule Nes. \n<p>Prerequiste: Schedule must exist.", "parameters": [{"schema": {"$ref": "#/definitions/ScheduleNesPatch"}, "description": "The schedule attributes to update", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Schedule Management v1"], "summary": "Updates Schedule Nes", "operationId": "updateScheduleNes"}}, "/configmgmt/api/v1/schedules": {"get": {"responses": {"200": {"description": "List of Network Element(s) maintenance details", "schema": {"$ref": "#/definitions/ScheduleDetailsResponseList"}}, "404": {"description": "Unable to retrieve Network element maintenance details", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of Network element maintenance details failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of Network Element(s) Maintenance details returned as a JSON list of objects \n <p>Prerequiste: None.", "parameters": [{"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied.", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "List of schedule Ids", "required": false, "type": "string", "name": "scheduleId", "in": "query"}, {"description": "List of schedule names", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "List of schedule types", "required": false, "type": "string", "name": "type", "in": "query"}, {"description": "List of schedule states", "required": false, "type": "string", "name": "state", "in": "query"}, {"description": "List of profile names", "required": false, "type": "string", "name": "profileName", "in": "query"}, {"description": "List of releaseNumbers", "required": false, "type": "string", "name": "releaseNumber", "in": "query"}, {"description": "List of typeGroups", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "List of schedule frequencies, Allowed values ONCE, DAILY, WEEKLY, MONTHLY", "required": false, "type": "string", "name": "frequency", "in": "query"}, {"description": "List of Schedule weekdays", "required": false, "type": "string", "name": "weekDays", "in": "query"}, {"description": "Monday, Allowed values ON or OFF", "required": false, "type": "string", "name": "monday", "in": "query"}, {"description": "Tuesday, Allowed values ON or OFF", "required": false, "type": "string", "name": "tuesday", "in": "query"}, {"description": "Wednesday, Allowed values ON or OFF", "required": false, "type": "string", "name": "wednesday", "in": "query"}, {"description": "Thursday, Allowed values ON or OFF", "required": false, "type": "string", "name": "thursday", "in": "query"}, {"description": "Friday, Allowed values ON or OFF", "required": false, "type": "string", "name": "friday", "in": "query"}, {"description": "Saturdy, Allowed values ON or OFF", "required": false, "type": "string", "name": "saturday", "in": "query"}, {"description": "Sunday, Allowed values ON or OFF", "required": false, "type": "string", "name": "sunday", "in": "query"}, {"description": "(Optional) Time of recent operation on Network Construct", "required": false, "type": "string", "name": "fromRecentOperationTime", "in": "query"}, {"description": "(Optional) Time of recent operation on Network Construct", "required": false, "type": "string", "name": "toRecentOperationTime", "in": "query"}, {"description": "(Optional) Time of next operation on Network Construct", "required": false, "type": "string", "name": "fromNextOperationTime", "in": "query"}, {"description": "(Optional) Time of next operation on Network Construct", "required": false, "type": "string", "name": "toNextOperationTime", "in": "query"}, {"description": "(Optional) Resource partition info", "required": false, "type": "string", "name": "resourcePartitionInfo", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) List of meta data to be included. The allowed values are: type, frequency, state, weekDays", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["Schedule Management v1"], "summary": "Retrieve Schedule details", "operationId": "getSchedules"}}, "/configmgmt/api/v2/customScripts": {"get": {"responses": {"200": {"description": "Profiles fetched", "schema": {"$ref": "#/definitions/CustomScriptsList"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of Custom Script(s) details returned as a JSON list of objects \n <p>Prerequiste: None.", "parameters": [{"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied.", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "List of customScript Ids", "required": false, "type": "string", "name": "scriptId", "in": "query"}, {"description": "The custom scripts by typeGroup to be retrieved.", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "The custom scripts by protocol type to be retrieved.", "required": false, "type": "string", "name": "protocolType", "in": "query"}, {"description": "List of custom scripts names", "required": false, "type": "string", "name": "scriptName", "in": "query"}, {"description": "The custom scripts by description to be retrieved.", "required": false, "type": "string", "name": "description", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) List of meta data to be included. The allowed values are: protocolType, typeGroup", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["Custom Scripts v2"], "summary": "Retrieve Custom Scripts", "operationId": "getCustomScripts"}}, "/configmgmt/api/v1/neMaintenanceDetails": {"get": {"responses": {"200": {"description": "List of Network Element(s) maintenance details", "schema": {"$ref": "#/definitions/NeMaintenanceDetailsList"}}, "404": {"description": "Unable to retrieve Network element maintenance details", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of Network element maintenance details failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of Network Element(s) Maintenance details returned as a JSON list of objects \n <p>Prerequiste: None.", "parameters": [{"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "List of networkConstruct Ids", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "List of networkConstruct names", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) List of comma separated longName values", "required": false, "type": "string", "name": "longName", "in": "query"}, {"description": "(Optional) List of device displayName values", "required": false, "type": "string", "name": "displayName", "in": "query"}, {"description": "List of Management Session Ids", "required": false, "type": "string", "name": "sessionId", "in": "query"}, {"description": "(Optional) List of networkConstruct resourceTypes", "required": false, "type": "string", "name": "resourceType", "in": "query"}, {"description": "(Optional) List of networkConstruct typeGroups", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "(Optional) Ip Address of Network Construct", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "(Optional) List of networkConstruct associationStates. The allowed values are: GOA, LOA", "required": false, "type": "string", "name": "associationState", "in": "query"}, {"description": "(Optional) List of networkConstruct syncStates. The allowed values are: notSynchronized, synchronizing, synchronized, failed, aborted, deleting, deleteFailed", "required": false, "type": "string", "name": "syncState", "in": "query"}, {"description": "(Optional) Physical location id", "required": false, "type": "string", "name": "physicalLocationId", "in": "query"}, {"description": "(Optional) SubnetName of Network Construct", "required": false, "type": "string", "name": "subnetName", "in": "query"}, {"description": "(Optional) List of networkConstruct software versions", "required": false, "type": "string", "name": "softwareActiveVersion", "in": "query"}, {"description": "(Optional) List of Recent operations. The allowed values are: Download, Upgrade, PostUpgrade, CommitUpgrade, CancelUpgrade, FULLUPGRADE, BACKUP, RESTORE, SCRIPT, CUSTOM_SCRIPT", "required": false, "type": "string", "name": "recentOperation", "in": "query"}, {"description": "(Optional) List of Next operations. The allowed values are: Download, Upgrade, PostUpgrade, CommitUpgrade, CancelUpgrade, FULLUPGRADE, BACKUP, RESTORE, SCRIPT, CUSTOM_SCRIPT", "required": false, "type": "string", "name": "nextOperation", "in": "query"}, {"description": "(Optional) Recent operation state of Network Construct", "required": false, "type": "string", "name": "recentOperationState", "in": "query"}, {"description": "(Optional) Recent operation progress state of Network Construct", "required": false, "type": "string", "name": "recentOperationProgressState", "in": "query"}, {"description": "(Optional) Software version available on Network Construct", "required": false, "type": "string", "name": "softwareAvailableVersion", "in": "query"}, {"description": "(Optional) List of backup schedules for Network Construct", "required": false, "type": "string", "name": "backupSchedule", "in": "query"}, {"description": "(Optional) List of upgrade schedules for Network Construct", "required": false, "type": "string", "name": "upgradeSchedule", "in": "query"}, {"description": "(Optional) List of customScript schedules for Network Construct", "required": false, "type": "string", "name": "customScriptSchedule", "in": "query"}, {"description": "(Optional) Time of recent operation on Network Construct", "required": false, "type": "string", "name": "fromRecentOperationTime", "in": "query"}, {"description": "(Optional) Time of recent operation on Network Construct", "required": false, "type": "string", "name": "toRecentOperationTime", "in": "query"}, {"description": "(Optional) Time of next operation on Network Construct", "required": false, "type": "string", "name": "fromNextOperationTime", "in": "query"}, {"description": "(Optional) Time of next operation on Network Construct", "required": false, "type": "string", "name": "toNextOperationTime", "in": "query"}, {"description": "(Optional) Resource partition info", "required": false, "type": "string", "name": "resourcePartitionInfo", "in": "query"}, {"description": "(Optional) Association state qualifier. The allowed values are MANUAL, SYSTEM, NETWORK", "required": false, "type": "string", "name": "associationStateQualifier", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) List of meta data to be included. The allowed values are: resourceType, associationState, syncState, softwareActiveVersion, associationStateQualifier", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["Network Elements Maintenance Details Resource v1"], "summary": "Retrieve Maintenance details of Network Elements", "operationId": "getNetworkElementsMaintenance"}}, "/configmgmt/api/v1/port/pecs": {"post": {"responses": {"201": {"description": "Pec code definition successfully uploaded", "schema": {"$ref": "#/definitions/PortMapping"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Upload a pec code definition into cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "The Input stream of the pec code definition to be uploaded.", "required": true, "type": "file", "name": "file", "in": "formData"}, {"description": "Name of the pec code definition", "required": true, "type": "string", "name": "name", "in": "formData"}], "produces": ["application/json"], "tags": ["Port Provisioning v1"], "summary": "Upload a pec code definition", "consumes": ["multipart/form-data"], "operationId": "uploadPecCodeFile"}, "get": {"responses": {"200": {"description": "List of pec code definitions", "schema": {"$ref": "#/definitions/PortMappingList"}}, "404": {"description": "Retrieval of pec code definitions failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "Pec code definitions returned as a JSON list of objects \n <p>Prerequiste: None.", "tags": ["Port Provisioning v1"], "summary": "Retrieve pec code definitions", "operationId": "getAllPecCodeMappings"}}, "/configmgmt/api/v2/profiles": {"post": {"responses": {"200": {"description": "profile created", "schema": {"$ref": "#/definitions/NeMaintenanceProfilesList"}}, "500": {"description": "Creation of profiles failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "The Api to create Profile as a JSON Object \n <p>Prerequiste: The following attributes should be specified in the post request:<ul><li>name - profile name <li>profileType - profile type <li>protocolType - protocol used to do file transfer (here supported protocolType is ftp, sftp and https)<li>storageMethod - Used to specify if to use database or file system<li>userName - user name <li>userPassword - user password <li>ipAddress - Ip Address of the machine <li>port - port no to access the machine<li>imageLocation - Image location for doing file transfer from \n<p>Additional attributes \n<li>typeGroup - Used for network element typeGroup in profile type upgrade<li>releaseNumber - Used for network element release number for profile type upgrade<li>numberOfBackupFiles - used for number of backup files to be maintained for profile type backup_restore<li>sshPort - used for profile type backup_restore and upgrade</ul>", "parameters": [{"schema": {"$ref": "#/definitions/NeMaintenanceProfileAttributes"}, "description": "Create profile", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Profiles v2"], "summary": "Trigger the creation of NE Maintenance profile", "consumes": ["application/json"], "operationId": "createFtpProfile"}, "get": {"responses": {"200": {"description": "Profiles fetched", "schema": {"$ref": "#/definitions/NeMaintenanceProfilesList"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get profiles informations for profileType or typeGroup \n<p>Attributes: <ul><li>name - profile name <li>profileType - profile type <li>protocolType - protocol used to do file transfer (here supported protocolType is ftp, sftp and https)<li>storageMethod - Used to specify if to use database or file system<li>userName - user name <li>userPassword - user password <li>ipAddress - Ip Address of the machine <li>port - port no to access the machine<li>imageLocation - Image location for doing file transfer from \n<p>\n Additional attributes: <li>typeGroup - Used for network element typeGroup in profile type upgrade<li>releaseNumber - Used for network element release number for profile type upgrade<li>numberOfBackupFiles - used for number of backup files to be maintained for profile type backup_restore<li>sshPort - used for profile type backup_restore and upgrade \n</ul><p>Prerequiste: None.", "parameters": [{"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied.", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "List of profile Ids", "required": false, "type": "string", "name": "profileId", "in": "query"}, {"description": "The NE Maintenance profiles by profile type to be retrieved.", "required": false, "type": "string", "name": "profileType", "in": "query"}, {"description": "The NE Maintenance profiles by typeGroup to be retrieved.", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "(Optional) Ip Address of Network Construct", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "List of profile names", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "The NE Maintenance upgrade profiles by release number to be retrieved.", "required": false, "type": "string", "name": "releaseNumber", "in": "query"}, {"description": "The NE Maintenance profiles by storage method to be retrieved.", "required": false, "type": "string", "name": "storageMethod", "in": "query"}, {"description": "The NE Maintenance profiles by port to be retrieved.", "format": "int32", "required": false, "in": "query", "type": "integer", "name": "port"}, {"description": "The NE Maintenance profiles by sshPort to be retrieved.", "format": "int32", "required": false, "in": "query", "type": "integer", "name": "sshPort"}, {"description": "The NE Maintenance profiles by protocol type to be retrieved.", "required": false, "type": "string", "name": "protocolType", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) List of meta data to be included. The allowed values are: profileType, protocolType, storageMethod", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["Profiles v2"], "summary": "Retrieve profiles", "operationId": "getFtpProfiles"}}, "/configmgmt/api/v1/profiles/associations/{profileId}": {"get": {"responses": {"200": {"description": "Profile association fetched", "schema": {"$ref": "#/definitions/ProfileAssociations"}}, "404": {"description": "Profile not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get profile association information as a JSON Object for given profile id. \n <p>Attributes: \n<ul><li>jobExecuted - job execution status <li>associatedSchedules - associated schedules </ul><p>Prerequiste: Profile must exist for specified profile id.", "parameters": [{"description": "The ftp profile id for which associations to be retrieved.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "profileId"}], "produces": ["application/json"], "tags": ["Profiles v1"], "summary": "Retrieve profile association information", "operationId": "getFtpProfileAssociations"}}, "/configmgmt/api/v1/upgrade/resume": {"post": {"responses": {"204": {"description": "Manual resume executed successfully"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Manual resume of upgrade. Resume can be applied on one or more Network Elements \n <p>Specify the NE name, type and typeGroup are optional. neDetails can contain one or more network elements<p>Prerequiste: The Network Elements must in Suspended State<p>Example request:</p><pre style='font-size: smaller'><code class='json'>{  \n   \"data\":{ \n      \"type\":\"resume\",\n      \"attributes\":{  \n         \"neDetails\":[  \n            {  \n               \"neName\":\"NE1\",\n               \"neType\":\"6500\",\n               \"typeGroup\":\"Ciena6500\"\n            },\n            {  \n               \"neName\":\"NE2\",\n               \"neType\":\"6500\",\n               \"typeGroup\":\"Ciena6500\"\n            }\n         ]\n      }\n   }\n}</code></pre>", "parameters": [{"schema": {"$ref": "#/definitions/ManualResume"}, "description": "Manual resume attributes", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Upgrade operations v1"], "summary": "Manual resume of upgrade", "consumes": ["application/json"], "operationId": "manualResume"}}, "/fallback-user-mgmt/api/v1/fallbackUsers": {"post": {"responses": {"202": {"description": "Create user request is accepted", "schema": {"$ref": "#/definitions/FallbackUserCreationResponse"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The create user request input is invalid", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Specify the NE resource type only to create fallback users on all managed NEs of the specified type.<p>Specify the NE resource type and a comma-separated list of NE names to create fallback users on the specified NEs.<p>A global UID and randomly generated passwords are used to create fallback users. UID and password are not specified in the request body.<p>Example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"neType\": \"6500\",\n    \"neNames\": [\"{{6500_NE_NAME}}\"]\n}</code></pre>", "parameters": [{"schema": {"$ref": "#/definitions/FallbackUserCreationRequest"}, "description": "Fallback user creation request", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Fallback Users v1"], "summary": "Create fallback user accounts on NEs", "consumes": ["application/json"], "operationId": "createUser"}, "delete": {"responses": {"202": {"description": "Delete user request is accepted", "schema": {"$ref": "#/definitions/FallbackUserDeletionResponse"}}, "404": {"description": "The fallback user is not found", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/Errors"}}, "409": {"description": "The NE is not managed in the system", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The delete user request input is invalid", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Specify the NE resource type only to delete all fallback users previously created on NEs of the specified type.<p>Specify the NE resource type and a comma-separated list of NE names to delete fallback users on the specified NEs.<p>Example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"neType\": \"6500\",\n    \"neNames\": [\"{{6500_NE_NAME}}\"]\n}</code></pre>", "parameters": [{"schema": {"$ref": "#/definitions/FallbackUserDeletionRequest"}, "description": "Fallback user deletion request", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Fallback Users v1"], "summary": "Delete fallback user accounts on NEs", "consumes": ["application/json"], "operationId": "deleteUser"}, "get": {"responses": {"200": {"description": "Fallback user info is found successfully", "schema": {"$ref": "#/definitions/FallbackUserListResponse"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Query parameter value is invalid", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Comma-separated NE names", "required": false, "type": "string", "name": "neNames", "in": "query"}, {"description": "Last operation state, supported values are 'In-progress', 'Succeeded', 'Failed' and 'System-restored'", "required": false, "type": "string", "name": "lastOperationState", "in": "query"}, {"description": "Offset for the next page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page, defaulted to 20", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["Fallback Users v1"], "summary": "Retrieve fallback user info for NEs", "consumes": ["application/json"], "operationId": "getUsers"}}, "/fallback-user-mgmt/api/v1/fallbackUsers/passwordPolicy": {"patch": {"responses": {"200": {"description": "Password Policy updated", "schema": {"$ref": "#/definitions/FallbackPasswordPolicyBO"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/FallbackPasswordPolicyRequest"}, "description": "Fallback password policy", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Fallback Users v1"], "summary": "Update password policy information", "operationId": "updatePasswordPolicy"}, "get": {"responses": {"200": {"description": "Password generation values fetched", "schema": {"$ref": "#/definitions/FallbackPasswordPolicyResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "", "tags": ["Fallback Users v1"], "summary": "Retrieve password generation values", "operationId": "getPasswordPolicy"}}, "/fallback-user-mgmt/api/v1/fallbackUsers/resetPasswords/schedules": {"get": {"responses": {"200": {"description": "Password reset schedules info is found successfully", "schema": {"$ref": "#/definitions/FallbackResetScheduleListResponse"}}, "500": {"description": "The server encountered an error while searching", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "produces": ["application/json"], "tags": ["Fallback Users v1"], "summary": "Retrieve password reset schedules", "consumes": ["application/json"], "operationId": "getPasswordResetSchedules"}}, "/configmgmt/api/v1/scripts": {"get": {"responses": {"200": {"description": "Scripts retrieved", "schema": {"$ref": "#/definitions/ScriptDefResponseBO"}}, "404": {"description": "Script is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "Get all available scripts present in the config management root directory \n <p>Prerequiste: None.", "tags": ["Script Management v1"], "summary": "get all script definitions", "operationId": "getAllScripts"}}, "/configmgmt/api/v1/nes/{batchId}": {"get": {"responses": {"200": {"description": "List of NEs associated with batch", "schema": {"$ref": "#/definitions/NeBackupRestoreStatusList"}}, "404": {"description": "Unable to retrieve batched NEs", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of batched NEs failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get all Network Elements given Batch Id as a JSON list of objects. \n<p>Prerequiste: Batches must exist for specified batchId.", "parameters": [{"description": "Retrieve all NEs associated with a batchId", "pattern": ".*", "required": true, "in": "path", "type": "string", "name": "batchId"}], "produces": ["application/json"], "tags": ["Batch Management v1"], "summary": "Retrieve Network Elements given the Batch Id.", "operationId": "getBatchedNes"}}, "/configmgmt/api/v1/profiles": {"post": {"responses": {"200": {"description": "profile created", "schema": {"$ref": "#/definitions/FtpProfileAttribs"}}, "500": {"description": "Creation of profiles failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "The Api to create Profile as a JSON Object \n <p>Prerequiste: The following attributes should be specified in the post request:<ul><li>name - profile name <li>profileType - profile type <li>protocolType - protocol used to do file transfer (here supported protocolType is ftp, sftp and https)<li>storageMethod - Used to specify if to use database or file system<li>userName - user name <li>userPassword - user password <li>ipAddress - Ip Address of the machine <li>port - port no to access the machine<li>imageLocation - Image location for doing file transfer from \n<p>Additional attributes \n<li>typeGroup - Used for network element typeGroup in profile type upgrade<li>releaseNumber - Used for network element release number for profile type upgrade<li>numberOfBackupFiles - used for number of backup files to be maintained for profile type backup_restore<li>sshPort - used for profile type backup_restore and upgrade</ul>", "parameters": [{"schema": {"$ref": "#/definitions/FtpProfile"}, "description": "Create profile", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Profiles v1"], "summary": "Trigger the creation of NE Maintenance profile", "consumes": ["application/json"], "operationId": "createFtpProfile"}, "get": {"responses": {"200": {"description": "Profiles fetched", "schema": {"$ref": "#/definitions/FtpProfileResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get profiles informations for profileType or typeGroup \n<p>Attributes: <ul><li>name - profile name <li>profileType - profile type <li>protocolType - protocol used to do file transfer (here supported protocolType is ftp, sftp and https)<li>storageMethod - Used to specify if to use database or file system<li>userName - user name <li>userPassword - user password <li>ipAddress - Ip Address of the machine <li>port - port no to access the machine<li>imageLocation - Image location for doing file transfer from \n<p>\n Additional attributes: <li>typeGroup - Used for network element typeGroup in profile type upgrade<li>releaseNumber - Used for network element release number for profile type upgrade<li>numberOfBackupFiles - used for number of backup files to be maintained for profile type backup_restore<li>sshPort - used for profile type backup_restore and upgrade \n</ul><p>Prerequiste: None.", "parameters": [{"enum": ["backup_restore", "upgrade"], "description": "The NE Maintenance profiles by profile type to be retrieved.", "required": false, "in": "query", "type": "string", "name": "profileType"}, {"description": "The NE Maintenance profiles by typeGroup to be retrieved.", "required": false, "type": "string", "name": "neType", "in": "query"}], "produces": ["application/json"], "tags": ["Profiles v1"], "summary": "Retrieve profiles", "operationId": "getFtpProfiles"}}, "/configmgmt/api/v1/neUpgradeDetails": {"get": {"responses": {"200": {"description": "List of Network Element(s) upgrade details", "schema": {"$ref": "#/definitions/NeUpgradeDetailsList"}}, "404": {"description": "Unable to retrieve Network element upgrade details", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of Network element upgrade details failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of Network Element(s) upgrade details returned as a JSON list of objects \n <p>Prerequiste: None.", "parameters": [{"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "List of networkConstruct Ids", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "List of networkConstruct names", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) List of comma separated longName values", "required": false, "type": "string", "name": "longName", "in": "query"}, {"description": "(Optional) List of device displayName values", "required": false, "type": "string", "name": "displayName", "in": "query"}, {"description": "List of Management Session Ids", "required": false, "type": "string", "name": "sessionId", "in": "query"}, {"description": "(Optional) List of networkConstruct resourceTypes", "required": false, "type": "string", "name": "resourceType", "in": "query"}, {"description": "(Optional) List of networkConstruct typeGroups", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "(Optional) Ip Address of Network Construct", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "(Optional) List of networkConstruct associationStates. The allowed values are: GOA, LOA", "required": false, "type": "string", "name": "associationState", "in": "query"}, {"description": "(Optional) List of networkConstruct syncStates. The allowed values are: notSynchronized, synchronizing, synchronized, failed, aborted, deleting, deleteFailed", "required": false, "type": "string", "name": "syncState", "in": "query"}, {"description": "(Optional) Physical location id", "required": false, "type": "string", "name": "physicalLocationId", "in": "query"}, {"description": "(Optional) SubnetName of Network Construct", "required": false, "type": "string", "name": "subnetName", "in": "query"}, {"description": "(Optional) List of networkConstruct software versions", "required": false, "type": "string", "name": "softwareActiveVersion", "in": "query"}, {"description": "(Optional) Software version available on Network Construct", "required": false, "type": "string", "name": "softwareAvailableVersion", "in": "query"}, {"description": "(Optional) List of upgrade schedules for Network Construct", "required": false, "type": "string", "name": "upgradeSchedules", "in": "query"}, {"description": "(Optional) List of releaseMgmt schedules for Network Constructs", "required": false, "type": "string", "name": "releaseMgmtSchedules", "in": "query"}, {"description": "(Optional) List of upgrade stages for Network Constructs", "required": false, "type": "string", "name": "upgradeStage", "in": "query"}, {"description": "(Optional) List of upgrade status for Network Constructs", "required": false, "type": "string", "name": "upgradeStatus", "in": "query"}, {"description": "(Optional) Network Constructs with manual Invoke ", "required": false, "type": "string", "name": "manualInvokeOnCards", "in": "query"}, {"description": "(Optional) Resource partition info", "required": false, "type": "string", "name": "resourcePartitionInfo", "in": "query"}, {"description": "(Optional) Association state qualifier. The allowed values are MANUAL, SYSTEM, NETWORK", "required": false, "type": "string", "name": "associationStateQualifier", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) List of meta data to be included. The allowed values are: resourceType, associationState, syncState, softwareActiveVersion, associationStateQualifier, upgradeStage, upgradeStatus, manualInvokeOnCards", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["Network Elements Upgrade Details Resource v1"], "summary": "Retrieve upgrade details of Network Elements", "operationId": "getNetworkElementsMaintenance"}}, "/configmgmt/api/v1/jobs": {"post": {"responses": {"201": {"description": "Network element configuration job is executed and scheduled."}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API validates user input and execute or schedule a network element configuration job. \n<p>Prerequiste: The following attributes should be specified in the post request:<ul><li>maxConnections - maximum connection <li>scheduleTime - time to when the job should be executed<li>scriptName - script name <li>profileName - profile name <li>type - type of job (eg: job)<li>neName - network element name<li>neType - network element type</ul>", "parameters": [{"schema": {"$ref": "#/definitions/UserInput"}, "description": "Execute job user input as JSON wrapper object", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Network Element Configuration Job Management v1"], "summary": "Execute network element configuration job", "consumes": ["application/json"], "operationId": "createConfigMgmtJob"}, "get": {"responses": {"200": {"description": "Retrieve all job status", "schema": {"$ref": "#/definitions/ConfigMgmtJobResponse"}}, "404": {"description": "Network element configuration job is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get jobs status as a list of JSON objects of all executed or scheduled jobs given the job id \n<p>Prerequiste: None.", "parameters": [{"description": "The job name used for current status of a config job lookup", "required": false, "type": "string", "name": "scriptName", "in": "query"}], "produces": ["application/json"], "tags": ["Network Element Configuration Job Management v1"], "summary": "Retrieve job status of all executed or scheduled jobs.", "operationId": "getAllConfigMgmtJobs"}}, "/configmgmt/api/v1/upgradeStatus": {"get": {"responses": {"200": {"description": "Upgrade status for list of Network Element(s)", "schema": {"$ref": "#/definitions/CMOperationStatusList"}}, "404": {"description": "Retrieval of upgrade status failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "Upgrade status returned as a JSON list of objects for Network elements \n <p>Prerequiste: None.", "tags": ["Upgrade operation v1"], "summary": "Retrieve upgrade operation status of Network Elements", "operationId": "getUpgradeStatus"}}, "/configmgmt/api/v2/scriptProfiles": {"get": {"responses": {"200": {"description": "Script Profiles fetched", "schema": {"$ref": "#/definitions/ScriptProfileList"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "List of Script Profile(s) details returned as a JSON list of objects \n <p>Prerequiste: None.", "parameters": [{"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied.", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "List of script profile Ids", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "List of script profile names", "required": false, "type": "string", "name": "profileName", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["Script Profiles v2"], "summary": "Retrieve Script Profiles", "operationId": "getScriptProfiles"}}, "/configmgmt/api/v1/batches/{batchId}": {"put": {"responses": {"204": {"description": "Batch updated", "schema": {"$ref": "#/definitions/BatchStatus"}}, "404": {"description": "Not Found", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden", "schema": {"$ref": "#/definitions/Errors"}}, "401": {"description": "Unauthorized", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}, "503": {"description": "Service Unavailable", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal Server Error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Updates Batch attributes for a batch. \n<p>Prerequiste: Batch must exist.", "parameters": [{"schema": {"$ref": "#/definitions/BatchStatus"}, "description": "The batch attributes to update", "required": true, "name": "body", "in": "body"}, {"description": "Update batch associated with given batchId", "required": true, "type": "string", "name": "batchId", "in": "path"}], "produces": ["application/json"], "tags": ["Batch Management v1"], "summary": "Updates Batch attributes for a batch", "operationId": "updateBatches"}, "get": {"responses": {"200": {"description": "Batch fetched", "schema": {"$ref": "#/definitions/BatchStatus"}}, "404": {"description": "Batch is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get Batch as a JSON object of given Batch Id. \n<p>Prerequiste: Batches must exist for specified batchId.", "parameters": [{"description": "The batchId used for lookup inside created batch", "required": true, "type": "string", "name": "batchId", "in": "path"}], "produces": ["application/json"], "tags": ["Batch Management v1"], "summary": "Retrieve Batch given the Batch Id.", "operationId": "getConfigMgmtBatch"}}, "/configmgmt/api/v1/schedules/{scheduleId}": {"put": {"responses": {"200": {"description": "Schedule updated", "schema": {"$ref": "#/definitions/ScheduleDetailsResponse"}}, "404": {"description": "Not Found", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden", "schema": {"$ref": "#/definitions/Errors"}}, "401": {"description": "Unauthorized", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}, "503": {"description": "Service Unavailable", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal Server Error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Updates Schedule attributes. \n<p>Prerequiste: Schedule must exist.", "parameters": [{"schema": {"$ref": "#/definitions/ScheduleAttributes"}, "description": "The schedule attributes to update", "required": true, "name": "body", "in": "body"}, {"description": "Update schedule associated with given scheduleId", "required": true, "type": "string", "name": "scheduleId", "in": "path"}], "produces": ["application/json"], "tags": ["Schedule Management v1"], "summary": "Updates Schedule attributes", "operationId": "updateSchedule"}, "delete": {"responses": {"404": {"description": "Schedule not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Schedule is deleted successfully"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Delete the schedule with given schedule Id. \n <p>Prerequiste: The following attributes should be specified in the request:<ul><li>scheduleId - Schedule Id</ul>", "parameters": [{"description": "Id of the schedule to be deleted.", "required": true, "type": "string", "name": "scheduleId", "in": "path"}], "produces": ["application/json"], "tags": ["Schedule Management v1"], "summary": "Delete a schedule with given schedule id.", "operationId": "deleteConfigMgmtBatch"}}, "/configmgmt/api/v1/customScripts": {"post": {"responses": {"201": {"description": "Custom script successfully uploaded", "schema": {"$ref": "#/definitions/CustomScriptList"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/CustomScriptList"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Upload a script into cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "The Input stream of the custom script file to be uploaded.", "required": true, "type": "file", "name": "file", "in": "formData"}, {"description": "TypeGroup for which this custom script file is uploaded", "required": true, "type": "string", "name": "typeGroup", "in": "formData"}, {"enum": ["cli", "tl1"], "description": "Protocol type of the custom script file", "required": true, "in": "formData", "type": "string", "name": "protocolType"}, {"description": "Name of the custom script", "required": true, "type": "string", "name": "scriptName", "in": "formData"}, {"description": "description of custom script", "required": false, "type": "string", "name": "description", "in": "formData"}], "produces": ["application/json"], "tags": ["Custom Scripts v1"], "summary": "Upload a custom script definitions", "consumes": ["multipart/form-data"], "operationId": "uploadCustomScript"}, "get": {"responses": {"200": {"description": "List of custom scripts", "schema": {"$ref": "#/definitions/CustomScriptList"}}, "500": {"description": "Retrieval of custom scripts failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Custom scripts returned as a JSON list of objects \n <p>Prerequiste: None.", "parameters": [{"description": "TypeGroup of the custom scripts", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"enum": ["cli", "tl1"], "description": "Protocol type of the custom scripts", "required": false, "in": "query", "type": "string", "name": "protocolType"}], "produces": ["application/json"], "tags": ["Custom Scripts v1"], "summary": "Retrieve custom scripts", "operationId": "getCustomScripts"}}, "/configmgmt/api/v1/neUpgradeStatus": {"get": {"responses": {"200": {"description": "Upgrade status of a Network Element", "schema": {"$ref": "#/definitions/CMOperationStatus"}}, "404": {"description": "Retrieval of upgrade status failed", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Upgrade status returned as a JSON object indicating upgrade status of a Network element. \n <p>Prerequiste: None.", "parameters": [{"description": "Management session id of an NE.", "required": true, "type": "string", "name": "ncid", "in": "query"}, {"description": "Operation type of job execution on NE.", "required": false, "type": "string", "name": "operationtype", "in": "query"}], "produces": ["application/json"], "tags": ["Upgrade operation v1"], "summary": "Retrieve upgrade operation status of a Network Element based on ncId and operation type", "operationId": "getNeUpgradeStatus"}}, "/configmgmt/api/v1/jobs/{jobId}": {"patch": {"responses": {"200": {"description": "Config job attributes are updated and scheduled", "schema": {"$ref": "#/definitions/UserInput"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API updates the config job execution attributes.\n <p>Prerequiste: Jobs must exist for specified jobId.", "parameters": [{"description": "The job execution id used for current status of a config job lookup", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "jobId"}, {"schema": {"type": "string"}, "description": "Update config job execution user input attributes as JSON wrapper object", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Network Element Configuration Job Management v1"], "summary": "Update a job based on the jobId", "consumes": ["application/json"], "operationId": "patchConfigMgmtJobPatch"}, "delete": {"responses": {"200": {"description": "Job deleted"}, "404": {"description": "Network element configuration job is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Delete a job \n<p>Prerequiste: Jobs must exist for specified jobId.", "parameters": [{"description": "The job execution id used for current status of a config job lookup", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "jobId"}], "produces": ["application/json"], "tags": ["Network Element Configuration Job Management v1"], "summary": " Delete a job", "operationId": "deleteConfigMgmtJob"}, "get": {"responses": {"200": {"description": "Retrieve job status", "schema": {"$ref": "#/definitions/ConfigMgmtJobResponse"}}, "404": {"description": "Network element configuration job is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Get the job status as a JSON object given the job id \n<p>Prerequiste: Jobs must exist for specified jobId.", "parameters": [{"description": "The job execution id used for current status of a config job lookup", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "jobId"}], "produces": ["application/json"], "tags": ["Network Element Configuration Job Management v1"], "summary": "Retrieve the job status given the job id.", "operationId": "getConfigMgmtJob"}}, "/configmgmt/api/v1/batches": {"get": {"responses": {"200": {"description": "Batches fetched", "schema": {"$ref": "#/definitions/BatchStatusList"}}, "404": {"description": "Batches are not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "Get all existing Batches as a JSON list of objects. \n<p>Prerequiste: None.", "tags": ["Batch Management v1"], "summary": "Retrieve existing Batches.", "operationId": "getAllConfigMgmtBatches"}}, "/configmgmt/api/v1/customScripts/{id}": {"delete": {"responses": {"200": {"description": "Custom script successfully deleted"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "deleteCustomScript a script from cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "Custom script id", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["multipart/form-data"], "tags": ["Custom Scripts v1"], "summary": "deleteCustomScript a script definition", "operationId": "deleteCustomScript"}, "get": {"responses": {"200": {"description": "Custom script successfully downloaded"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "download a custom script from cassandra database. \n <p>Prerequiste: None.\"", "parameters": [{"description": "Custom script id", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["multipart/form-data"], "tags": ["Custom Scripts v1"], "summary": "download a custom script definition", "operationId": "downloadCustomScript"}}}, "schemes": ["http", "https"], "tags": [{"name": "Batch Management v1", "description": "Manage Batch of Network Elements"}, {"name": "Batch Management v2", "description": "Manage Batch of Network Elements"}, {"name": "Configuration Details v1", "description": "Information of Configuration Management Operation"}, {"name": "Create BFD session v1", "description": "Multihop BFD session management"}, {"name": "Custom Scripts v1", "description": "Manage Custom Scripts"}, {"name": "Custom Scripts v2", "description": "Manage Custom Scripts"}, {"name": "DOC v1", "description": "Manages DOC configuration of NEs"}, {"name": "Download v1", "description": "Download Ne Backups"}, {"name": "Fallback Users v1", "description": "Manage Fallback Users"}, {"name": "Indexing", "description": "Manage ReIndexing"}, {"name": "Network Element Configuration Job Management v1", "description": "Manage network element configuration jobs"}, {"name": "Network Elements Maintenance Details Resource v1", "description": "Details of Network elements maintenance"}, {"name": "Network Elements Upgrade Details Resource v1", "description": "Network elements upgrade details"}, {"name": "Port Provisioning v1", "description": "Port Provisioning "}, {"name": "Profiles v1", "description": "Manage Configuration NE Maintenance Profiles"}, {"name": "Profiles v2", "description": "Manage Configuration NE Maintenance Profiles"}, {"name": "Schedule Management v1", "description": "Manage schedules of Network Elements"}, {"name": "Script Management v1", "description": "Manage Configuration Management Script"}, {"name": "Script Profiles v1", "description": "Manage Script Profiles"}, {"name": "Script Profiles v2", "description": "Manage Script Profiles"}, {"name": "Upgrade operation v1", "description": "Upgrade information of the NEs"}, {"name": "Upgrade operations v1", "description": "Upgrade operations V1"}], "basePath": "/", "definitions": {"Relationships": {"type": "object", "properties": {"networkConstructs": {"$ref": "#/definitions/NetworkConstructs"}, "connectionAttributes": {"$ref": "#/definitions/ConnectionAttributes"}}}, "FallbackUserResponse": {"type": "object", "properties": {"userName": {"type": "string"}, "lastOperationTime": {"type": "string"}, "lastOperationNote": {"type": "string"}, "lastOperationState": {"type": "string"}, "neType": {"type": "string"}, "password": {"type": "string"}, "neName": {"type": "string"}}}, "Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "BatchAttributes": {"type": "object", "properties": {"scheduleDetails": {"$ref": "#/definitions/ScheduleDetails"}, "nextExecutionTime": {"type": "string", "format": "date-time"}, "additionalAttributes": {"$ref": "#/definitions/AdditionalAttributes"}, "name": {"type": "string"}, "neDetails": {"items": {"$ref": "#/definitions/BatchNeDetails"}, "type": "array"}, "state": {"enum": ["IDLE", "INPROGRESS", "SCHEDULED", "ABORTED", "COMPLETED"], "type": "string"}, "configMgmtJobId": {"type": "string"}, "lastExecutionTime": {"type": "string", "format": "date-time"}, "type": {"enum": ["BACKUP", "PRE_UPGRADE", "UPGRADE", "POST_UPGRADE", "SCRIPT", "CUSTOM_SCRIPT"], "type": "string"}, "id": {"type": "string"}}}, "EditDOC": {"type": "object", "properties": {"docDetails": {"items": {"$ref": "#/definitions/DOCDetail"}, "type": "array"}, "operationType": {"enum": ["ENABLE", "DISABLE"], "type": "string"}}}, "ScriptProfileList": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/ScriptProfile"}, "type": "array"}}}, "ScriptProfileAttributes": {"type": "object", "properties": {"profileName": {"type": "string"}}}, "ManualResume": {"type": "object", "properties": {"data": {"$ref": "#/definitions/ManualResumeData"}}}, "ConfigDOCResponse": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/ConfigDOC"}, "type": "array"}}}, "NeMaintenanceDetailsList": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/MetaData"}, "data": {"items": {"$ref": "#/definitions/NeMaintenanceDetails"}, "type": "array"}, "links": {"$ref": "#/definitions/Links"}}}, "CustomScriptList": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/CustomScript"}, "type": "array"}}}, "ReleaseManagementOperationDetails": {"type": "object", "properties": {"status": {"type": "string"}, "stage": {"type": "string"}, "softwareAvailableVersions": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "softwareActiveVersion": {"type": "string"}, "schedules": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}}}, "FallbackUserListMeta": {"type": "object", "properties": {"total": {"type": "integer", "format": "int32"}}}, "IncludedAttributes": {"type": "object", "properties": {"ncId": {"type": "string"}, "neName": {"type": "string"}, "typeGroup": {"type": "string"}, "neType": {"type": "string"}, "failOnServiceAffectingAlarms": {"default": false, "type": "boolean"}, "file": {"type": "string"}, "profileName": {"type": "string"}, "ipAddress": {"type": "string"}, "manuallyInvokeCards": {"default": false, "type": "boolean"}}}, "StopUpgradeAttributes": {"type": "object", "properties": {"networkConstructName": {"type": "string"}}}, "Attributes": {"type": "object", "properties": {"scheduleTime": {"type": "string", "format": "date-time"}, "scripts": {"items": {"$ref": "#/definitions/Script"}, "type": "array"}, "maxConnections": {"type": "string"}}}, "BatchRemoveRequestData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/BatchRemoveRequestDataAttributes"}, "type": {"enum": ["batchRemovalRequests"], "type": "string"}, "id": {"type": "string"}}}, "ProfileAssociationAttributes": {"type": "object", "properties": {"jobExecuted": {"default": false, "type": "boolean"}, "associatedSchedules": {"items": {"type": "string"}, "type": "array"}}}, "NeUpgradeDetailsAttributes": {"type": "object", "properties": {"associationState": {"type": "string"}, "recentOperationState": {"type": "string"}, "recentOperationProgressStage": {"type": "string"}, "networkConstructId": {"type": "string"}, "longName": {"type": "string"}, "associationStateQualifier": {"enum": ["MANUAL", "SYSTEM", "NETWORK"], "type": "string"}, "associationStateQualifierReason": {"type": "string"}, "backupOperation": {"$ref": "#/definitions/BackupOperationDetails"}, "typeGroup": {"type": "string"}, "upgradeOperation": {"$ref": "#/definitions/UpgradeOperationDetails"}, "releaseManagementOperation": {"$ref": "#/definitions/ReleaseManagementOperationDetails"}, "syncState": {"type": "string"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "gneOrRNE": {"type": "string"}, "recentOperationTime": {"type": "string", "format": "date-time"}, "displayName": {"type": "string"}, "name": {"type": "string"}, "resourceType": {"type": "string"}, "physicalLocationId": {"type": "string"}, "managementSessionId": {"type": "string"}, "recentOperation": {"type": "string"}, "subnetName": {"type": "string"}, "ipAddress": {"type": "string"}}}, "ScheduleAttributes": {"type": "object", "properties": {"scheduleDetails": {"$ref": "#/definitions/ScheduleDetails"}, "nextExecutionTime": {"type": "string", "format": "date-time"}, "additionalAttributes": {"$ref": "#/definitions/AdditionalAttributes"}, "name": {"type": "string"}, "numberOfNEs": {"type": "integer", "format": "int32"}, "state": {"enum": ["IDLE", "INPROGRESS", "SCHEDULED", "ABORTED", "COMPLETED"], "type": "string"}, "configMgmtJobId": {"type": "string"}, "lastExecutionTime": {"type": "string", "format": "date-time"}, "type": {"enum": ["BACKUP", "PRE_UPGRADE", "UPGRADE", "POST_UPGRADE", "SCRIPT", "CUSTOM_SCRIPT"], "type": "string"}, "id": {"type": "string"}}}, "Links": {"type": "object", "properties": {"last": {"type": "string", "format": "uri"}, "self": {"type": "string", "format": "uri"}, "next": {"type": "string", "format": "uri"}, "current": {"type": "string", "format": "uri"}, "prev": {"type": "string", "format": "uri"}, "first": {"type": "string", "format": "uri"}}}, "ScriptRelationships": {"type": "object", "properties": {"profile": {"$ref": "#/definitions/ScriptRelationship"}, "userdata": {"$ref": "#/definitions/ScriptRelationship"}}}, "BatchNeStatus": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/BatchNeStatusAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "PortProvisioningDetails": {"type": "object", "properties": {"slot": {"type": "string"}, "name": {"type": "string"}, "otn": {"default": false, "type": "boolean"}, "clientType": {"type": "string"}, "scriptFileProperties": {"additionalProperties": {"type": "string"}, "type": "object"}, "shelf": {"type": "string"}, "maxFrameSize": {"type": "string"}, "customerId": {"type": "string"}, "rate": {"type": "string"}, "reSyncInventory": {"default": false, "type": "boolean"}, "port": {"type": "string"}, "description": {"type": "string"}}}, "NeBackupRestoreStatusAttributes": {"type": "object", "properties": {"associationState": {"type": "string"}, "nextBackupTime": {"type": "string"}, "lastBackupTime": {"type": "string"}, "siteName": {"type": "string"}, "backupType": {"enum": ["MANUAL", "SCHEDULED"], "type": "string"}, "typeGroup": {"type": "string"}, "batches": {"items": {"type": "string"}, "type": "array"}, "ncId": {"type": "string"}, "maintenanceState": {"type": "string"}, "lastOperationResult": {"type": "string"}, "type": {"type": "string"}, "syncState": {"type": "string"}, "lastRestoreTime": {"type": "string"}}}, "FallbackPasswordResetRequest": {"type": "object", "properties": {"neType": {"type": "string"}, "neNames": {"items": {"type": "string"}, "type": "array"}, "resetSchedule": {"$ref": "#/definitions/FallbackResetScheduleRequest"}}}, "SchemasDataBO": {"type": "object", "properties": {"type": {"type": "string"}, "id": {"type": "string"}}}, "ConfigDOC": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/ConfigDOCAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "IncludedAttributesBO": {"type": "object", "properties": {"file": {"type": "string"}}}, "ManualInvokeAttributes": {"type": "object", "properties": {"networkConstructName": {"type": "string"}, "equipments": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}}}, "FallbackPasswordPolicyRequest": {"type": "object", "properties": {"digitMinimum": {"type": "integer", "format": "int32"}, "uppercaseMinimum": {"type": "integer", "format": "int32"}, "passwordLength": {"type": "integer", "format": "int32"}, "specialMinimum": {"type": "integer", "format": "int32"}, "maximumConsecutiveCharacters": {"type": "integer", "format": "int32"}, "lowercaseMinimum": {"type": "integer", "format": "int32"}}}, "FallbackResetScheduleListResponse": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/FallbackUserListMeta"}, "data": {"items": {"$ref": "#/definitions/FallbackResetScheduleResponse"}, "type": "array"}}}, "Script": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/ScriptRelationships"}, "inputs": {"items": {"$ref": "#/definitions/Input"}, "type": "array"}, "scriptName": {"type": "string"}}}, "CustomScript": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/CustomScriptAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "PortMappingAttributes": {"type": "object", "properties": {"name": {"type": "string"}}}, "ScriptDataBO": {"type": "object", "properties": {"attributesBO": {"$ref": "#/definitions/AttributesBO"}, "type": {"type": "string"}, "relationshipsBO": {"$ref": "#/definitions/RelationshipsBO"}}}, "ConfigMgmtJobOutput": {"type": "object", "properties": {"data": {"$ref": "#/definitions/ConfigMgmtJobOutputData"}}}, "DOCDetail": {"type": "object", "properties": {"networkConstructName": {"type": "string"}, "docNames": {"items": {"type": "string"}, "type": "array"}}}, "ProductRequestParamsBO": {"type": "object", "properties": {"q": {"type": "string"}, "p": {"type": "string"}}}, "ScheduleDetails": {"type": "object", "properties": {"scheduleTime": {"type": "string", "format": "date-time"}, "scheduleFrequency": {"enum": ["ONCE", "DAILY", "WEEKLY", "MONTHLY"], "type": "string"}, "scheduleWeeklyDays": {"$ref": "#/definitions/ScheduleWeeklyDays"}}}, "FallbackPasswordResetResponse": {"type": "object", "properties": {"neType": {"type": "string"}, "neNames": {"items": {"type": "string"}, "type": "array"}, "state": {"type": "string"}, "resetSchedule": {"$ref": "#/definitions/FallbackResetScheduleResponse"}}}, "Result": {"type": "object"}, "NeBackupRestoreStatus": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/NeBackupRestoreStatusAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "NeDetail": {"type": "object", "properties": {"typeGroup": {"type": "string"}, "neType": {"type": "string"}, "neName": {"type": "string"}}}, "NeMaintenanceProfilesList": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/MetaData"}, "data": {"items": {"$ref": "#/definitions/NeMaintenanceProfile"}, "type": "array"}, "links": {"$ref": "#/definitions/Links"}}}, "UserInput": {"type": "object", "properties": {"included": {"items": {"$ref": "#/definitions/Included"}, "type": "array"}, "data": {"$ref": "#/definitions/UserInputData"}}}, "NeMaintenanceDetailsAttributes": {"type": "object", "properties": {"associationState": {"type": "string"}, "nextOperationTime": {"type": "string", "format": "date-time"}, "backupSchedules": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "recentOperationState": {"type": "string"}, "recentOperationProgressStage": {"type": "string"}, "networkConstructId": {"type": "string"}, "longName": {"type": "string"}, "associationStateQualifier": {"enum": ["MANUAL", "SYSTEM", "NETWORK"], "type": "string"}, "associationStateQualifierReason": {"type": "string"}, "nextOperation": {"type": "string"}, "typeGroup": {"type": "string"}, "customScriptSchedules": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "syncState": {"type": "string"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "recentOperationTime": {"type": "string", "format": "date-time"}, "softwareActiveVersion": {"type": "string"}, "displayName": {"type": "string"}, "name": {"type": "string"}, "resourceType": {"type": "string"}, "physicalLocationId": {"type": "string"}, "upgradeSchedules": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "managementSessionId": {"type": "string"}, "recentOperation": {"type": "string"}, "subnetName": {"type": "string"}, "ipAddress": {"type": "string"}, "softwareAvailableVersions": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}}}, "SchemasBO": {"type": "object", "properties": {"schemasDataBOList": {"items": {"$ref": "#/definitions/SchemasDataBO"}, "type": "array"}}}, "ScriptDefRequestBO": {"type": "object", "properties": {"scriptBO": {"$ref": "#/definitions/ScriptBO"}}}, "NeUpgradeDetails": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/NeUpgradeDetailsAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "BackupImageFtpProfileMapper": {"type": "object", "properties": {"profileName": {"type": "string"}, "backupImageDetails": {"items": {"$ref": "#/definitions/BackupImageDetails"}, "type": "array"}}}, "ScriptBO": {"type": "object", "properties": {"scriptDataBO": {"$ref": "#/definitions/ScriptDataBO"}, "includedBO": {"items": {"$ref": "#/definitions/IncludedDataBO"}, "type": "array"}}}, "FallbackUserDeletionResponse": {"type": "object", "properties": {"neType": {"type": "string"}, "neNames": {"items": {"type": "string"}, "type": "array"}, "state": {"type": "string"}}}, "CommandResult": {"type": "object", "properties": {"command": {"type": "string"}, "result": {"$ref": "#/definitions/Result"}}}, "UserInputData": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/Relationships"}, "attributes": {"$ref": "#/definitions/Attributes"}, "type": {"type": "string"}, "batchattributes": {"$ref": "#/definitions/BatchAttributes"}}}, "ProfileDataBO": {"type": "object", "properties": {"type": {"type": "string"}, "id": {"type": "string"}}}, "BackupImages": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/BackupImageFtpProfileMapper"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "FallbackPasswordPolicyBO": {"type": "object", "properties": {"digitMinimum": {"type": "integer", "format": "int32"}, "uppercaseMinimum": {"type": "integer", "format": "int32"}, "passwordLength": {"type": "integer", "format": "int32"}, "specialMinimum": {"type": "integer", "format": "int32"}, "maximumConsecutiveCharacters": {"type": "integer", "format": "int32"}, "lowercaseMinimum": {"type": "integer", "format": "int32"}}}, "IncludedDataBO": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/IncludedAttributesBO"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "ScheduleData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/ScheduleAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "FallbackUserDeletionRequest": {"type": "object", "properties": {"neType": {"type": "string"}, "neNames": {"items": {"type": "string"}, "type": "array"}}}, "BatchRemoveRequest": {"type": "object", "properties": {"data": {"$ref": "#/definitions/BatchRemoveRequestData"}}}, "RelationshipsBO": {"type": "object", "properties": {"schemasBO": {"$ref": "#/definitions/SchemasBO"}, "profilesBO": {"$ref": "#/definitions/ProfilesBO"}}}, "ConfigMgmtJobResponse": {"type": "object", "properties": {"status": {"type": "string"}, "input": {"$ref": "#/definitions/UserInput"}, "output": {"$ref": "#/definitions/ConfigMgmtJobOutput"}, "jobId": {"type": "string"}}}, "AttributesBO": {"type": "object", "properties": {"executionBO": {"$ref": "#/definitions/ExecutionBO"}, "supportedTypeGroups": {"items": {"type": "string"}, "type": "array"}, "name": {"type": "string"}, "supportedProfileTypes": {"items": {"type": "string"}, "type": "array"}, "description": {"type": "string"}}}, "ProfilesBO": {"type": "object", "properties": {"profileDataBOList": {"items": {"$ref": "#/definitions/ProfileDataBO"}, "type": "array"}}}, "ConfigMgmtJobOutputData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/ScriptResultAttributes"}, "type": {"type": "string"}}}, "FallbackUserCreationRequest": {"type": "object", "properties": {"neType": {"type": "string"}, "neNames": {"items": {"type": "string"}, "type": "array"}}}, "BatchNeDetails": {"type": "object", "properties": {"typeGroup": {"type": "string"}, "neType": {"type": "string"}, "neName": {"type": "string"}, "ncId": {"type": "string"}}}, "NetworkConstructs": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/NetworkConstructsData"}, "type": "array"}}}, "AdditionalAttributes": {"type": "object"}, "FallbackUserCreationResponse": {"type": "object", "properties": {"neType": {"type": "string"}, "neNames": {"items": {"type": "string"}, "type": "array"}, "state": {"type": "string"}}}, "BackupImageDetails": {"type": "object", "properties": {"backupType": {"enum": ["MANUAL", "SCHEDULED"], "type": "string"}, "neType": {"type": "string"}, "creationTime": {"type": "string"}, "fileSize": {"type": "string"}, "imageLocation": {"type": "string"}}}, "ScheduleNesPatchOperation": {"type": "object", "properties": {"scheduleId": {"type": "string"}, "neDetails": {"items": {"$ref": "#/definitions/BatchNeDetails"}, "type": "array"}, "op": {"enum": ["ADD", "REMOVE"], "type": "string"}}}, "ScriptProfile": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/ScriptProfileAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "FtpProfileResponse": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/FtpProfileAttribs"}, "type": "array"}}}, "BatchNeStatusAttributes": {"type": "object", "properties": {"associationState": {"type": "string"}, "nextExecutionTime": {"type": "string"}, "batches": {"items": {"type": "string"}, "type": "array"}, "operationType": {"type": "string"}, "siteName": {"type": "string"}, "typeGroup": {"type": "string"}, "softwareVersion": {"type": "string"}, "lastExecutionTime": {"type": "string"}, "ncId": {"type": "string"}, "triggerType": {"enum": ["MANUAL", "SCHEDULED"], "type": "string"}, "maintenanceState": {"type": "string"}, "lastOperationResult": {"type": "string"}, "type": {"type": "string"}, "syncState": {"type": "string"}, "lastRestoreTime": {"type": "string"}, "operationStage": {"type": "string"}}}, "ScriptResultAttributes": {"type": "object", "properties": {"scriptResults": {"items": {"$ref": "#/definitions/ScriptResult"}, "type": "array"}}}, "CMOperationStatus": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/CMOperationStatusAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "CMOperationStatusList": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/CMOperationStatus"}, "type": "array"}}}, "Input": {"type": "object", "properties": {"protocolType": {"enum": ["cli", "tl1"], "type": "string"}, "inputId": {"type": "string"}, "cmdFile": {"type": "string"}}}, "FallbackPasswordPolicyResponse": {"type": "object", "properties": {"data": {"$ref": "#/definitions/FallbackPasswordPolicyRequest"}}}, "FtpProfileAttribs": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/FtpProfile"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "FallbackResetScheduleResponse": {"type": "object", "properties": {"nextExecutionTime": {"type": "string"}, "neNames": {"items": {"type": "string"}, "type": "array"}, "frequency": {"type": "string"}, "id": {"type": "string"}}}, "PortMappingList": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/PortMapping"}, "type": "array"}}}, "ManualResumeData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/ManualResumeAttributes"}, "type": {"type": "string"}}}, "CreateBFDSessionRequest": {"type": "object", "properties": {"neighbour": {"type": "string"}, "source": {"type": "string"}, "bfdProfile": {"type": "string"}, "bfdSessionName": {"type": "string"}}}, "ScriptRelationship": {"type": "object", "properties": {"data": {"$ref": "#/definitions/ScriptRelationshipData"}}}, "Aggregation": {"type": "object", "properties": {"buckets": {"items": {"$ref": "#/definitions/AggregationBucket"}, "type": "array"}, "name": {"type": "string"}}}, "NeBackupImagesResponse": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/BackupImages"}, "type": "array"}}}, "ScheduleDetailsResponse": {"type": "object", "properties": {"data": {"$ref": "#/definitions/ScheduleData"}}}, "Included": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/IncludedAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "AggregationBucket": {"type": "object", "properties": {"subAggregations": {"$ref": "#/definitions/Aggregation"}, "bucketValue": {"type": "string"}, "bucketKey": {"type": "string"}}}, "FallbackUserListResponse": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/FallbackUserListMeta"}, "data": {"items": {"$ref": "#/definitions/FallbackUserResponse"}, "type": "array"}}}, "UpgradeStatusResponse": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/UpgradeStatus"}, "type": "array"}}}, "ProfileAssociationsData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/ProfileAssociationAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "ScheduleNesPatch": {"type": "object", "properties": {"operations": {"items": {"$ref": "#/definitions/ScheduleNesPatchOperation"}, "type": "array"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "NeMaintenanceDetails": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/NeMaintenanceDetailsAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "UpgradeStatus": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/UpgradeStatusAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "CustomScriptsList": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/MetaData"}, "data": {"items": {"$ref": "#/definitions/CustomScript"}, "type": "array"}, "links": {"$ref": "#/definitions/Links"}}}, "CMOperationStatusAttributes": {"type": "object", "properties": {"associationState": {"type": "string"}, "lastOperationTime": {"type": "string"}, "nextOperationTime": {"type": "string"}, "batches": {"items": {"type": "string"}, "type": "array"}, "operationStage": {"type": "string"}, "siteName": {"type": "string"}, "typeGroup": {"type": "string"}, "softwareVersion": {"type": "string"}, "ncId": {"type": "string"}, "maintenanceState": {"type": "string"}, "lastOperationResult": {"type": "string"}, "type": {"type": "string"}, "syncState": {"type": "string"}}}, "NeMaintenanceProfile": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/NeMaintenanceProfileAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "ScheduleDetailsResponseList": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/MetaData"}, "data": {"items": {"$ref": "#/definitions/ScheduleData"}, "type": "array"}, "links": {"$ref": "#/definitions/Links"}}}, "ConfigDOCAttributes": {"type": "object", "properties": {"networkConstructName": {"type": "string"}, "docName": {"type": "string"}, "networkConstructId": {"type": "string"}, "primaryState": {"type": "string"}}}, "ScriptRelationshipData": {"type": "object", "properties": {"type": {"type": "string"}, "id": {"type": "string"}}}, "FallbackResetScheduleRequest": {"type": "object", "properties": {"frequency": {"type": "string"}, "startTime": {"type": "string"}, "jobId": {"type": "string"}}}, "ScriptResult": {"type": "object", "properties": {"status": {"type": "string"}, "scriptName": {"type": "string"}, "commandResults": {"items": {"$ref": "#/definitions/CommandResult"}, "type": "array"}}}, "CustomScriptAttributes": {"type": "object", "properties": {"typeGroup": {"type": "string"}, "protocolType": {"type": "string"}, "scriptName": {"type": "string"}, "description": {"type": "string"}}}, "ProfileAssociations": {"type": "object", "properties": {"data": {"$ref": "#/definitions/ProfileAssociationsData"}}}, "ScheduleWeeklyDays": {"type": "object", "properties": {"wed": {"enum": ["ON", "OFF"], "type": "string"}, "sun": {"enum": ["ON", "OFF"], "type": "string"}, "fri": {"enum": ["ON", "OFF"], "type": "string"}, "tue": {"enum": ["ON", "OFF"], "type": "string"}, "mon": {"enum": ["ON", "OFF"], "type": "string"}, "thu": {"enum": ["ON", "OFF"], "type": "string"}, "sat": {"enum": ["ON", "OFF"], "type": "string"}}}, "UpgradeStatusAttributes": {"type": "object", "properties": {"networkConstructName": {"type": "string"}, "shelf": {"type": "string"}, "stage": {"type": "string"}, "result": {"type": "string"}, "equipment": {"type": "string"}}}, "BackupOperationDetails": {"type": "object", "properties": {"status": {"type": "string"}, "operationTime": {"type": "string", "format": "date-time"}}}, "ExecutionBO": {"type": "object", "properties": {"type": {"type": "string"}, "productRequestParams": {"$ref": "#/definitions/ProductRequestParamsBO"}, "raCommand": {"type": "string"}}}, "ScriptDefResponseBO": {"type": "object", "properties": {"creationTime": {"type": "string", "format": "date-time"}, "request": {"$ref": "#/definitions/ScriptDefRequestBO"}}}, "BatchNeStatusList": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/BatchNeStatus"}, "type": "array"}}}, "NeBackupRestoreStatusList": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/NeBackupRestoreStatus"}, "type": "array"}}}, "MetaData": {"type": "object", "properties": {"total": {"type": "integer", "format": "int64"}, "aggregations": {"items": {"$ref": "#/definitions/Aggregation"}, "type": "array"}}}, "UpgradeOperationDetails": {"type": "object", "properties": {"status": {"type": "string"}, "mcpManaged": {"default": false, "type": "boolean"}, "sequenceOrder": {"type": "integer", "format": "int32"}, "pendingQueue": {"type": "integer", "format": "int32"}, "manualInvoke": {"default": false, "type": "boolean"}, "schedules": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "haltOnUpgradeFailure": {"default": false, "type": "boolean"}, "stage": {"type": "string"}}}, "BatchStatus": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/BatchAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "ConnectionAttributes": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/ConnectionAttributesData"}, "type": "array"}}}, "BatchStatusList": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/BatchStatus"}, "type": "array"}}}, "NeUpgradeDetailsList": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/MetaData"}, "data": {"items": {"$ref": "#/definitions/NeUpgradeDetails"}, "type": "array"}, "links": {"$ref": "#/definitions/Links"}}}, "FtpProfile": {"type": "object", "properties": {"userName": {"type": "string"}, "name": {"type": "string"}, "protocolType": {"enum": ["sftp", "ftp", "https"], "type": "string"}, "userPassword": {"type": "string"}, "storageMethod": {"enum": ["filesystem", "database"], "type": "string"}, "profileType": {"enum": ["backup_restore", "upgrade"], "type": "string"}, "imageLocation": {"type": "string"}, "ipAddress": {"type": "string"}, "port": {"type": "integer", "format": "int32"}}}, "PortMapping": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/PortMappingAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "NetworkConstructsData": {"type": "object", "properties": {"type": {"type": "string"}, "id": {"type": "string"}}}, "ConnectionAttributesData": {"type": "object", "properties": {"type": {"type": "string"}, "id": {"type": "string"}}}, "ManualResumeAttributes": {"type": "object", "properties": {"neDetails": {"items": {"$ref": "#/definitions/NeDetail"}, "type": "array"}}}, "BatchRemoveRequestDataAttributes": {"type": "object", "properties": {"batchIds": {"items": {"type": "string"}, "type": "array"}}}, "NeMaintenanceProfileAttributes": {"type": "object", "properties": {"userName": {"type": "string"}, "name": {"type": "string"}, "protocolType": {"enum": ["sftp", "ftp", "https"], "type": "string"}, "userPassword": {"type": "string"}, "storageMethod": {"enum": ["filesystem", "database"], "type": "string"}, "profileType": {"enum": ["backup_restore", "upgrade"], "type": "string"}, "imageLocation": {"type": "string"}, "ipAddress": {"type": "string"}, "port": {"type": "integer", "format": "int32"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_network_element_connection_profiles.json b/tapi/resources/MCP_4.0.0_network_element_connection_profiles.json
deleted file mode 100644
index a16d2a7623074fdcf2c44f9ccde41f496527789a..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_network_element_connection_profiles.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Provision connection parameters required for communicating securely with network elements", "title": "Network element connection profiles"}, "paths": {"/discovery/api/neprofiles/{id}": {"put": {"responses": {"200": {"description": "NE Connection Profile has been updated", "schema": {"$ref": "#/definitions/NEConnectionProfileV3RO"}}, "404": {"description": "No NE Connection Profile found for given Id"}, "500": {"description": "NE Connection Profile update failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Unable to process NE Connection Profile content"}}, "description": "Update a specific NE Connection Profile.", "parameters": [{"description": "Unique identifier of the NE Connection Profile to update", "pattern": ".+", "required": true, "in": "path", "type": "string", "name": "id"}, {"schema": {"$ref": "#/definitions/NEConnectionProfileV3RO"}, "description": "NE Connection Profile data as a JSON object.  Existing profile will be replaced by the new contents.", "required": false, "name": "body", "in": "body"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["neprofiles"], "summary": "Update the NE Connection Profile with the specified id.", "consumes": ["application/json"], "operationId": "updateNEConnectionProfile"}, "delete": {"responses": {"204": {"description": "NE Connection Profile was deleted"}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Unable to process NE Connection Profile request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Delete a specific NE Connection Profile.", "parameters": [{"description": "Unique identifier of the NE Connection Profile to delete", "pattern": ".+", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["neprofiles"], "summary": "Delete the NE Connection Profile with the specified id", "operationId": "deleteNEConnectionProfile"}, "get": {"responses": {"200": {"description": "Retrieval of NE Connection Profile complete", "schema": {"$ref": "#/definitions/NEConnectionProfileV3RO"}}, "404": {"description": "No NE Connection Profile found for given Id", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Unable to process NE Connection Profile request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Return a specific NE Connection Profile.", "parameters": [{"description": "Unique identifier of the NE Connection Profile to fetch", "pattern": ".+", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["neprofiles"], "summary": "Get the NE Connection Profile with the specified id", "operationId": "getNEConnectionProfile"}}, "/discovery/api/v1/neprofiles/{id}": {"put": {"responses": {"200": {"description": "NE Connection Profile has been updated", "schema": {"$ref": "#/definitions/NEConnectionProfileV3RO"}}, "404": {"description": "No NE Connection Profile found for given Id"}, "500": {"description": "NE Connection Profile update failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Unable to process NE Connection Profile content"}}, "description": "Update a specific NE Connection Profile.", "parameters": [{"description": "Unique identifier of the NE Connection Profile to update", "pattern": ".+", "required": true, "in": "path", "type": "string", "name": "id"}, {"schema": {"$ref": "#/definitions/NEConnectionProfileV3RO"}, "description": "NE Connection Profile data as a JSON object.  Existing profile will be replaced by the new contents.", "required": false, "name": "body", "in": "body"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["neprofiles v1"], "summary": "Update the NE Connection Profile with the specified id.", "consumes": ["application/json"], "operationId": "updateNEConnectionProfile"}, "delete": {"responses": {"204": {"description": "NE Connection Profile was deleted"}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Unable to process NE Connection Profile request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Delete a specific NE Connection Profile.", "parameters": [{"description": "Unique identifier of the NE Connection Profile to delete", "pattern": ".+", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["neprofiles v1"], "summary": "Delete the NE Connection Profile with the specified id", "operationId": "deleteNEConnectionProfile"}, "get": {"responses": {"200": {"description": "Retrieval of NE Connection Profile complete", "schema": {"$ref": "#/definitions/NEConnectionProfileV3RO"}}, "404": {"description": "No NE Connection Profile found for given Id", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Unable to process NE Connection Profile request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Return a specific NE Connection Profile.", "parameters": [{"description": "Unique identifier of the NE Connection Profile to fetch", "pattern": ".+", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["neprofiles v1"], "summary": "Get the NE Connection Profile with the specified id", "operationId": "getNEConnectionProfile"}}, "/discovery/api/v1/neprofiles": {"post": {"responses": {"201": {"description": "NE Connection Profile is created", "schema": {"$ref": "#/definitions/NEConnectionProfileV3RO"}}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Unable to process NE Connection Profile content"}}, "description": "Create the specified NE Connection Profile. On success, status 201 is returned with the full resource, including the resource identifier.", "parameters": [{"schema": {"$ref": "#/definitions/NEConnectionProfileV3RO"}, "description": "NE Connection Profile to be created with the specified contents", "required": false, "name": "body", "in": "body"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["neprofiles v1"], "summary": "Create a NE Connection Profile", "consumes": ["application/json"], "operationId": "createNEConnectionProfile"}, "get": {"responses": {"200": {"description": "Retrieval of NE Connection Profiles complete", "schema": {"$ref": "#/definitions/NEConnectionProfileListV3RO"}}, "204": {"description": "No data found.", "schema": {"$ref": "#/definitions/Response"}}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Return all NE Connection Profiles for the type group.", "parameters": [{"description": "(Optional) Device Type Group", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "(Optional) Protocol", "required": false, "type": "string", "name": "protocol", "in": "query"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["neprofiles v1"], "summary": "Get all NE Connection Profiles for a type group", "operationId": "getNEConnectionProfiles"}}, "/discovery/api/neprofiles": {"post": {"responses": {"201": {"description": "NE Connection Profile is created", "schema": {"$ref": "#/definitions/NEConnectionProfileV3RO"}}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Unable to process NE Connection Profile content"}}, "description": "Create the specified NE Connection Profile. On success, status 201 is returned with the full resource, including the resource identifier.", "parameters": [{"schema": {"$ref": "#/definitions/NEConnectionProfileV3RO"}, "description": "NE Connection Profile to be created with the specified contents", "required": false, "name": "body", "in": "body"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["neprofiles"], "summary": "Create a NE Connection Profile", "consumes": ["application/json"], "operationId": "createNEConnectionProfile"}, "get": {"responses": {"200": {"description": "Retrieval of NE Connection Profiles complete", "schema": {"$ref": "#/definitions/NEConnectionProfileListV3RO"}}, "204": {"description": "No data found.", "schema": {"$ref": "#/definitions/Response"}}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Return all NE Connection Profiles for the type group.", "parameters": [{"description": "(Optional) Device Type Group", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "(Optional) Protocol", "required": false, "type": "string", "name": "protocol", "in": "query"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["neprofiles"], "summary": "Get all NE Connection Profiles for a type group", "operationId": "getNEConnectionProfiles"}}}, "schemes": ["http", "https"], "tags": [{"name": "neprofiles", "description": "Provision connection parameters for network elements (management sessions)<p>This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "neprofiles v1", "description": "Provision connection parameters for network elements (management sessions)"}], "definitions": {"Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "NEConnectionProfileV3RO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/NEConnectionProfileDataV3RO"}}}, "NEConnectionProfileAttributesV3RO": {"type": "object", "properties": {"name": {"type": "string", "description": "Name of the NE Connection Profile"}, "protocolEndpoints": {"description": "A two-level Map<String, AdditionalAttribute>", "$ref": "#/definitions/ProtocolEndpointsRO"}, "isEnabled": {"default": false, "type": "boolean", "description": "Indicates if this NE Connection Profile is enabled"}, "typeGroup": {"type": "string", "description": "The NE Type Group which supports this profile"}, "profileDescription": {"type": "string", "description": "A short description of the NE Connection Profile"}, "isDefault": {"default": false, "type": "boolean", "description": "Indicates if this is a default NE Connection Profile"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "ProtocolEndpointsRO": {"type": "object"}, "Response": {"type": "object", "properties": {"status": {"type": "integer", "format": "int32"}, "entity": {"type": "object"}, "metadata": {"additionalProperties": {"items": {"type": "object"}, "type": "array"}, "type": "object"}}}, "NEConnectionProfileDataV3RO": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/NEConnectionProfileAttributesV3RO"}, "type": {"enum": ["neConnectionProfile"], "type": "string", "description": "The NE Connection Profile resource type"}, "id": {"type": "string", "description": "The unique identifier for the NE Connection Profile resource"}}}, "LinksRO": {"type": "object", "properties": {"next": {"type": "string", "description": "The next page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "last": {"type": "string", "description": "The last page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "NEConnectionProfileListV3RO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/NEConnectionProfileDataV3RO"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_network_element_enrollment_(management_sessions).json b/tapi/resources/MCP_4.0.0_network_element_enrollment_(management_sessions).json
deleted file mode 100644
index f9a6d26a5e4a786460fab10d574453c404eeb7a8..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_network_element_enrollment_(management_sessions).json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "4.0", "description": "Enroll, resync, de-enroll and discover network elements, also known as management sessions", "title": "Network element enrollment (management sessions)"}, "paths": {"/discovery/api/v3/managementSessions": {"post": {"responses": {"201": {"description": "Successfully created the management session object", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "422": {"description": "No request body was provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon success, code 201 is returned.<p>ProfileId can be obtained from creating a profile through discovery/api/v1/neprofiles.<p>The default discoveryState is PENDING, which is a pre-enrollment state used to prepare and stage the enrollment process.<p>To trigger an immediate enrollment you can provide an initial discoverySate of CONNECTING. This starts the enrollment process as the management session object is created. Optionally you can assign one or multiple partitions to the management session.<p>Example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\" : {\n        \"type\": \"managementSessions\",\n        \"attributes\": {\n            \"ipAddress\": \"1.1.1.1\",\n            \"discoveryState\": \"CONNECTING\",\n            \"profile\": \"profileId\",\n            \"resourcePartitionInfo\": [\"Partition1\"]\n        }\n    }\n}\n</code></pre>", "parameters": [{"schema": {"$ref": "#/definitions/ManagementSessionRO"}, "description": "managementSession to create", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["managementSessions v3"], "summary": "Creates a new management Session and optionally triggers the enrollment", "consumes": ["application/json"], "operationId": "postManagementSession"}, "get": {"responses": {"200": {"description": "List of management sessions filtered by any provided parameters", "schema": {"$ref": "#/definitions/ManagementSessionListRO"}}, "500": {"description": "Retrieval of management sessions failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request, usually caused by invalid values provided for a parameter", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Retrieves a list of management sessions which represent the connections to the network elements", "parameters": [{"description": "(Optional) List of comma separated discoveryStates. <p> Valid values are: <table><tr><td>PENDING</td><td> - prior to enrollment</td></tr><tr><td>AUTO_DISCOVERED</td><td> - prior to enrollment and added by the enrollment of another network element</td></tr><tr><td>VALIDATING</td><td> - attempting to communicate with the network element</td></tr><tr><td>VALIDATING_FAILED</td><td> - communication with the network element failed</td></tr><tr><td>CONNECTING</td><td> - creating a session to the network element</td></tr><tr><td>POKING</td><td> - checking available accesses to the network element</td></tr><tr><td>CONNECTED</td><td> - session established with network element</td></tr><tr><td>DISCOVERING</td><td> - retrieving session data from network element</td></tr><tr><td>COMPLETED</td><td> - management session is fully operational and connected to the network element</td></tr><tr><td>DISCOVERY_RETRY</td><td> - failed to retrieve session data from the network element</td></tr><tr><td>CHANGE_SESSION</td><td> - attempting to changing the active session to the network element</td></tr><tr><td>DEENROLLING</td><td> - disconnecting from the network element and removing the management session</td></tr></table>", "required": false, "type": "string", "name": "states", "in": "query"}, {"description": "(Optional) List of comma separated name values", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) Ip Address of management sessions", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "(Optional) Key that holds the alias name", "required": false, "type": "string", "name": "aliasName", "in": "query"}, {"description": "(Optional) List of alias name values", "required": false, "type": "string", "name": "aliasValue", "in": "query"}, {"description": "(Optional) Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "(Optional) The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "deprecated": true, "tags": ["managementSessions v3"], "summary": "Get a list of  management sessions", "operationId": "getManagementSessions"}}, "/discovery/api/managementSessions": {"post": {"responses": {"201": {"description": "ManagementSession object is created.", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "404": {"description": "Resource Not Found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "422": {"description": "No request body was provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>Upon success, code 201 is returned.<p>ProfileId can be obtained from creating a profile through discovery/api/v1/neprofiles.<p>The default discoveryState is PENDING, which is a pre-enrollment state used to prepare and stage the enrollment process.<p>To trigger an immediate enrollment you can provide an initial discoverySate of CONNECTING. This starts the enrollment process as the management session object is created. Optionally you can assign one or multiple partitions to the management session.<p>Example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\" : {\n        \"type\": \"managementSessions\",\n        \"attributes\": {\n            \"ipAddress\": \"1.1.1.1\",\n            \"discoveryState\": \"CONNECTING\",\n            \"profile\": \"profileId\"\n            \"resourcePartitionInfo\": [\"Partition1\"]\n        }\n    }\n}\n</code></pre>", "parameters": [{"schema": {"$ref": "#/definitions/ManagementSessionRO"}, "description": "managementSession to create", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["managementSessions"], "summary": "Creates a new management Session and optionally triggers the enrollment", "consumes": ["application/json"], "operationId": "postManagementSession"}, "get": {"responses": {"200": {"description": "List of management sessions filtered by any provided parameters", "schema": {"$ref": "#/definitions/ManagementSessionListRO"}}, "500": {"description": "Retrieval of management sessions failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request, usually caused by invalid values provided for a parameter", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Retrieves a list of management sessions which represent the connections to the network elements<p>LATEST VERSION: V4", "parameters": [{"description": "(Optional) List of comma separated discoveryStates. <p> Valid values are: <table><tr><td>PENDING</td><td> - prior to enrollment</td></tr><tr><td>AUTO_DISCOVERED</td><td> - prior to enrollment and added by the enrollment of another network element</td></tr><tr><td>VALIDATING</td><td> - attempting to communicate with the network element</td></tr><tr><td>VALIDATING_FAILED</td><td> - communication with the network element failed</td></tr><tr><td>CONNECTING</td><td> - creating a session to the network element</td></tr><tr><td>POKING</td><td> - checking available accesses to the network element</td></tr><tr><td>CONNECTED</td><td> - session established with network element</td></tr><tr><td>DISCOVERING</td><td> - retrieving session data from network element</td></tr><tr><td>COMPLETED</td><td> - management session is fully operational and connected to the network element</td></tr><tr><td>DISCOVERY_RETRY</td><td> - failed to retrieve session data from the network element</td></tr><tr><td>CHANGE_SESSION</td><td> - attempting to changing the active session to the network element</td></tr><tr><td>DEENROLLING</td><td> - disconnecting from the network element and removing the management session</td></tr></table>", "required": false, "type": "string", "name": "states", "in": "query"}, {"description": "(Optional) List of comma separated name values", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) List of comma separated longName values", "required": false, "type": "string", "name": "longName", "in": "query"}, {"description": "(Optional) List of comma separated profileName values", "required": false, "type": "string", "name": "profileName", "in": "query"}, {"description": "(Optional) Ip Address of management sessions", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "(Optional) Key that holds the alias name", "required": false, "type": "string", "name": "aliasName", "in": "query"}, {"description": "(Optional) List of alias name values", "required": false, "type": "string", "name": "aliasValue", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "(Optional) The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of the management session typeGroup", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "(Optional) List of the management session resourceType", "required": false, "type": "string", "name": "resourceType", "in": "query"}, {"description": "(Optional) List of the management session associationState. The valid values are: GOA, LOA", "required": false, "type": "string", "name": "associationState", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) List of meta data to be included. The allowed values are: resourceType, associationState, discoveryState, displayState, typeGroup, profileName, resourcePartitionInfo", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of comma separated display states. The allowed values are: PENDING, CONNECTING, NOT_CONNECTED, CONNECTED, FAILED", "required": false, "type": "string", "name": "displayState", "in": "query"}, {"description": "(Optional) List of device displayName values", "required": false, "type": "string", "name": "displayName", "in": "query"}, {"description": "(Optional) List of NE security connection profile identifiers", "required": false, "type": "string", "name": "profileId", "in": "query"}, {"description": "(Optional) List of associationStateQualifiers. The allowed values are MANUAL, NETWORK, SYSTEM", "required": false, "type": "string", "name": "associationStateQualifier", "in": "query"}, {"description": "(Optional) Reason for putting a Management Session to 'inMaintenance'.", "required": false, "type": "string", "name": "associationStateQualifierReason", "in": "query"}, {"description": "(Optional) List of comma separated resource partitions, 'none' to search unpartitioned resource if user has sufficient privilege", "required": false, "type": "string", "name": "resourcePartitionInfo", "in": "query"}], "produces": ["application/json"], "tags": ["managementSessions"], "summary": "Get a list of  management sessions", "operationId": "getNetworkConstructs"}}, "/discovery/api/v3/managementSessions/{sessionId}": {"delete": {"responses": {"200": {"description": "De-enrollment or deletion request was successful triggered", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "403": {"description": "Deenrollment of auto-discovered management session is not allowed, or insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Management session has already been deleted"}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "identifier of Management Session to be deleted", "required": true, "type": "string", "name": "sessionId", "in": "path"}], "produces": ["application/json"], "tags": ["managementSessions v3"], "summary": "Triggers the de-enrollment of a network element or deletes a pending enrollment", "operationId": "deleteManagementSession"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "404": {"description": "Unable to retrieve management session by the specified id", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "The 'id' of management session to be retrieved", "required": true, "type": "string", "name": "sessionId", "in": "path"}], "produces": ["application/json"], "tags": ["managementSessions v3"], "summary": "Retrieves a management session by its corresponding id", "operationId": "getManagementSessionBySessionId"}}, "/discovery/api/v4/managementSessions": {"get": {"responses": {"200": {"description": "List of management sessions filtered by any provided parameters", "schema": {"$ref": "#/definitions/ManagementSessionListRO"}}, "500": {"description": "Retrieval of management sessions failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request, usually caused by invalid values provided for a parameter", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Retrieves a list of management sessions which represent the connections to the network elements", "parameters": [{"description": "(Optional) List of comma separated discoveryStates. <p> Valid values are: <table><tr><td>PENDING</td><td> - prior to enrollment</td></tr><tr><td>AUTO_DISCOVERED</td><td> - prior to enrollment and added by the enrollment of another network element</td></tr><tr><td>VALIDATING</td><td> - attempting to communicate with the network element</td></tr><tr><td>VALIDATING_FAILED</td><td> - communication with the network element failed</td></tr><tr><td>CONNECTING</td><td> - creating a session to the network element</td></tr><tr><td>POKING</td><td> - checking available accesses to the network element</td></tr><tr><td>CONNECTED</td><td> - session established with network element</td></tr><tr><td>DISCOVERING</td><td> - retrieving session data from network element</td></tr><tr><td>COMPLETED</td><td> - management session is fully operational and connected to the network element</td></tr><tr><td>DISCOVERY_RETRY</td><td> - failed to retrieve session data from the network element</td></tr><tr><td>CHANGE_SESSION</td><td> - attempting to changing the active session to the network element</td></tr><tr><td>DEENROLLING</td><td> - disconnecting from the network element and removing the management session</td></tr><tr><td>POKING</td><td> - obtaining information from NE's other connection addresses for reachability</td></tr></table>", "required": false, "type": "string", "name": "states", "in": "query"}, {"description": "(Optional) List of comma separated name values", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) List of comma separated longName values", "required": false, "type": "string", "name": "longName", "in": "query"}, {"description": "(Optional) List of comma separated profileName values", "required": false, "type": "string", "name": "profileName", "in": "query"}, {"description": "(Optional) Ip Address of management sessions", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "(Optional) Key that holds the alias name", "required": false, "type": "string", "name": "aliasName", "in": "query"}, {"description": "(Optional) List of alias name values", "required": false, "type": "string", "name": "aliasValue", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "(Optional) The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of the management session typeGroup", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "(Optional) List of the management session resourceType", "required": false, "type": "string", "name": "resourceType", "in": "query"}, {"description": "(Optional) List of the management session associationState. The valid values are: GOA, LOA", "required": false, "type": "string", "name": "associationState", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) List of meta data to be included. The allowed values are: resourceType, associationState, discoveryState, displayState, typeGroup, profileName, resourcePartitionInfo", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of comma separated display states. The allowed values are: PENDING, CONNECTING, NOT_CONNECTED, CONNECTED, FAILED", "required": false, "type": "string", "name": "displayState", "in": "query"}, {"description": "(Optional) List of device displayName values", "required": false, "type": "string", "name": "displayName", "in": "query"}, {"description": "(Optional) List of NE security connection profile identifiers", "required": false, "type": "string", "name": "profileId", "in": "query"}, {"description": "(Optional) List of associationStateQualifiers. The allowed values are MANUAL, NETWORK, SYSTEM", "required": false, "type": "string", "name": "associationStateQualifier", "in": "query"}, {"description": "(Optional) Reason for putting a Management Session to 'inMaintenance'.", "required": false, "type": "string", "name": "associationStateQualifierReason", "in": "query"}, {"description": "(Optional) List of comma separated resource partitions, 'none' to search unpartitioned resource if user has sufficient privilege", "required": false, "type": "string", "name": "resourcePartitionInfo", "in": "query"}], "produces": ["application/json"], "tags": ["managementSessions v4"], "summary": "Get a list of  management sessions", "operationId": "getManagementSessions"}}, "/discovery/api/v3/managementSessions/{sessionId}/discoveryState": {"put": {"responses": {"404": {"description": "Resource Not Found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "202": {"description": "Request has been successfully accepted and triggered.", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "422": {"description": "No request body was provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "The id of management session to be retrieved", "required": true, "type": "string", "name": "sessionId", "in": "path"}, {"schema": {"type": "string"}, "description": "A string value of the discoveryState.  Valid values are:<table><tr><td>CONNECTING</td><td> - this will trigger the enrollment process, if the management has not been enrolled yet</td></tr><tr><td>DISCOVERING</td><td> - triggers the resynchronization/discovery of the management session</td></tr></table>Note: Surround values with quotes within parameter body", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["managementSessions v3"], "summary": "Trigger the enrollment or resynchronization of a management session", "consumes": ["application/json"], "operationId": "putEnroll"}}, "/discovery/api/v3/managementSessions/{sessionId}/neProfile": {"put": {"responses": {"404": {"description": "Resource Not Found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "202": {"description": "Request has been successfully accepted and triggered.", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "422": {"description": "No request body was provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "The id of management session to be updated", "required": true, "type": "string", "name": "sessionId", "in": "path"}, {"schema": {"type": "string"}, "description": "A string value of the NeProfile", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["managementSessions v3"], "summary": "Update the NE connection profile id of the pending management session", "consumes": ["application/json"], "operationId": "putEnrollNeProfile"}}, "/discovery/api/v4/managementSessions/{sessionId}": {"patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>Upon request accepted, code 202 is returned and the output consists of JSON objects representing current management session resource.<p>If NE state is Pending, then the supported operations are: replace (for updating IP address and/or ne-profile and/or partition), enroll (to enroll NE), and replace + enroll (to update and enroll the NE).<p>If NE state is Connected/Failed, then the supported operations are: replace (to update or re-apply ne-profile, or to update partition), replace + reconnect (to replace IP address and reconnect), reconnect, and resync (to resynchronize the NE).<p>\"reconnect\" operation force reconnect NE at enrollment IP address.<p>A MCP user can force reconnect an enrolled GNE or RNE. When a GNE is force reconnected, its associated RNE is reconnected automatically. A pre-enrolled or auto discovered GNE is not able to be force reconnected.<p>If NE state is Auto_discovered, the supported operations are replace and replace + enroll.<p>Example request to change enrollment IP:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n                \"ipAddress\" : \"10.1.1.1\",\n                \"profile\" : \"300-200-100\" (optional)\n            }\n        },\n        {\n            \"op\" : \"reconnect\"\n        }\n    ]\n}\n</code></pre><p>Example request to change ne-profile:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n                \"profile\" : \"300-200-100\"\n            }\n        }\n    ]\n}\n</code></pre><p>Example request to change partition:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n                \"resourcePartitionInfo\" : \"Partition2\"\n            }\n        }\n    ]\n}\n</code></pre><p>Example request to resync:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"resync\"\n        }\n    ]\n}\n</code></pre><p>Example request to put NE in Maintenance:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"inMaintenance\"\n        }\n    ]\n}\n</code></pre><p>Example request to put NE out of Maintenance:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"outMaintenance\"\n        }\n    ]\n}\n</code></pre><p>Example request to enroll a pre-enrolled NE:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"enroll\"\n        }\n    ]\n}\n</code></pre><p>Example request to reconnect a NE:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"reconnect\"\n        }\n    ]\n}\n</code></pre><p>Example request to provide a reason when putting an NE under maintenance:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"inMaintenance\"\n            \"reason\" : \"example_reason\"\n        }\n    ]\n}\n</code></pre><p>Example request to provide a reason when putting an NE under maintenance:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"inMaintenance\"\n            \"attributes\" : {\n                \"associationStateQualifierReason\" : \"example_reason\"\n            }\n        }\n    ]\n}\n</code></pre>", "parameters": [{"description": "The id of management session to be updated", "required": true, "type": "string", "name": "sessionId", "in": "path"}, {"schema": {"$ref": "#/definitions/ManagementSessionPatchRO"}, "description": "A patch request to the given management session.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json-patch+json"], "tags": ["managementSessions v4"], "summary": "perform operations of update, connect or resync on a management session resource", "operationId": "patchOperation"}}, "/discovery/api/managementSessions/{sessionId}": {"patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4<p>Upon request accepted, code 202 is returned and the output consists of JSON objects representing current management session resource.<p>If NE state is Pending, then the supported operations are: replace (for updating IP address and/or ne-profile and/or partition), enroll (to enroll NE), and replace + enroll (to update and enroll the NE).<p>If NE state is Connected/Failed, then the supported operations are: replace (to update or re-apply ne-profile, or to update partition), replace + reconnect (to replace IP address and reconnect), reconnect, and resync (to resynchronize the NE).<p>\"reconnect\" operation force reconnect NE at enrollment IP address.<p>A MCP user can force reconnect an enrolled GNE or RNE. When a GNE is force reconnected, its associated RNE is reconnected automatically. A pre-enrlled or auto discovered GNE is not able to be force reconnected.<p>If NE state is Auto_discovered, the supported operations are replace and replace + enroll.<p>Example request to change enrollment IP:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n                \"ipAddress\" : \"10.1.1.1\",\n                \"profile\" : \"300-200-100\" (optional)\n            }\n        },\n        {\n            \"op\" : \"reconnect\"\n        }\n    ]\n}\n</code></pre><p>Example request to change ne-profile:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n                \"profile\" : \"300-200-100\"\n            }\n        }\n    ]\n}\n</code></pre><p>Example request to change partition:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n                \"resourcePartitionInfo\" : \"Partition2\"\n            }\n        }\n    ]\n}\n</code></pre><p>Example request to resync:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"resync\"\n        }\n    ]\n}\n</code></pre><p>Example request to put NE in Maintenance:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"inMaintenance\"\n        }\n    ]\n}\n</code></pre><p>Example request to put NE out of Maintenance:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"outMaintenance\"\n        }\n    ]\n}\n</code></pre><p>Example request to enroll a pre-enrolled NE:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"enroll\"\n        }\n    ]\n}\n</code></pre><p>Example request to reconnect a NE:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"reconnect\"\n        }\n    ]\n}\n</code></pre><p>Example request to provide a reason when putting an NE under maintenance:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"inMaintenance\"\n            \"reason\" : \"example_reason\"\n        }\n    ]\n}\n</code></pre><p>Example request to provide a reason when putting an NE under maintenance:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"inMaintenance\"\n            \"attributes\" : {\n                \"associationStateQualifierReason\" : \"example_reason\"\n            }\n        }\n    ]\n}\n</code></pre>", "parameters": [{"description": "The id of management session to be updated", "required": true, "type": "string", "name": "sessionId", "in": "path"}, {"schema": {"$ref": "#/definitions/ManagementSessionPatchRO"}, "description": "A patch request to the given management session.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json-patch+json"], "tags": ["managementSessions"], "summary": "perform operations of update, connect or resync on a management session resource", "operationId": "patchOperation"}, "delete": {"responses": {"200": {"description": "De-enrollment or deletion request was successful triggered", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "403": {"description": "Deenrollment of auto-discovered management session is not allowed, or insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Management session has already been deleted"}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "The 'id' of the management session to be deleted or de-enrolled", "required": true, "type": "string", "name": "sessionId", "in": "path"}], "produces": ["application/json"], "tags": ["managementSessions"], "summary": "Triggers the de-enrollment of a network element or deletes a pending enrollment", "operationId": "deleteManagementSession"}, "get": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "404": {"description": "Unable to retrieve  management session by the specified id", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "The 'id' of management session to be retrieved", "required": true, "type": "string", "name": "sessionId", "in": "path"}], "produces": ["application/json"], "tags": ["managementSessions"], "summary": "Retrieves a management session by its corresponding id", "operationId": "getManagementSessionById"}}, "/discovery/api/v3/managementSessions/{sessionId}/ipAddress": {"put": {"responses": {"404": {"description": "Resource Not Found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "202": {"description": "Request has been successfully accepted and triggered.", "schema": {"$ref": "#/definitions/ManagementSessionRO"}}, "422": {"description": "No request body was provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "The id of management session to be updated", "required": true, "type": "string", "name": "sessionId", "in": "path"}, {"schema": {"type": "string"}, "description": "A string value of the IpAddress", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["managementSessions v3"], "summary": "Update the IP address of the pending management session", "consumes": ["application/json"], "operationId": "putEnrollIP"}}}, "schemes": ["http", "https"], "tags": [{"name": "managementSessions", "description": "Enroll, resync, de-enroll and retrieve the management sessions that represent the connections to the network elements<p>This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "managementSessions v3", "description": "Enroll, resync, de-enroll and retrieve the management sessions that represent the connections to the network elements"}, {"name": "managementSessions v4", "description": "Enroll, resync, de-enroll and retrieve the management sessions that represent the connections to the network elements"}], "definitions": {"MetaDataRO": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of entities in the data", "format": "int64"}, "aggregations": {"items": {"$ref": "#/definitions/AggregationRO"}, "type": "array", "description": "The aggregated data based on a requested aggregation name and criteria"}}}, "ManagementSessionAttributesRO": {"type": "object", "properties": {"associationState": {"enum": ["GOA", "LOA"], "type": "string", "description": "Association state of the management session."}, "alternateConnectionAddresses": {"items": {"$ref": "#/definitions/ManagementSessionConnectionAttributesRO"}, "type": "array", "description": "alternate access IPs addresses to the NE."}, "pokeInterval": {"type": "integer", "description": "The delay between pokes.", "format": "int64"}, "onPreferredGNE": {"default": false, "type": "boolean", "description": "indicate that the NE is connected through the preferred connection."}, "connectionAddress": {"type": "string", "description": "active connection address to the NE."}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "Resource partitioning info."}, "displayData": {"$ref": "#/definitions/ManagementSessionDisplayDataRO"}, "longName": {"type": "string", "description": "Extended name of the Network Construct"}, "associationStateQualifier": {"enum": ["MANUAL", "SYSTEM", "NETWORK"], "type": "string", "description": "How the associationState has been set."}, "associationStateQualifierReason": {"type": "string", "description": "Reason for going into maintenance mode."}, "lastResyncTime": {"type": "string", "description": "Date when the management session is resync last time."}, "typeGroup": {"type": "string", "description": "Resource adapter type group."}, "discoveryState": {"enum": ["PENDING", "AUTO_DISCOVERED", "VALIDATING", "VALIDATING_FAILED", "CONNECTING", "CONNECTED", "DISCOVERING", "COMPLETED", "DISCOVERY_RETRY", "CHANGE_SESSION", "RECONNECT", "CONFLICT_NAME", "DEENROLLING", "DISCONNECTED", "FAILED_CONNECT", "POKING"], "type": "string", "description": "Discovery state of the management session.\n PENDING is the state of staging.\n AUTO_DISCOVERED is the state of being auto discovered but not connected.\n VALIDATING is the state setting up a session;\n VALIDATING_FAILED, failed to setup a session;\n CONNECTING, connecting a session to NE;\n CONNECTED, session connected.\n DISCOVERING, in progress of shallow discovery;\n COMPLETED, shallow discovery completed.\n DISCOVERY_RETRY, shallow discovery failed.\n CHANGE_SESSION, in progress of change active session.\n DERENROLLING, in progress of deenrolling NE."}, "managementAddresses": {"items": {"type": "string"}, "type": "array", "description": "public IPs addresses of the NE's shelves. The management session connects to the NE at one of the management addresses."}, "profile": {"type": "string", "description": "Id of the NE-Security profile."}, "failureUpdatedTime": {"type": "integer", "description": "The amount of time it took to fail to update", "format": "int64"}, "failReason": {"type": "string", "description": "Failure Reason when processing this network construct."}, "preferredConnectionAddress": {"description": "The attributes data model of discovery management control access", "$ref": "#/definitions/ManagementSessionConnectionAttributesRO"}, "associationStateLastUpdatedTime": {"type": "string", "description": "Date at which we last changed association state."}, "additionalAttributes": {"$ref": "#/definitions/AdditionalAttributesRO"}, "name": {"type": "string", "description": "Name (e.g. TID) of the Network Construct"}, "created": {"type": "string", "description": "Date when the management session is created."}, "resourceType": {"type": "string", "description": "Resource Type."}, "lastPokeTime": {"type": "integer", "description": "The last time this network construct was poked.", "format": "int64"}, "pokeCount": {"type": "integer", "description": "Number of times this network construct was poked.", "format": "int64"}, "sessionType": {"enum": ["gatewayNE", "remoteNE", "subtendedDevice"], "type": "string", "description": "type of management session type"}, "ipAddress": {"type": "string", "description": "the manual enrollment address of the management session. An auto enrolled NE (such as RNE) has no enrollment address."}, "enrollmentTime": {"type": "string", "description": "Date when the management session is enrolled."}, "connectionStates": {"items": {"$ref": "#/definitions/ManagementSessionEndpointStateRO"}, "type": "array"}}}, "AggregationRO": {"type": "object", "properties": {"buckets": {"items": {"$ref": "#/definitions/AggregationBucketRO"}, "type": "array", "description": "Aggregation results for different criteria"}, "name": {"type": "string", "description": "The name of the aggregation"}}}, "ErrorRO": {"type": "object", "properties": {"source": {"description": "Error source", "$ref": "#/definitions/ErrorSourceRO"}, "code": {"type": "string", "description": "Error code"}, "detail": {"type": "string", "description": "Error details"}, "title": {"type": "string", "description": "Error title"}}}, "ManagementSessionPatchOperationRO": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/ManagementSessionAttributesRO"}, "reason": {"type": "string", "description": "Reason for putting a Management Session to inMaintenance mode."}, "syncComponent": {"enum": ["ALL_COMPONENT", "INVENTORY", "ALARM"], "type": "string", "description": "type of component to be synced. Only to be used when op=resync"}, "op": {"enum": ["replace", "enroll", "reconnect", "resync", "useNewEnrollmentFlow", "useOldEnrollmentFlow", "changeToPending", "inMaintenance", "outMaintenance"], "type": "string", "description": "supported operation on management session resources"}}}, "ManagementSessionPatchRO": {"type": "object", "properties": {"operations": {"items": {"$ref": "#/definitions/ManagementSessionPatchOperationRO"}, "type": "array"}}}, "ManagementSessionRelationshipsRO": {"type": "object", "properties": {"extendedSessions": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "alternativeGateways": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "preferredGateway": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "ManagementSessionRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/ManagementSessionDataRO"}}}, "OneToManyRelationshipRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array", "description": "The one-to-many relationship"}}}, "ErrorsRO": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/ErrorRO"}, "type": "array", "description": "A list of errors"}}}, "ManagementSessionListRO": {"type": "object", "properties": {"meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "data": {"items": {"$ref": "#/definitions/ManagementSessionDataRO"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "AdditionalAttributesRO": {"type": "object"}, "ManagementSessionDisplayDataRO": {"type": "object", "properties": {"displayName": {"type": "string", "description": "Name of the Management Session"}, "displayState": {"enum": ["PENDING", "CONNECTING", "CONNECTED", "FAILED", "NOT_CONNECTED"], "type": "string", "description": "Discovery state of the management session"}}}, "ManagementSessionConnectionAttributesRO": {"type": "object", "properties": {"cost": {"type": "integer", "description": "Connection cost of the address (optional)", "format": "int32"}, "address": {"type": "string", "description": "Connection address of the NE"}}}, "ManagementSessionEndpointStateRO": {"type": "object", "properties": {"protocolType": {"type": "string", "description": "The type of protocol used to connect to the network construct (e.g. TL1, SNMP, CLI, etc.)"}, "connectionState": {"type": "string", "description": "Connection state of the endpoint."}}}, "LinksRO": {"type": "object", "properties": {"last": {"type": "string", "description": "The last page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "next": {"type": "string", "description": "The next page of data", "format": "uri"}, "current": {"type": "string", "description": "The current page of data", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "ErrorSourceRO": {"type": "object", "properties": {"parameter": {"type": "string", "description": "URI query parameter that caused the error"}, "pointer": {"type": "string", "description": "JSON Pointer to the associated entity in the request document"}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "OneToOneRelationshipRO": {"type": "object", "properties": {"data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipDataRO"}}}, "ManagementSessionDataRO": {"type": "object", "properties": {"relationships": {"description": "The relationships of a managmemnt session", "$ref": "#/definitions/ManagementSessionRelationshipsRO"}, "attributes": {"$ref": "#/definitions/ManagementSessionAttributesRO"}, "type": {"enum": ["managementSessions"], "type": "string", "description": "The management session resource type"}, "id": {"type": "string", "description": "The unique identifier for the NetworkConstruct resource"}}}, "AggregationBucketRO": {"type": "object", "properties": {"subAggregations": {"description": "The aggregated data based on a requested aggregation name and criteria", "$ref": "#/definitions/AggregationRO"}, "bucketValue": {"type": "string", "description": "The result of the aggregation"}, "bucketKey": {"type": "string", "description": "The key of the aggregation criteria"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_network_elements_(constructs).json b/tapi/resources/MCP_4.0.0_network_elements_(constructs).json
deleted file mode 100644
index a9e8dbb76cc687d8bf12bba106deb1ff3b24883f..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_network_elements_(constructs).json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Retrieve, plan and modify network constructs resources", "title": "Network elements (constructs)"}, "paths": {"/nsi/api/v4/networkConstructs/{id}": {"get": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "Unable to retrieve specified Managed Network Construct", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to retrieve specified Managed Network Construct", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Network Construct returned as a JSON SingleManagedElement object", "parameters": [{"description": "identifier of Network Construct to be retrieved", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "(Optional) Response filter", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "List of comma separated resources to be side-loaded. The allowed values are: expectations, physicalLocation, parentNetworkConstruct, childNetworkConstructs, networkConstructDiscovered, networkConstructPlanned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4networkConstructs"], "summary": "Retrieves a Network Construct given its corresponding identifier", "operationId": "getNetworkConstruct"}}, "/nsi/api/networkConstructs/{id}/expectations": {"post": {"responses": {"201": {"description": "Network construct expectations have been created on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified NC does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "The specified NC or expectation cannot be accessed by the user because partition conflicts", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"id\":\"4312c715-32cc-4d63-8e26-9b79db379e4b::NC_EXP\",\n  \"type\":\"networkConstructExpectations\",\n  \"relationships\": {\n    \"equipmentIntent\": {\n      \"data\": { \n        \"type\": \"equipmentIntents\", \n        \"id\": \"4312c715-32cc-4d63-8e26-9b79db379e4b::EQP_INT\" \n      }\n    }\n  }\n}</code></pre> +<p>Network construct expectations support an auto-delete on de-enroll policy. To apply the policy, add it to the network construct expectation attributes. See example below:</p><pre style='font-size: smaller'><code class='json'>{\n  ...\n  \"attributes\": {\n    \"policies\": [\n      {\n        \"type\": \"lifecycle\",\n        \"policy\": \"autoDeleteOnDeEnroll\"\n      }\n    ]\n  }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the Network Construct under which to create the expectation", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/NetworkConstructExpectationDataRO"}, "description": "Request to create an NC expectation", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Create an NC Expectation given the nc id", "consumes": ["application/json"], "operationId": "postNCExpectations"}}, "/nsi/api/networkConstructs/{id}/expectations/{networkConstructExpectationId}/realize": {"post": {"responses": {"200": {"description": "Realized NC Expectation successfully."}, "404": {"description": "The specified NC does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Expectation was not found", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to retrieve the specified NC Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the Network Construct under which the expectation is to be realized", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation to realize", "required": true, "type": "string", "name": "networkConstructExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Realize an NC Expectation given the ncId and expectationId", "consumes": ["application/json"], "operationId": "realizeNetworkConstruct"}}, "/nsi/api/networkConstructs/{id}/physicalLocation/{physicalLocationId}": {"put": {"responses": {"200": {"description": "Network construct physical location have been created on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified network construct does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to update specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of Network Construct under which to create or update the physical location", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Id of physical location to create or update", "required": true, "type": "string", "name": "physicalLocationId", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired physical location value", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["000 - nsiapinetworkConstructs"], "summary": "Updates an NC physical location", "consumes": ["text/plain"], "operationId": "updateNCPhysicalLocation"}, "delete": {"responses": {"404": {"description": "The specified network construct or physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to update specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted network construct physical location successfully."}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4", "parameters": [{"description": "Identifier of the Network Construct whose physical location is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "physicalLocationId", "required": true, "type": "string", "name": "physicalLocationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Delete a physical location from a given network construct", "operationId": "deletePhysicalLocationFromNC"}}, "/nsi/api/networkConstructs/{id}/identifiers": {"put": {"responses": {"201": {"description": "Successfully created a new NC identifier for the given NC", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "200": {"description": "Successfully updated the NC identifier for a given NC", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "403": {"description": "Forbidden to access specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The NC id", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The NC identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Creates or updates a REST identifier on a Network Construct", "consumes": ["application/json"], "operationId": "updateNCIdentifier"}, "delete": {"responses": {"404": {"description": "The specified NC does not exist or their was error processing information", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully deleted the NC identifier"}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad parameters were passed, please check the identifier object for errors", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4", "parameters": [{"description": "The NC id", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Deletes a REST identifier on a Network Construct", "consumes": ["application/json"], "operationId": "deleteNCIdentifier"}}, "/nsi/api/v5/networkConstructs/{id}/expectations/{networkConstructExpectationId}/realize": {"post": {"responses": {"200": {"description": "Realized NC Expectation successfully."}, "404": {"description": "The specified NC does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Expectation was not found", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to retrieve the specified NC Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the Network Construct under which the expectation is to be realized", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation to realize", "required": true, "type": "string", "name": "networkConstructExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["995 - nsiapiv5networkConstructs"], "summary": "Realize an NC Expectation given the ncId and expectationId", "consumes": ["application/json"], "operationId": "realizeNetworkConstruct"}}, "/nsi/api/v3/networkConstructs/{id}/networkConstructPlanned": {"patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified network construct does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon request accepted, code 202 is returned and the output consists of JSON objects representing current network construct resource. The \"replace\" operation is used to replace the L2 Node Role and Routing capabilities <p>Example requests:</p> <pre style='font-size: smaller'><code class='json'> {\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"L2Data\" : [{\n                   \"shelf\" : -1.0,\n                   \"eqptGrp\" : -1.0,\n                   \"l2NodeRole\" : AN,\n                   \"l2NodeRoutingCapabilities\" : {\n                   \"properties\" : {\n                       \"isBGPEnabled\" : true,\n                       \"isMPLSEnabled\" : true,\n                       \"isQiQEnabled\" : true,\n                       \"isRSVPTEEnabled\" : false,\n                   }\n                   }\n               }]\n            }\n            \"relationships\" : {\n                    \"manualSRLG : { },\n                    \"physicalLocation : {                        \"data\" : {\n                         \"type\" : physicalLocation,\n                         \"id\" : pl1\n                         }\n                       }\n            }\n        }\n    ]\n}\n</code></pre>", "parameters": [{"description": "The id of the network construct to be updated", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/NetworkConstructPatchRO"}, "description": "A patch request to the given network construct.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Performs L2 Node Role assignment operation and updates the Physical location on a network construct resource", "consumes": ["application/json"], "operationId": "patchPlannedNC"}, "get": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructPlannedRO"}}, "404": {"description": "Unable to retrieve specified Managed Network Construct", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to retrieve specified Network Construct", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Network Construct planned returned as a JSON SingleManagedElement object", "parameters": [{"description": "identifier of Network Construct to be retrieved", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Retrieves a Network Construct planned for the given identifier", "operationId": "getNetworkConstructPlan"}}, "/nsi/api/v3/networkConstructs/{id}": {"patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified network construct does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon request accepted, code 202 is returned and the output consists of JSON objects representing current network construct resource. The \"replace\" operation is used to replace the entire attribute with the new value provided. The deprecated \"update\" operation will update or add to the existing attribute. The \"delete\" operation will delete the entire attribute, or delete specific keys if a list is provided. The \"add\" operation will add values or update key-value pairs  to the existing attribute.<p>Example requests:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"userData\" : {\n                   \"userDataKey\" : \"userDataValue\"\n               }\n            }\n        }\n    ]\n}\n</code></pre><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"add\",\n            \"attributes\" : {\n               \"userData\" : {\n                   \"userDataKey\" : \"userDataValue\"\n               }\n            }\n        }\n    ]\n}\n</code></pre><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"userData\"\n        }\n    ]\n}\n</code></pre><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"userData\",\n            \"keys\" : [ \"key1\", \"key2\" ]\n        }\n    ]\n}\n</code></pre>", "parameters": [{"description": "The id of the network construct to be updated", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/NetworkConstructPatchRO"}, "description": "A patch request to the given network construct.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Performs update operations on a network construct resource", "consumes": ["application/json"], "operationId": "patchOperation"}, "delete": {"responses": {"200": {"description": "The specified NC does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to delete specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted NC successfully."}, "500": {"description": "Failed to delete NC.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "The specified NC either has enrolled or has expectations.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of Network Construct to delete", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Deletes a specific network construct", "operationId": "deleteNCById"}, "get": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "Unable to retrieve specified Managed Network Construct", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to retrieve specified Managed Network Construct", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Network Construct returned as a JSON SingleManagedElement object", "parameters": [{"description": "identifier of Network Construct to be retrieved", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "(Optional) Response filter", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "List of comma separated resources to be side-loaded. The allowed values are: expectations, physicalLocation, parentNetworkConstruct, childNetworkConstructs, networkConstructDiscovered, networkConstructPlanned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Retrieves a Network Construct given its corresponding identifier", "operationId": "getNetworkConstruct"}}, "/nsi/api/v3/networkConstructs/{id}/expectations/{expectationId}": {"patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified network construct does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>Example requests:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n                \"ipCommunicationDetails\": {\n                    \"ipv4Infrastructure\": {\n                        \"dhcpRelayAgent\": {\n                            \"enable\" : true,\n                            \"serverIp\": \"19.117.63.126\"\n                        },\n                        \"dhcpclient\": true,\n                        \"stackEnabled\": true,\n                        \"gateway\": {\n                            \"overRide\": true,\n                            \"access\": \"accessString\",\n                            \"config\": \"configString\"\n                        },\n                        \"ospfRouter\": {\n                            \"routerId\": \"19.117.63.126\",\n                            \"areaBorderRouter\": \"RFC2328\",\n                            \"areaSystemBorderRouter\": \"OFF\",\n                            \"area\": \"19.117.63.126\"\n                        }\n                    },\n                    \"ipv6Infrastructure\": {\n                        \"dhcpRelayAgent\": {\n                            \"enable\" : true,\n                            \"serverIp\": \"19.117.63.126\"\n                        },\n                        \"dhcpclient\": true,\n                        \"stackEnabled\": true,\n                        \"gateway\": {\n                            \"overRide\": true,\n                            \"access\": \"accessString\",\n                            \"config\": \"configString\"\n                        },\n                        \"ospfRouter\": {\n                            \"routerId\": \"19.117.63.126\",\n                            \"areaBorderRouter\": \"RFC2328\",\n                            \"area\": \"19.117.63.126\"\n                        }\n                    },\n                    \"iisisInfrastructure\": {\n                        \"l1priority\": 15,\n                        \"l2priority\": 17,\n                        \"routerLevel\": \"19.117.63.126\",\n                        \"routerlevelsummarisition\": \"routerlevelsummarisition\"\n                    },\n                    \"interfaceDetails\": [\n                        {\n                            \"name\": \"name\",\n                            \"ipv4\": {\n                                \"ip\": \"19.117.63.126\",\n                                \"defaultGateway\" : \"19.117.63.126\",\n                                \"subnetMask\": \"19.117.63.126\",\n                                \"dhcpRelayAgent\": true,\n                                \"ospfcircuit\": [\n                                    {\n                                        \"networkArea\": \"19.117.63.126\",\n                                        \"cost\": 200,\n                                        \"carrier\": \"carrier\",\n                                        \"identifier\" : \"ID\"\n                                    }\n                                ]\n                            },\n                            \"ipv6\" : [\n                                {\n                                    \"ip\": \"19.117.63.126\",\n                                    \"defaultGateway\": \"19.117.63.126\",\n                                    \"prefix\": \"19.117.63.126\",\n                                    \"ospfcircuit\": [\n                                        {\n                                            \"networkArea\": \"19.117.63.126\",\n                                            \"cost\": 300,\n                                            \"carrier\": \"carrierv6\",\n                                            \"identifier\": \"identifier\"\n                                        }\n                                    ]\n                                }\n                            ],\n                            \"iisis\": {\n                                \"circuit\": true\n                            }\n                        }\n                    ]\n                }\n            }\n        }\n    ]\n}\n</code></pre><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"ipCommunicationDetails\"\n        }\n    ]\n}\n</code></pre>", "parameters": [{"description": "The id of the network construct to be updated", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "The id of the expectation to be updated", "required": true, "type": "string", "name": "expectationId", "in": "path"}, {"schema": {"$ref": "#/definitions/NetworkConstructPatchRO"}, "description": "A patch request to the given network construct.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Performs update operations on a network construct expectation", "consumes": ["application/json"], "operationId": "patchExpectation"}}, "/nsi/api/v3/networkConstructs/{id}/expectations/{networkConstructExpectationId}": {"delete": {"responses": {"404": {"description": "The specified NC does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted NC Expectation successfully."}, "500": {"description": "Failed to delete NC Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for Attribute {attribute_name} value {attribute_value}", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the Network Construct whose expectation is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation to delete", "required": true, "type": "string", "name": "networkConstructExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Delete an NC Expectation given the nc id and expectation id", "operationId": "deleteNCExpectationById"}, "get": {"responses": {"200": {"description": "Retrieved NC Expectation successfully.", "schema": {"$ref": "#/definitions/NetworkConstructExpectationRO"}}, "404": {"description": "The specified NC or expectation does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the specified NC Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the Network Construct under which an expectation is to be retrieved", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation to retrieve", "required": true, "type": "string", "name": "networkConstructExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Retrieve an NC Expectation given the nc id and expectation id", "operationId": "getNCExpectationById"}}, "/nsi/api/v3/networkConstructs": {"get": {"responses": {"200": {"description": "List of Network Constructs", "schema": {"$ref": "#/definitions/NetworkConstructListRO"}}, "404": {"description": "Unable to retrieve all network elements"}, "500": {"description": "Retrieval of network constructs failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Discovered Network Constructs returned as a JSON list of Network Construct objects. \nNote: When querying using identifiers, the supported syntax is as follows: \n   ?identifiers[field1+field2+...]=value1+value2+... \nFor instance, \n   ?identifiers[clli+projectId]=ABC123+XYZ ", "parameters": [{"description": "(Optional) List of device name values", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) Ip Address of Network Construct", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "(Optional) Key that holds the subNet name", "required": false, "type": "string", "name": "aliasName", "in": "query"}, {"description": "(Optional) List of subNet name values", "required": false, "type": "string", "name": "aliasValue", "in": "query"}, {"description": "(Optional) Management Session Id", "required": false, "type": "string", "name": "sessionId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.serviceIntent.id", "in": "query"}, {"enum": ["expectations", "physicalLocation", "parentNetworkConstruct", "networkConstructDiscovered", "networkConstructPlanned"], "description": "List of comma separated resources to be side-loaded. The allowed values are: expectations, physicalLocation, parentNetworkConstruct, networkConstructDiscovered, networkConstructPlanned", "required": false, "in": "query", "type": "string", "name": "include"}, {"description": "(Optional) Physical location id", "required": false, "type": "string", "name": "physicalLocationId", "in": "query"}, {"enum": ["networkElement", "shelf", "osrpNode"], "description": "(Optional) Network Construct type", "required": false, "in": "query", "type": "string", "name": "networkConstructType"}, {"description": "(Optional) Id of the concrete networkConstruct", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name). If provided, must also provide searchText parameter", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "deprecated": true, "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Get list of discovered Network Construct(s) satisfying the query parameters", "operationId": "getNetworkConstructs"}}, "/nsi/api/v4/networkConstructs/{id}/physicalLocation/{physicalLocationId}": {"put": {"responses": {"200": {"description": "Network construct physical location have been created on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified network construct does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to update specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of Network Construct under which to create or update the physical location", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Id of physical location to create or update", "required": true, "type": "string", "name": "physicalLocationId", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired physical location value", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["996 - nsiapiv4networkConstructs"], "summary": "Updates an NC physical location", "consumes": ["text/plain"], "operationId": "updateNCPhysicalLocation"}, "delete": {"responses": {"404": {"description": "The specified network construct or physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to update specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted network construct physical location successfully."}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the Network Construct whose physical location is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "physicalLocationId", "required": true, "type": "string", "name": "physicalLocationId", "in": "path"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4networkConstructs"], "summary": "Delete a physical location from a  given network construct", "operationId": "deletePhysicalLocationFromNC"}}, "/nsi/api/v4/networkConstructs/{id}/expectations/{expId}": {"put": {"responses": {"201": {"description": "Network construct expectation has been created or updated", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified NC does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"id\":\"4312c715-32cc-4d63-8e26-9b79db379e4b::NC_EXP\",\n  \"type\":\"networkConstructExpectations\",\n  \"relationships\": {\n    \"equipmentIntent\": {\n      \"data\": { \n        \"type\": \"equipmentIntents\", \n        \"id\": \"4312c715-32cc-4d63-8e26-9b79db379e4b::EQP_INT\" \n      }\n    }\n  }\n}</code></pre><p>Network construct expectations support an auto-delete on de-enroll policy. To apply the policy, add it to the network construct expectation attributes. See example below:</p><pre style='font-size: smaller'><code class='json'>{\n  ...\n  \"attributes\": {\n    \"policies\": [\n      {\n        \"type\": \"lifecycle\",\n        \"policy\": \"autoDeleteOnDeEnroll\"\n      }\n    ]\n  }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the Network Construct under which to create the expectation", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the Network Construct expectation to create or update", "required": true, "type": "string", "name": "expId", "in": "path"}, {"schema": {"$ref": "#/definitions/NetworkConstructExpectationDataRO"}, "description": "Request to create an NC expectation", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4networkConstructs"], "summary": "Create or update an NC Expectation given the nc id", "consumes": ["application/json"], "operationId": "putNCExpectations"}}, "/nsi/api/v4/networkConstructs": {"get": {"responses": {"200": {"description": "List of Network Constructs", "schema": {"$ref": "#/definitions/NetworkConstructListRO"}}, "404": {"description": "Unable to retrieve all network elements"}, "500": {"description": "Retrieval of network constructs failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Discovered Network Constructs returned as a JSON list of Network Construct objects. \nNote: When querying using identifiers, the supported syntax is as follows: \n   ?identifierKey=key1,key2,...&identifierValue=value1,value2,... \nFor instance, \n   ?identifierKey=subnetName&identifierValue=PV0438A---PV0428D---SUBNET", "parameters": [{"description": "(Optional) List of networkConstruct Ids", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of networkConstruct planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "(Optional) List of Management Session Ids", "required": false, "type": "string", "name": "sessionId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) Physical location id", "required": false, "type": "string", "name": "physicalLocationId", "in": "query"}, {"description": "(Optional) List of device name values", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) List of device displayName values", "required": false, "type": "string", "name": "displayName", "in": "query"}, {"description": "The identifier key list", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "The identifier value list", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) Id of the concrete networkConstruct", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"description": "(Optional) Ip Address of Network Construct", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "(Optional) List of Network Construct types. The allowed values are: networkElement, shelf, osrpNode", "required": false, "type": "string", "name": "networkConstructType", "in": "query"}, {"description": "(Optional) List of networkConstruct resourceTypes", "required": false, "type": "string", "name": "resourceType", "in": "query"}, {"description": "(Optional) List of networkConstruct associationStates. The allowed values are: GOA, LOA", "required": false, "type": "string", "name": "associationState", "in": "query"}, {"description": "(Optional) List of networkConstruct syncStates. The allowed values are: notSynchronized, synchronizing, synchronized, failed, aborted, deleting, deleteFailed", "required": false, "type": "string", "name": "syncState", "in": "query"}, {"description": "(Optional) List of networkConstruct software versions", "required": false, "type": "string", "name": "softwareVersion", "in": "query"}, {"description": "(Optional) List of networkConstruct syncStates. The allowed values are: planned, notSynchronized, synchronizing, synchronized, failed, pending, deleting", "required": false, "type": "string", "name": "displaySyncState", "in": "query"}, {"description": "(Optional) The subnet name list", "required": false, "type": "string", "name": "subnetName", "in": "query"}, {"description": "(Optional) macAddress parameter used to filter results", "required": false, "type": "string", "name": "macAddress", "in": "query"}, {"description": "(Optional) List of networkConstruct typeGroups", "required": false, "type": "string", "name": "typeGroup", "in": "query"}, {"description": "(Optional)  slteType parameter used to filter results. The allowed values are: SLTE", "required": false, "type": "string", "name": "slteType", "in": "query"}, {"description": "(Optional) List of resourcePartitionInfo", "required": false, "type": "string", "name": "resourcePartitionInfo", "in": "query"}, {"description": "(Optional) Allow filtering on NC tags. This parameter accepts a list of comma separated strings", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "(Optional) Offset for current index of data to return", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of meta data to be included. The allowed values are: resourceType, associationState, syncState, networkConstructType, resourceState, softwareVersion, displaySyncState, tags", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, physicalLocation, parentNetworkConstruct, networkConstructDiscovered, networkConstructPlanned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["996 - nsiapiv4networkConstructs"], "summary": "Get list of discovered Network Construct(s) satisfying the query parameters", "operationId": "getNetworkConstructs"}}, "/nsi/api/v3/networkConstructs/{id}/identifiers/{identifierKey}": {"put": {"responses": {"200": {"description": "Network construct userData identifier have been created on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified network construct does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the Network Construct under which to create or update the identifier", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to create or update", "required": true, "type": "string", "name": "identifierKey", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "identifier", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Creates or updates an NC UserData Identifier to a given network construct", "consumes": ["application/json"], "operationId": "updateNCIdentifiers"}, "delete": {"responses": {"404": {"description": "The specified network construct or userData - identifier does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Deleted network construct userData - identifier successfully."}, "500": {"description": "Failed to delete network construct userData - identifier.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the Network Construct whose identifier is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to delete", "required": true, "type": "string", "name": "identifierKey", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Delete an userData Identifier from a  given network construct", "operationId": "deleteNCIdentifiers"}}, "/nsi/api/networkConstructs/{id}/expectations/{networkConstructExpectationId}/{attributeName}": {"put": {"responses": {"200": {"description": "Network construct expectation has been update on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified NC or expectation does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "The specified NC or expectation cannot be accessed by the user because partition conflicts", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the Network Construct whose expectation attribute is to be updated", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation whose attribute is to be updated", "required": true, "type": "string", "name": "networkConstructExpectationId", "in": "path"}, {"description": "Name of attribute to update", "required": true, "type": "string", "name": "attributeName", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired new value", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Update to an existing NC Expectation", "consumes": ["text/plain"], "operationId": "updateNCExpectationAttributeValue"}}, "/nsi/api/networkConstructs/{id}/expectations/{networkConstructExpectationId}": {"delete": {"responses": {"404": {"description": "The specified NC does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted NC Expectation successfully."}, "500": {"description": "Failed to delete NC Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for Attribute {attribute_name} value {attribute_value}", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "Identifier of the Network Construct whose expectation is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation to delete", "required": true, "type": "string", "name": "networkConstructExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Delete an NC Expectation given the nc id and expectation id", "operationId": "deleteNCExpectationById"}, "get": {"responses": {"200": {"description": "Retrieved NC Expectation successfully.", "schema": {"$ref": "#/definitions/NetworkConstructExpectationRO"}}, "404": {"description": "The specified NC or expectation does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the specified NC Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "Identifier of the Network Construct under which an expectation is to be retrieved", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation to retrieve", "required": true, "type": "string", "name": "networkConstructExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Retrieve an NC Expectation given the nc id and expectation id", "operationId": "getNCExpectationById"}}, "/nsi/api/networkConstructs/{id}/expectations/{expectationId}": {"patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified network construct does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>Example requests:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n                \"ipCommunicationDetails\": {\n                    \"ipv4Infrastructure\": {\n                        \"dhcpRelayAgent\": {\n                            \"enable\" : true,\n                            \"serverIp\": \"19.117.63.126\"\n                        },\n                        \"dhcpclient\": true,\n                        \"stackEnabled\": true,\n                        \"gateway\": {\n                            \"overRide\": true,\n                            \"access\": \"accessString\",\n                            \"config\": \"configString\"\n                        },\n                        \"ospfRouter\": {\n                            \"routerId\": \"19.117.63.126\",\n                            \"areaBorderRouter\": \"RFC2328\",\n                            \"areaSystemBorderRouter\": \"OFF\",\n                            \"area\": \"19.117.63.126\"\n                        }\n                    },\n                    \"ipv6Infrastructure\": {\n                        \"dhcpRelayAgent\": {\n                            \"enable\" : true,\n                            \"serverIp\": \"19.117.63.126\"\n                        },\n                        \"dhcpclient\": true,\n                        \"stackEnabled\": true,\n                        \"gateway\": {\n                            \"overRide\": true,\n                            \"access\": \"accessString\",\n                            \"config\": \"configString\"\n                        },\n                        \"ospfRouter\": {\n                            \"routerId\": \"19.117.63.126\",\n                            \"areaBorderRouter\": \"RFC2328\",\n                            \"area\": \"19.117.63.126\"\n                        }\n                    },\n                    \"iisisInfrastructure\": {\n                        \"l1priority\": 15,\n                        \"l2priority\": 17,\n                        \"routerLevel\": \"19.117.63.126\",\n                        \"routerlevelsummarisition\": \"routerlevelsummarisition\"\n                    },\n                    \"interfaceDetails\": [\n                        {\n                            \"name\": \"name\",\n                            \"ipv4\": {\n                                \"ip\": \"19.117.63.126\",\n                                \"defaultGateway\" : \"19.117.63.126\",\n                                \"subnetMask\": \"19.117.63.126\",\n                                \"dhcpRelayAgent\": true,\n                                \"ospfcircuit\": [\n                                    {\n                                        \"networkArea\": \"19.117.63.126\",\n                                        \"cost\": 200,\n                                        \"carrier\": \"carrier\",\n                                        \"identifier\" : \"ID\"\n                                    }\n                                ]\n                            },\n                            \"ipv6\" : [\n                                {\n                                    \"ip\": \"19.117.63.126\",\n                                    \"defaultGateway\": \"19.117.63.126\",\n                                    \"prefix\": \"19.117.63.126\",\n                                    \"ospfcircuit\": [\n                                        {\n                                            \"networkArea\": \"19.117.63.126\",\n                                            \"cost\": 300,\n                                            \"carrier\": \"carrierv6\",\n                                            \"identifier\": \"identifier\"\n                                        }\n                                    ]\n                                }\n                            ],\n                            \"iisis\": {\n                                \"circuit\": true\n                            }\n                        }\n                    ]\n                }\n            }\n        }\n    ]\n}\n</code></pre><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"ipCommunicationDetails\"\n        }\n    ]\n}\n</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The id of the network construct to be updated", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "The id of the expectation to be updated", "required": true, "type": "string", "name": "expectationId", "in": "path"}, {"schema": {"$ref": "#/definitions/NetworkConstructPatchRO"}, "description": "A patch request to the given network construct.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Performs update operations on a network construct expectation", "consumes": ["application/json"], "operationId": "patchExpectation"}}, "/nsi/api/networkConstructs/{id}/identifiers/{identifierKey}": {"put": {"responses": {"200": {"description": "Network construct userData identifier have been created on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified network construct does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the Network Construct under which to create or update the identifier", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to create or update", "required": true, "type": "string", "name": "identifierKey", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "identifier", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Creates or updates an NC UserData Identifier to a given network construct", "consumes": ["application/json"], "operationId": "updateNCIdentifiersByKey"}, "delete": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified network construct or userData - identifier does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Deleted network construct userData - identifier successfully."}, "500": {"description": "Failed to delete network construct userData - identifier.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the Network Construct whose identifier is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to delete", "required": true, "type": "string", "name": "identifierKey", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Delete an userData Identifier from a  given network construct", "operationId": "deleteNCIdentifiers"}}, "/nsi/api/v3/networkConstructs/{id}/expectations/{networkConstructExpectationId}/{attributeName}": {"put": {"responses": {"200": {"description": "Network construct expectation has been update on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified NC or expectation does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified NC", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the Network Construct whose expectation attribute is to be updated", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation whose attribute is to be updated", "required": true, "type": "string", "name": "networkConstructExpectationId", "in": "path"}, {"description": "Name of attribute to update, allowable values: name, ipAddress and shelfType ", "required": true, "type": "string", "name": "attributeName", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired new value", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Update to an existing NC Expectation", "consumes": ["text/plain"], "operationId": "updateNCExpectationAttributeValue"}}, "/nsi/api/v5/networkConstructs": {"post": {"responses": {"201": {"description": "Network construct has been created on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "200": {"description": "Network construct user data has been replaced on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon success, code 201 is returned and the output consists of JSON objects representing the Network Construct.<p>All the attributes other than identifiers, userData and networkConstructType will be ignored.</p><p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\" : {\n        \"type\": \"networkConstructs\",\n        \"attributes\": {\n            \"identifiers\": [\n                {\n                    \"siteName\": \"clli1\",\n                    \"projectName\": \"projectName1\"\n                },\n                {\n                    \"projectName\": \"projectName1\"\n                }\n            ]\n        }\n    }\n}\n</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/NetworkConstructRO"}, "description": "Request to create an NC provided with userData and physical location", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["995 - nsiapiv5networkConstructs"], "summary": "Creates or updates network construct with only userData and/or networkConstructType", "consumes": ["application/json"], "operationId": "postNetworkConstruct"}, "get": {"responses": {"200": {"description": "List of Network Constructs", "schema": {"$ref": "#/definitions/NetworkConstructListRO"}}, "404": {"description": "Unable to retrieve all network elements"}, "500": {"description": "Retrieval of network constructs failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Discovered Network Constructs returned as a JSON list of Network Construct objects. \nNote: When querying using identifiers, the supported syntax is as follows: \n   ?identifierKey=key1,key2,...&identifierValue=value1,value2,... \nFor instance, \n   ?identifierKey=subnetName&identifierValue=PV0438A---PV0428D---SUBNET<p>Only one of the following parameters can be specified:<ul><li>name<li>ipAddress<li>identifierKey + identifierValue<li>sessionId<li>networkConstructExpectations.equipmentIntent.id<li>networkConstructExpectations.serviceIntent.id<li>physicalLocationId<li>networkConstructType<li>concrete</ul>", "parameters": [{"description": "(Optional) List of device name values", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) Ip Address of Network Construct", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "The identifier key list", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "The identifier value list", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) Management Session Id", "required": false, "type": "string", "name": "sessionId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) Physical location id", "required": false, "type": "string", "name": "physicalLocationId", "in": "query"}, {"description": "(Optional) Network Construct type. The allowed values are: networkElement, shelf, osrpNode, manual, branchingUnit, submarineRepeater", "required": false, "type": "string", "name": "networkConstructType", "in": "query"}, {"description": "(Optional) Id of the concrete networkConstruct", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "List of comma separated resources to be side-loaded. The allowed values are: expectations, physicalLocation, parentNetworkConstruct, networkConstructDiscovered, networkConstructPlanned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["995 - nsiapiv5networkConstructs"], "summary": "Get list of discovered Network Construct(s) satisfying the query parameters", "operationId": "getNetworkConstructsV5"}}, "/nsi/api/networkConstructs/{id}/expectations/{expId}": {"put": {"responses": {"201": {"description": "Network construct expectation has been created or updated", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified NC does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "The specified NC or expectation cannot be accessed by the user because partition conflicts", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"id\":\"4312c715-32cc-4d63-8e26-9b79db379e4b::NC_EXP\",\n  \"type\":\"networkConstructExpectations\",\n  \"relationships\": {\n    \"equipmentIntent\": {\n      \"data\": { \n        \"type\": \"equipmentIntents\", \n        \"id\": \"4312c715-32cc-4d63-8e26-9b79db379e4b::EQP_INT\" \n      }\n    }\n  }\n}</code></pre> +<p>Network construct expectations support an auto-delete on de-enroll policy. To apply the policy, add it to the network construct expectation attributes. See example below:</p><pre style='font-size: smaller'><code class='json'>{\n  ...\n  \"attributes\": {\n    \"policies\": [\n      {\n        \"type\": \"lifecycle\",\n        \"policy\": \"autoDeleteOnDeEnroll\"\n      }\n    ]\n  }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the Network Construct under which to create the expectation", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the Network Construct expectation to create or update", "required": true, "type": "string", "name": "expId", "in": "path"}, {"schema": {"$ref": "#/definitions/NetworkConstructExpectationDataRO"}, "description": "Request to create an NC expectation", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Create or update an NC Expectation given the nc id", "consumes": ["application/json"], "operationId": "putNCExpectations"}}, "/nsi/api/v4/networkConstructs/{id}/identifiers": {"put": {"responses": {"201": {"description": "Successfully created a new NC identifier for the given NC", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "200": {"description": "Successfully updated the NC identifier for a given NC", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "403": {"description": "Forbidden to access specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The NC id", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The NC identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4networkConstructs"], "summary": "Puts or updates a REST identifier on a Network Construct", "consumes": ["application/json"], "operationId": "updateNCIdentifier"}, "delete": {"responses": {"200": {"description": "Unsuccessfully deleted the NC identifier"}, "204": {"description": "Successfully deleted the NC identifier"}, "404": {"description": "The specified NC does not exist or their was error processing information", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad parameters were passed, please check the identifier object for errors", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "The NC id", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4networkConstructs"], "summary": "Deletes a REST identifier on a Network Construct", "consumes": ["application/json"], "operationId": "deleteNCIdentifier"}}, "/nsi/api/networkConstructs/{id}": {"patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified network construct does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>Upon request accepted, code 202 is returned and the output consists of JSON objects representing current network construct resource. The \"replace\" operation is used to replace the entire attribute with the new value provided. The deprecated \"update\" operation will update or add to the existing attribute. The \"delete\" operation will delete the entire attribute, or delete specific keys if a list is provided. The \"add\" operation will add values or update key-value pairs  to the existing attribute.<p>Example requests:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"userData\" : {\n                   \"userDataKey\" : \"userDataValue\"\n               }\n            }\n        }\n    ]\n}\n</code></pre><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"add\",\n            \"attributes\" : {\n               \"userData\" : {\n                   \"userDataKey\" : \"userDataValue\"\n               }\n            }\n        }\n    ]\n}\n</code></pre><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"userData\"\n        }\n    ]\n}\n</code></pre><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"userData\",\n            \"keys\" : [ \"key1\", \"key2\" ]\n        }\n    ]\n}\n</code></pre>", "parameters": [{"description": "The id of the network construct to be updated", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/NetworkConstructPatchRO"}, "description": "A patch request to the given network construct.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Performs update operations on a network construct resource", "consumes": ["application/json"], "operationId": "patchOperation"}, "delete": {"responses": {"200": {"description": "The specified NC does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to delete specified network construct", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted NC successfully."}, "500": {"description": "Failed to delete NC.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "The specified NC either has enrolled or has expectations.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "Identifier of Network Construct to delete", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Deletes a specific network construct", "operationId": "deleteNCById"}, "get": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "Unable to retrieve specified Managed Network Construct", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to retrieve specified Managed Network Construct", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V3<p>Network Construct returned as a JSON SingleManagedElement object", "parameters": [{"description": "identifier of Network Construct to be retrieved", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "List of comma separated resources to be side-loaded. The allowed values are: expectations, physicalLocation, parentNetworkConstruct, childNetworkConstructs, networkConstructDiscovered, networkConstructPlanned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Retrieves a Network Construct given its corresponding identifier.", "operationId": "getNetworkConstruct"}}, "/nsi/api/networkConstructs/{id}/networkConstructPlanned": {"patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified network construct does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Insufficient permission", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon request accepted, code 202 is returned and the output consists of JSON objects representing current network construct resource. The \"replace\" operation is used to replace the L2 Node Role and Routing capabilities <p>Example requests:</p> <pre style='font-size: smaller'><code class='json'> {\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"L2Data\" : [{\n                   \"shelf\" : -1.0,\n                   \"eqptGrp\" : -1.0,\n                   \"l2NodeRole\" : AN,\n                   \"l2NodeRoutingCapabilities\" : {\n                   \"properties\" : {\n                       \"isBGPEnabled\" : true,\n                       \"isMPLSEnabled\" : true,\n                       \"isQiQEnabled\" : true,\n                       \"isRSVPTEEnabled\" : false,\n                   }\n                   }\n               }]\n            }\n            \"relationships\" : {\n                    \"manualSRLG : { }\n            }\n        }\n    ]\n}\n</code></pre>", "parameters": [{"description": "The id of the network construct to be updated", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/NetworkConstructPatchRO"}, "description": "A patch request to the given network construct.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Performs L2 Nole Role assignment operation on a network construct resource", "consumes": ["application/json"], "operationId": "patchPlannedNC"}, "get": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/NetworkConstructPlannedRO"}}, "404": {"description": "Unable to retrieve specified Network Construct", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to retrieve specified Managed Network Construct", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Network Construct planned returned as a JSON SingleManagedElement object", "parameters": [{"description": "identifier of Network Construct to be retrieved", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Retrieves a Network Construct planned for the given identifier", "operationId": "getNetworkConstructPlan"}}, "/nsi/api/networkConstructs": {"post": {"responses": {"201": {"description": "Network construct has been created on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "200": {"description": "Network construct user data has been replaced on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon success, code 201 is returned and the output consists of JSON objects representing the Network Construct.<p>All the attributes other than identifiers, userData and networkConstructType will be ignored.</p><p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"data\" : {\n        \"type\": \"networkConstructs\",\n        \"attributes\": {\n            \"identifiers\": [\n                {\n                    \"siteName\": \"clli1\",\n                    \"projectName\": \"projectName1\"\n                },\n                {\n                    \"projectName\": \"projectName1\"\n                }\n            ]\n        }\n    }\n}\n</code></pre><p>LATEST VERSION: V5<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/NetworkConstructRO"}, "description": "Request to create an NC provided with userData and physical location", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Creates or updates network construct with only userData and/or networkConstructType", "consumes": ["application/json"], "operationId": "postNetworkConstruct"}, "get": {"responses": {"200": {"description": "List of Network Constructs", "schema": {"$ref": "#/definitions/NetworkConstructListRO"}}, "404": {"description": "Unable to retrieve all network elements"}, "500": {"description": "Retrieval of network constructs failed (error message provided)", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V5\nDiscovered Network Constructs returned as a JSON list of Network Construct objects. \nNote: When querying using identifiers, the supported syntax is as follows: \n   ?identifierKey=key1,key2,...&identifierValue=value1,value2,... \nFor instance, \n   ?identifierKey=subnetName&identifierValue=PV0438A---PV0428D---SUBNET<p>Only one of the following parameters can be specified:<ul><li>name<li>ipAddress<li>identifierKey + identifierValue<li>sessionId<li>networkConstructExpectations.equipmentIntent.id<li>networkConstructExpectations.serviceIntent.id<li>physicalLocationId<li>networkConstructType<li>concrete</ul>", "parameters": [{"description": "(Optional) List of device name values", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "(Optional) Ip Address of Network Construct", "required": false, "type": "string", "name": "ipAddress", "in": "query"}, {"description": "The identifier key list", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "The identifier value list", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) Management Session Id", "required": false, "type": "string", "name": "sessionId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "networkConstructExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) Physical location id", "required": false, "type": "string", "name": "physicalLocationId", "in": "query"}, {"description": "(Optional) Network Construct type. The allowed values are: networkElement, shelf, osrpNode, manual, branchingUnit, submarineRepeater", "required": false, "type": "string", "name": "networkConstructType", "in": "query"}, {"description": "(Optional) Id of the concrete networkConstruct", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "List of comma separated resources to be side-loaded. The allowed values are: expectations, physicalLocation, parentNetworkConstruct, networkConstructDiscovered, networkConstructPlanned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapinetworkConstructs"], "summary": "Get list of discovered Network Construct(s) satisfying the query parameters", "operationId": "getNetworkConstructs"}}, "/nsi/api/v3/networkConstructs/{id}/expectations": {"post": {"responses": {"201": {"description": "Network construct expectations have been created on the server", "schema": {"$ref": "#/definitions/NetworkConstructRO"}}, "404": {"description": "The specified NC does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified NC", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"id\":\"4312c715-32cc-4d63-8e26-9b79db379e4b::NC_EXP\",\n  \"type\":\"networkConstructExpectations\",\n  \"relationships\": {\n    \"equipmentIntent\": {\n      \"data\": { \n        \"type\": \"equipmentIntents\", \n        \"id\": \"4312c715-32cc-4d63-8e26-9b79db379e4b::EQP_INT\" \n      }\n    }\n  }\n}</code></pre><p>Network construct expectations support an auto-delete on de-enroll policy. To apply the policy, add it to the network construct expectation attributes. See example below:</p><pre style='font-size: smaller'><code class='json'>{\n  ...\n  \"attributes\": {\n    \"policies\": [\n      {\n        \"type\": \"lifecycle\",\n        \"policy\": \"autoDeleteOnDeEnroll\"\n      }\n    ]\n  }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the Network Construct under which to create the expectation", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/NetworkConstructExpectationDataRO"}, "description": "Request to create an NC expectation", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3networkConstructs"], "summary": "Create an NC Expectation given the nc id", "consumes": ["application/json"], "operationId": "postNCExpectations"}}}, "schemes": ["http", "https"], "tags": [{"name": "000 - nsiapinetworkConstructs", "description": "Retrieve, plan, and manage the network construct resources<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "995 - nsiapiv5networkConstructs", "description": "Retrieve, plan, and manage the network construct resources (version 5)"}, {"name": "996 - nsiapiv4networkConstructs", "description": "Retrieve, plan, and manage the network construct resources (version 4)"}, {"name": "997 - nsiapiv3networkConstructs", "description": "Retrieve, plan, and manage the network construct resources (version 3)"}], "definitions": {"DhcpRelayAgentRO": {"type": "object", "properties": {"enable": {"default": false, "type": "boolean", "description": "Disable the DHCP relay agent"}, "serverIp": {"type": "string", "description": "The IP address the relay agent should forward to"}}}, "Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "Ipv6RO": {"type": "object", "properties": {"ip": {"type": "string", "description": "Value of IP address, can be either a V6 address, should support all formats of V6 address"}, "prefix": {"type": "string", "description": "The prefix which is applied on the interface, an IPV6 prefix"}, "defaultGateway": {"type": "string", "description": "The next hope router IP, can be a V6 address, should support all formats of V6 address"}, "ospfcircuit": {"items": {"$ref": "#/definitions/OspfcircuitRO_"}, "type": "array"}}}, "IPCommunicationDetailsRO": {"type": "object", "properties": {"interfaceDetails": {"items": {"$ref": "#/definitions/InterfaceIPAttributesRO"}, "type": "array", "description": "List of comms interfaces and their attributes."}, "ipv4Infrastructure": {"$ref": "#/definitions/Ipv4InfrastructureRO"}, "iisisInfrastructure": {"description": "IISIS Router Details", "$ref": "#/definitions/IisisInfrastructureRO"}, "ipv6Infrastructure": {"$ref": "#/definitions/Ipv6InfrastructureRO"}}}, "AdditionalAttributesRO": {"type": "object"}, "OneToOneRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipDataRO"}}}, "Ipv4InfrastructureRO": {"type": "object", "properties": {"dhcpRelayAgent": {"description": "DHCP Relay agent attributes.", "$ref": "#/definitions/DhcpRelayAgentRO"}, "dhcpclient": {"default": false, "type": "boolean", "description": "Indicates if the DHCP client is enabled"}, "ospfRouter": {"description": "OSPF Router Details", "$ref": "#/definitions/OspfRouterRO"}, "gateway": {"description": "Gateway Details of the network construct", "$ref": "#/definitions/GatewayRO"}, "stackEnabled": {"default": false, "type": "boolean", "description": "Indicates if IPV4 is enabled"}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "NetworkConstructExpectationAttributesRO": {"type": "object", "properties": {"l2Data": {"items": {"$ref": "#/definitions/L2DataRO"}, "type": "array", "description": "It represents the L2 Configuration Data on the NE."}, "startDate": {"type": "string", "description": "The scheduled start date and time of the expectation, with RFC 3339 date-time format"}, "softwareType": {"type": "string", "description": "Software type (e.g. OCP)"}, "endDate": {"type": "string", "description": "The scheduled end date and time of the expectation, with RFC 3339 date-time format"}, "macAddress": {"type": "string", "description": "MAC address of the device."}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the NE belongs to."}, "memberFunction": {"enum": ["ILA", "DGE", "ROADM"], "type": "string", "description": "Member function of the network construct."}, "shelfType": {"enum": ["ILA", "DGE"], "type": "string", "description": "Shelf type of the network construct."}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "softwareImage": {"type": "string", "description": "Software image"}, "longName": {"type": "string", "description": "Extended name of the Network Construct"}, "accessIdentifier": {"type": "string", "description": "AID of the device, i.e. for 6500 shelf : SHELF-n."}, "associationStateQualifier": {"enum": ["MANUAL", "SYSTEM", "NETWORK"], "type": "string", "description": "How the associationState has been set."}, "associationStateQualifierReason": {"type": "string", "description": "Reason for going into maintenance mode."}, "numberOfShelves": {"type": "integer", "description": "Number of shelves (primary + member shelves in case of TIDc)", "format": "int32"}, "typeGroup": {"type": "string", "description": "Resource adapter type group."}, "deviceType": {"type": "string", "description": "Device Type."}, "networkConstructType": {"enum": ["networkElement", "shelf", "osrpNode", "manual", "branchingUnit", "submarineRepeater", "unknown"], "type": "string", "description": "The type of network construct. It is used to represent the physical hierarchy of a network element."}, "capabilitySpecRef": {"type": "string", "description": "Name of the file which contains the constraint rules of the network device."}, "ipCommunicationDetails": {"description": "IP communications data for the network construct", "$ref": "#/definitions/IPCommunicationDetailsRO"}, "associationState": {"enum": ["GOA", "LOA"], "type": "string", "description": "Association state of the network construct."}, "associationStateLastUpdatedTime": {"type": "string", "description": "Date at which we last changed association state."}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "geoLocation": {"description": "The geography location of the device", "$ref": "#/definitions/GeoLocationRO"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "name": {"type": "string", "description": "Name (e.g. TID) of the Network Construct"}, "resourceType": {"type": "string", "description": "Resource Type."}, "serialNumber": {"type": "string", "description": "Serial number (e.g. NNTMHQDP0001)"}, "softwareVersion": {"type": "string", "description": "Software version running in the device."}, "policies": {"items": {"type": "object"}, "type": "array", "description": "Policies to be applied to the entity."}, "subnetName": {"type": "string", "description": "Subnet name (e.g. ROADM1---ROADM2---SUBNET)"}, "ipAddress": {"type": "string", "description": "IP address of the network construct."}, "deviceVersion": {"type": "string", "description": "Device version (e.g. 6500 32-SLOT OPTICAL)"}}}, "ErrorSourceRO": {"type": "object", "properties": {"parameter": {"type": "string", "description": "URI query parameter that caused the error"}, "pointer": {"type": "string", "description": "JSON Pointer to the associated entity in the request document"}}}, "IdentifierRO": {"type": "object"}, "AggregationRO": {"type": "object", "properties": {"buckets": {"items": {"$ref": "#/definitions/AggregationBucketRO"}, "type": "array", "description": "Aggregation results for different criteria"}, "name": {"type": "string", "description": "The name of the aggregation"}}}, "NetworkConstructAttributesRO": {"type": "object", "properties": {"l2Data": {"items": {"$ref": "#/definitions/L2DataRO"}, "type": "array", "description": "It represents the L2 Configuration Data on the NE."}, "macAddress": {"type": "string", "description": "MAC address of the device."}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the NE belongs to."}, "memberFunction": {"enum": ["ILA", "DGE", "ROADM"], "type": "string", "description": "Member function of the network construct."}, "shelfType": {"enum": ["ILA", "DGE"], "type": "string", "description": "Shelf type of the network construct."}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "displayData": {"$ref": "#/definitions/NetworkConstructDisplayDataRO"}, "softwareImage": {"type": "string", "description": "Software image"}, "longName": {"type": "string", "description": "Extended name of the Network Construct"}, "accessIdentifier": {"type": "string", "description": "AID of the device, i.e. for 6500 shelf : SHELF-n."}, "associationStateQualifier": {"enum": ["MANUAL", "SYSTEM", "NETWORK"], "type": "string", "description": "How the associationState has been set."}, "associationStateQualifierReason": {"type": "string", "description": "Reason for going into maintenance mode."}, "numberOfShelves": {"type": "integer", "description": "Number of shelves (primary + member shelves in case of TIDc)", "format": "int32"}, "typeGroup": {"type": "string", "description": "Resource adapter type group."}, "deviceType": {"type": "string", "description": "Device Type."}, "networkConstructType": {"enum": ["networkElement", "shelf", "osrpNode", "manual", "branchingUnit", "submarineRepeater", "unknown"], "type": "string", "description": "The type of network construct. It is used to represent the physical hierarchy of a network element."}, "capabilitySpecRef": {"type": "string", "description": "Name of the file which contains the constraint rules of the network device."}, "syncState": {"$ref": "#/definitions/SyncStateRO"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "ipCommunicationDetails": {"description": "IP communications data for the network construct", "$ref": "#/definitions/IPCommunicationDetailsRO"}, "tags": {"items": {"type": "string"}, "type": "array", "description": "A list of tags for a given NC."}, "associationState": {"enum": ["GOA", "LOA"], "type": "string", "description": "Association state of the network construct."}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "softwareType": {"type": "string", "description": "Software type (e.g. OCP)"}, "associationStateLastUpdatedTime": {"type": "string", "description": "Date at which we last changed association state."}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "geoLocation": {"description": "The geography location of the device", "$ref": "#/definitions/GeoLocationRO"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "name": {"type": "string", "description": "Name (e.g. TID) of the Network Construct"}, "resourceType": {"type": "string", "description": "Resource Type."}, "serialNumber": {"type": "string", "description": "Serial number (e.g. NNTMHQDP0001)"}, "softwareVersion": {"type": "string", "description": "Software version running in the device."}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePoliciesRO"}, "subnetName": {"type": "string", "description": "Subnet name (e.g. ROADM1---ROADM2---SUBNET)"}, "ipAddress": {"type": "string", "description": "IP address of the network construct."}, "deviceVersion": {"type": "string", "description": "Device version (e.g. 6500 32-SLOT OPTICAL)"}}}, "AttributePoliciesRO": {"type": "object", "properties": {"defaultAttributeSourcePolicy": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string", "description": "Source of attribute."}, "overrides": {"items": {"$ref": "#/definitions/AttributePolicyOverrideRO"}, "type": "array"}}}, "NetworkConstructExpectationRelationshipsRO": {"type": "object", "properties": {"physicalLocation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "parentNetworkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "serviceIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "concreteAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "equipmentIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "groups": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "childrenNetworkConstruct": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "GeoLocationRO": {"type": "object", "properties": {"latitude": {"type": "string", "description": "Latitude of the device location"}, "longitude": {"type": "string", "description": "Longitude of the device location"}, "zone": {"type": "string", "description": "Zone of the device location"}}}, "L2DataRO": {"type": "object", "properties": {"mgmtVlans": {"items": {"type": "string"}, "type": "array", "description": "mgmtVlans in the NE."}, "l2NodeRoutingCapabilities": {"description": "Describes L2 Routing capabilities of the node", "$ref": "#/definitions/L2NodeRoutingCapabilitiesRO"}, "externalFgiSpecsRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of External Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance."}, "loopbackAddresses": {"items": {"type": "string"}, "type": "array", "description": "The loopback addresses in the NE."}, "shelf": {"type": "string"}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/BgpPackageRO"}, "cftProfileNames": {"items": {"type": "string"}, "type": "array", "description": "CFT profiles in the NE."}, "l2NodeRole": {"enum": ["AN", "AGN", "NID"], "type": "string", "description": "L2 Node Role."}, "dynamicLabelRange": {"description": "Describes a Range attribute", "$ref": "#/definitions/RangeRO"}, "benchmarkMacs": {"items": {"type": "string"}, "type": "array", "description": "Benchmark MAC addresses in the NE."}, "switchFabricType": {"enum": ["XC", "CTM", "EMOTR", "PTS"], "type": "string", "description": "Optional field.  It represents a switch fabric where XC (PTKOTN on S-series), CTM (PTKOTN on T-series)"}, "staticVcLabelRange": {"description": "Describes a Range attribute", "$ref": "#/definitions/RangeRO"}, "cosProfileNames": {"items": {"type": "string"}, "type": "array", "description": "CoS profiles in the NE."}, "eqptGrp": {"type": "string", "description": "The group ID obtained from RTRV-EQPTGRP for the SAOS card on which the entity resides"}, "fgiSpecsRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance."}, "staticTunnelLabelRange": {"description": "Describes a Range attribute", "$ref": "#/definitions/RangeRO"}}}, "NetworkConstructPlannedDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/NetworkConstructPlannedRelationshipsRO"}, "attributes": {"description": "These attributes are set by REST API to be used to validate the expectation.", "$ref": "#/definitions/NetworkConstructPlannedAttributesRO"}, "type": {"enum": ["networkConstructPlanned"], "type": "string", "description": "The network construct planned type"}, "id": {"type": "string", "description": "The unique identifier of the network construct planned"}}}, "BgpPackageRO": {"type": "object", "properties": {"routerId": {"type": "string", "description": "Router Id configured on the Node."}, "as": {"type": "integer", "description": "AS number assigned to the Node/EquipmentGroup", "format": "int64"}, "rrConfig": {"description": "Holds RR Configuration.", "$ref": "#/definitions/RRConfigRO"}}}, "RelationshipMetaDataRO": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean", "description": "Flags whether the included relationship object is partially populated or not"}}}, "LinksRO": {"type": "object", "properties": {"last": {"type": "string", "description": "The last page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "next": {"type": "string", "description": "The next page of data", "format": "uri"}, "current": {"type": "string", "description": "The current page of data", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "NetworkConstructPatchRO": {"type": "object", "properties": {"operations": {"items": {"$ref": "#/definitions/NetworkConstructPatchOperationRO"}, "type": "array"}}}, "OspfRouterRO_": {"type": "object", "properties": {"routerId": {"type": "string", "description": "ID of the router primarily applicable for OSPFV3, takes the from of an IPV4 address"}, "areaBorderRouter": {"enum": ["RFC_3509", "RFC_2328"], "type": "string", "description": "Area border Router"}, "area": {"type": "string", "description": "OSPFV3 area of the network construct. Takes the form of an IPV4 address"}}}, "InterfaceIPAttributesRO": {"type": "object", "properties": {"ipv6": {"items": {"$ref": "#/definitions/Ipv6RO"}, "type": "array", "description": "List IPV6 Addresses for an interface."}, "iisis": {"$ref": "#/definitions/IisisRO"}, "name": {"type": "string", "description": "The name of the interface the IP communications details are associated with"}, "ipv4": {"$ref": "#/definitions/Ipv4RO"}}}, "MetaDataRO": {"type": "object", "properties": {"absoluteTotal": {"type": "integer", "description": "The unfiltered total number of entities in the data", "format": "int64"}, "total": {"type": "integer", "description": "The total number of entities in the data", "format": "int64"}, "aggregations": {"items": {"$ref": "#/definitions/AggregationRO"}, "type": "array", "description": "The aggregated data based on a requested aggregation name and criteria"}}}, "SRLGOneToManyRelationshipRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/SRLGDataRO"}, "type": "array", "description": "The SRLG one-to-many relationship"}}}, "NetworkConstructListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Array of associated planned, expectations, discovered, physical locations, or parent Network Constructs"}, "meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "data": {"items": {"$ref": "#/definitions/NetworkConstructDataRO"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "NetworkConstructDataRO": {"type": "object", "properties": {"relationships": {"description": "The relationships of a network construct", "$ref": "#/definitions/NetworkConstructRelationshipsRO"}, "attributes": {"$ref": "#/definitions/NetworkConstructAttributesRO"}, "type": {"enum": ["networkConstructs"], "type": "string", "description": "The Network Construct resource type"}, "id": {"type": "string", "description": "The unique identifier for the NetworkConstruct resource"}}}, "SRLGDataRO": {"type": "object", "properties": {"type": {"enum": ["SRLG"], "type": "string", "description": "The SRLG Attribute type"}, "id": {"type": "string", "description": "The identifier value of the SRLG. It's same as the native value of structured srlg attributes"}}}, "OspfRouterRO": {"type": "object", "properties": {"routerId": {"type": "string", "description": "ID of the router primarily applicable for OSPF, takes the from of an IPV4 address"}, "areaBorderRouter": {"enum": ["RFC_3509", "RFC_2328"], "type": "string", "description": "Area border Router"}, "areaSystemBorderRouter": {"enum": ["ON", "OFF"], "type": "string", "description": "Defines if the router is a area system border router"}, "area": {"type": "string", "description": "OSPFV2 area of the network construct. Takes the form of an IPV4 address"}}}, "SyncStateRO": {"type": "object", "properties": {"lastStateUpdated": {"type": "string"}, "stateHistory": {"items": {"$ref": "#/definitions/StateHistoryRO"}, "type": "array", "description": "list of state and time history."}, "state": {"enum": ["NOT_SYNCHRONIZED", "SYNCHRONIZING", "SYNCHRONIZED", "FAILED", "ABORTED", "DELETING", "DELETE_FAILED", "TIMEOUT"], "type": "string"}, "additionalText": {"type": "string"}, "lastSynchronized": {"type": "string"}}}, "RangeRO": {"type": "object", "properties": {"maxValue": {"type": "integer", "description": "This defines the max value for the range.", "format": "int32"}, "minValue": {"type": "integer", "description": "This defines the min value for the range.", "format": "int32"}}}, "ErrorsRO": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/ErrorRO"}, "type": "array", "description": "A list of errors"}}}, "L2NodeRoutingCapabilitiesRO": {"type": "object", "properties": {"isRSVPTEEnabled": {"default": false, "type": "boolean", "description": "true , if RSVP-TE protocol is enabled on this L2 node."}, "isBGPEnabled": {"default": false, "type": "boolean", "description": "true, if BGP protocol is enabled on this L2 node."}, "isQiQEnabled": {"default": false, "type": "boolean", "description": "true , if QiQ protocol is enabled on this L2 node."}, "isMPLSEnabled": {"default": false, "type": "boolean", "description": "true, if MPLS protocol is enabled on this L2 node."}}}, "NetworkConstructPlannedRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Side loaded relationship resources"}, "data": {"$ref": "#/definitions/NetworkConstructPlannedDataRO"}}}, "ClusterRO": {"type": "object", "properties": {"clusterId": {"type": "string", "description": "Id of this Cluster."}, "clientToClient": {"description": "Holds information about ClientToClient Reflection.", "$ref": "#/definitions/ClientToClientRO"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "NetworkConstructPlannedAttributesRO": {"type": "object", "properties": {"l2Data": {"items": {"$ref": "#/definitions/L2DataRO"}, "type": "array", "description": "It represents the L2 Configuration Data on the NE."}, "macAddress": {"type": "string", "description": "MAC address of the device."}, "softwareType": {"type": "string", "description": "Software type (e.g. OCP)"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the NE belongs to."}, "memberFunction": {"enum": ["ILA", "DGE", "ROADM"], "type": "string", "description": "Member function of the network construct."}, "shelfType": {"enum": ["ILA", "DGE"], "type": "string", "description": "Shelf type of the network construct."}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "softwareImage": {"type": "string", "description": "Software image"}, "longName": {"type": "string", "description": "Extended name of the Network Construct"}, "accessIdentifier": {"type": "string", "description": "AID of the device, i.e. for 6500 shelf : SHELF-n."}, "associationStateQualifier": {"enum": ["MANUAL", "SYSTEM", "NETWORK"], "type": "string", "description": "How the associationState has been set."}, "associationStateQualifierReason": {"type": "string", "description": "Reason for going into maintenance mode."}, "numberOfShelves": {"type": "integer", "description": "Number of shelves (primary + member shelves in case of TIDc)", "format": "int32"}, "typeGroup": {"type": "string", "description": "Resource adapter type group."}, "deviceType": {"type": "string", "description": "Device Type."}, "networkConstructType": {"enum": ["networkElement", "shelf", "osrpNode", "manual", "branchingUnit", "submarineRepeater", "unknown"], "type": "string", "description": "The type of network construct. It is used to represent the physical hierarchy of a network element."}, "capabilitySpecRef": {"type": "string", "description": "Name of the file which contains the constraint rules of the network device."}, "ipCommunicationDetails": {"description": "IP communications data for the network construct", "$ref": "#/definitions/IPCommunicationDetailsRO"}, "associationState": {"enum": ["GOA", "LOA"], "type": "string", "description": "Association state of the network construct."}, "associationStateLastUpdatedTime": {"type": "string", "description": "Date at which we last changed association state."}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "geoLocation": {"description": "The geography location of the device", "$ref": "#/definitions/GeoLocationRO"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "name": {"type": "string", "description": "Name (e.g. TID) of the Network Construct"}, "resourceType": {"type": "string", "description": "Resource Type."}, "serialNumber": {"type": "string", "description": "Serial number (e.g. NNTMHQDP0001)"}, "softwareVersion": {"type": "string", "description": "Software version running in the device."}, "subnetName": {"type": "string", "description": "Subnet name (e.g. ROADM1---ROADM2---SUBNET)"}, "ipAddress": {"type": "string", "description": "IP address of the network construct."}, "deviceVersion": {"type": "string", "description": "Device version (e.g. 6500 32-SLOT OPTICAL)"}}}, "ErrorRO": {"type": "object", "properties": {"source": {"description": "Error source", "$ref": "#/definitions/ErrorSourceRO"}, "code": {"type": "string", "description": "Error code"}, "detail": {"type": "string", "description": "Error details"}, "title": {"type": "string", "description": "Error title"}}}, "IisisRO": {"type": "object", "properties": {"circuit": {"default": false, "type": "boolean", "description": "IISIS circuit exists on the interface"}}}, "RRConfigRO": {"type": "object", "properties": {"clusters": {"items": {"$ref": "#/definitions/ClusterRO"}, "type": "array", "description": "Holds data related to Clusters configured on RR"}, "configured": {"default": false, "type": "boolean", "description": "A flag to check if RR configured or not."}}}, "AggregationBucketRO": {"type": "object", "properties": {"absoluteTotal": {"type": "string", "description": "The unfiltered total number of entities in the data"}, "subAggregations": {"description": "The aggregated data based on a requested aggregation name and criteria", "$ref": "#/definitions/AggregationRO"}, "bucketValue": {"type": "string", "description": "The result of the aggregation"}, "bucketKey": {"type": "string", "description": "The key of the aggregation criteria"}}}, "NetworkConstructPlannedRelationshipsRO": {"type": "object", "properties": {"dynamicPropagatedSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "physicalLocation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "parentNetworkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "serviceIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "concreteAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "dynamicInheritedSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "manualSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "equipmentIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "groups": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "childrenNetworkConstruct": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "dynamicAutoSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}}}, "NetworkConstructRelationshipsRO": {"type": "object", "properties": {"physicalLocation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "parentNetworkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "networkConstructDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "networkConstructPlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "concreteAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "managementSession": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "networkConstructExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "groups": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "childrenNetworkConstruct": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "GatewayRO_": {"type": "object", "properties": {"overRide": {"default": false, "type": "boolean", "description": "Override the default definition of the gateway"}, "access": {"type": "string", "description": "Defines the type of Gateway ie. 6500 V6 values are:NDPROXY, OSPFV3, STATIC"}, "config": {"type": "string", "description": "Configuration of Gateway as standalone or redundant."}}}, "IisisInfrastructureRO": {"type": "object", "properties": {"l2priority": {"type": "integer", "description": "1-127, 64 is default", "format": "int32"}, "routerlevelsummarisition": {"type": "string", "description": "Whether routes or route summaries are redistributed"}, "routerLevel": {"type": "string", "description": "Level 1 or Level 2 router, default is Level 1"}, "l1priority": {"type": "integer", "description": "1-127, 64 is default", "format": "int32"}}}, "StateHistoryRO": {"type": "object", "properties": {"state": {"enum": ["NOT_SYNCHRONIZED", "SYNCHRONIZING", "SYNCHRONIZED", "FAILED", "ABORTED", "DELETING", "DELETE_FAILED", "TIMEOUT"], "type": "string"}, "time": {"type": "string"}}}, "UserDataRO": {"type": "object"}, "OspfcircuitRO": {"type": "object", "properties": {"networkArea": {"type": "string", "description": "Network area in the form of an IPV4 address"}, "cost": {"type": "integer", "description": "Cost associated with the network interface", "format": "int32"}, "identifier": {"type": "string", "description": "Unique identifier for the OSPFv3 circuit"}, "carrier": {"type": "string", "description": "Identifies the carrier, ie. Section, Line, GCC0, GCC1. When an interface supports multiple layers, carrier may be required to uniquely identify the entry"}}}, "Ipv4RO": {"type": "object", "properties": {"ip": {"type": "string", "description": "Value of IP address, can be either a V4 "}, "ospfcircuit": {"items": {"$ref": "#/definitions/OspfcircuitRO"}, "type": "array"}, "dhcpRelayAgent": {"default": false, "type": "boolean", "description": "Defines if the interface is a V4 DHCP relay agent, must be off for unnumbered interfaces"}, "defaultGateway": {"type": "string", "description": "The next hope router IP, can be a V4 address"}, "subnetMask": {"type": "string", "description": "The mask which is applied on the interface, an IPV4 mask"}}}, "OneToManyRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array", "description": "The one-to-many relationship"}}}, "NetworkConstructExpectationDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/NetworkConstructExpectationRelationshipsRO"}, "attributes": {"description": "Expectation attributes to be kept by NSI.", "$ref": "#/definitions/NetworkConstructExpectationAttributesRO"}, "type": {"enum": ["networkConstructExpectations"], "type": "string", "description": "The network construct expectation type"}, "id": {"type": "string", "description": "The unique identifier of the network construct expectation"}}}, "GatewayRO": {"type": "object", "properties": {"overRide": {"default": false, "type": "boolean", "description": "Override the default definition of the gateway"}, "access": {"type": "string", "description": "Defines the type of Gateway ie. 6500 V4 values are: ARP, NAT, OSPF, STATIC, PRIVATEIP"}, "config": {"type": "string", "description": "Configuration of Gateway as standalone or redundant."}}}, "Ipv6InfrastructureRO": {"type": "object", "properties": {"dhcpRelayAgent": {"description": "DHCP Relay agent attributes.", "$ref": "#/definitions/DhcpRelayAgentRO_"}, "dhcpclient": {"default": false, "type": "boolean", "description": "Indicates if the DHCP client is enabled"}, "ospfRouter": {"description": "OSPF Router Details", "$ref": "#/definitions/OspfRouterRO_"}, "gateway": {"description": "Gateway Details of the network construct", "$ref": "#/definitions/GatewayRO_"}, "stackEnabled": {"default": false, "type": "boolean", "description": "Indicates if IPV4 is enabled"}}}, "NetworkConstructExpectationRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/NetworkConstructExpectationDataRO"}}}, "AttributePolicyOverrideRO": {"type": "object", "properties": {"attributeSource": {"type": "string", "description": "Attribute source, in case it has the value from some other references, (e.g. attributes.srlg is relationships.srlgs.id"}, "attributeName": {"type": "string", "description": "Attribute path(e.g. attribute.customerCode or relationship.endpoints)"}, "policies": {"items": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string"}, "type": "array"}}}, "DhcpRelayAgentRO_": {"type": "object", "properties": {"enable": {"default": false, "type": "boolean", "description": "Disable the DHCP relay agent"}, "serverIp": {"type": "string", "description": "The IP address the relay agent should forward to"}}}, "NetworkConstructPatchOperationRO": {"type": "object", "properties": {"attribute": {"type": "string", "description": "Name of an attribute to be deleted"}, "attributes": {"$ref": "#/definitions/NetworkConstructAttributesRO"}, "keys": {"items": {"type": "string"}, "type": "array", "description": "Used to target specific key(s) of the attribute to be deleted"}, "relationships": {"$ref": "#/definitions/NetworkConstructPlannedRelationshipsRO"}, "op": {"enum": ["replace", "update", "delete", "add"], "type": "string", "description": "Supported operation on a network construct resource"}}}, "NetworkConstructRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Referenced resources (discovered, planned, expectations, physical locations, or parent/child Network Constructs)"}, "data": {"$ref": "#/definitions/NetworkConstructDataRO"}}}, "OspfcircuitRO_": {"type": "object", "properties": {"networkArea": {"type": "string", "description": "Network area in the form of an IPV4 address"}, "cost": {"type": "integer", "description": "Cost associated with the network interface", "format": "int32"}, "identifier": {"type": "string", "description": "Unique identifier for the OSPFv3 circuit"}, "carrier": {"type": "string", "description": "Identifies the carrier, ie. Section, Line, GCC0, GCC1. When an interface supports multiple layers, carrier may be required to uniquely identify the entry"}}}, "ClientToClientRO": {"type": "object", "properties": {"intraCluster": {"enum": ["enabled", "disabled"], "type": "string", "description": "A flag to check if cluster is intra-cluster."}}}, "NetworkConstructDisplayDataRO": {"type": "object", "properties": {"displayMACAddress": {"type": "string", "description": "MAC address used for expectations."}, "displaySyncState": {"enum": ["PLANNED", "NOT_SYNCHRONIZED", "SYNCHRONIZING", "SYNCHRONIZED", "FAILED", "PENDING", "DELETING", "TIMEOUT", "AUDIT_PENDING", "AUDITING"], "type": "string"}, "displayName": {"type": "string", "description": "Name (e.g. TID) of the Network Construct"}, "displayIpAddress": {"type": "string", "description": "IP address used for expectations."}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_network_elements_location_(physical).json b/tapi/resources/MCP_4.0.0_network_elements_location_(physical).json
deleted file mode 100644
index 0f447fd876c76c88532bb46968569934b5a08b6a..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_network_elements_location_(physical).json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Retrieve, plan and modify physical locations resources", "title": "Network elements location (physical)"}, "paths": {"/nsi/api/v3/physicalLocations/{id}/expectations/{expectationId}": {"delete": {"responses": {"404": {"description": "The specified physical location or expectation does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Deleted physical location expectation successfully."}, "500": {"description": "Failed to delete physical location Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for Attribute {attribute_name} value {attribute_value}", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "parameters": [{"description": "Identifier of the physical location whose expectation is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation to delete", "required": true, "type": "string", "name": "expectationId", "in": "path"}], "tags": ["997 - nsiapiv3physicalLocations"], "description": "", "summary": "Delete an physical location expectation given the physical location id and expectation id", "operationId": "deletePhysicalLocationExpectationById"}, "get": {"responses": {"200": {"description": "Retrieved physical locations expectation successfully.", "schema": {"$ref": "#/definitions/PhysicalLocationExpectationRO"}}, "404": {"description": "The specified physical locations or expectation does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to retrieve the specified physical locations Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the physical location under which an expectation is to be retrieved", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation to retrieve", "required": true, "type": "string", "name": "expectationId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3physicalLocations"], "summary": "Retrieve an physical locations Expectation given the physical locations id and expectation id", "consumes": ["application/json"], "operationId": "getPhysicalLocationExpectationById"}}, "/nsi/api/physicalLocations/{id}/expectations/{expectationId}": {"delete": {"responses": {"404": {"description": "The specified physical location or expectation does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Deleted physical location expectation successfully."}, "500": {"description": "Failed to delete physical location Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for Attribute {attribute_name} value {attribute_value}", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "parameters": [{"description": "Identifier of the physical location whose expectation is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation to delete", "required": true, "type": "string", "name": "expectationId", "in": "path"}], "tags": ["000 - nsiapiphysicalLocations"], "description": "<p>LATEST VERSION: V3", "summary": "Delete an physical location expectation given the physical location id and expectation id", "operationId": "deletePhysicalLocationExpectationById"}, "get": {"responses": {"200": {"description": "Retrieved physical locations expectation successfully.", "schema": {"$ref": "#/definitions/PhysicalLocationExpectationRO"}}, "404": {"description": "The specified physical locations or expectation does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to retrieve the specified physical locations Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "Identifier of the physical location under which an expectation is to be retrieved", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Identifier of the expectation to retrieve", "required": true, "type": "string", "name": "expectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapiphysicalLocations"], "summary": "Retrieve an physical locations Expectation given the physical locations id and expectation id", "consumes": ["application/json"], "operationId": "getPhysicalLocationExpectationById"}}, "/nsi/api/v3/physicalLocations/{id}/userData/{userDataKey}": {"put": {"responses": {"200": {"description": "Physical location userData have been created on the server", "schema": {"$ref": "#/definitions/PhysicalLocationRO"}}, "404": {"description": "The specified physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of physical location under which to create or update the UserData", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the UserData to create or update", "required": true, "type": "string", "name": "userDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired userData value", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3physicalLocations"], "summary": "Creates or updates an UserData to a given physical location", "consumes": ["text/plain"], "operationId": "updateUserData"}, "delete": {"responses": {"404": {"description": "The specified physical location or userData does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Deleted physical location userData successfully."}, "500": {"description": "Failed to delete physical location userData - identifier.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "parameters": [{"description": "Identifier of the physical location whose UserData is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the UserData to delete", "required": true, "type": "string", "name": "userDataKey", "in": "path"}], "tags": ["997 - nsiapiv3physicalLocations"], "description": "", "summary": "Delete a userData from a given physical location", "operationId": "deletePhysicalLocationUserData"}}, "/nsi/api/physicalLocations/{id}": {"get": {"responses": {"200": {"description": "Retrieved physical location successfully.", "schema": {"$ref": "#/definitions/PhysicalLocationRO"}}, "404": {"description": "The specified physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to retrieve the specified physical location", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>Discovered location returned as a JSON format of physical location object", "parameters": [{"description": "Identifier of the physical location", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "List of comma separated resources to be side-loaded. The allowed values are: expectations", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapiphysicalLocations"], "summary": "Retrieve a physical location with given id", "consumes": ["application/json"], "operationId": "getPhysicalLocationById"}}, "/nsi/api/v3/physicalLocations/{id}/expectations": {"post": {"responses": {"201": {"description": "Physical location expectations have been created on the server", "schema": {"$ref": "#/definitions/PhysicalLocationRO"}}, "404": {"description": "The specified physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the physical location under which to create the expectation", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/PhysicalLocationExpectationDataRO"}, "description": "Physical location expectation to create", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3physicalLocations"], "summary": "Create an physical location expectation given the physical location id", "consumes": ["application/json"], "operationId": "postPhysicalLocationExpectations"}}, "/nsi/api/physicalLocations/{id}/userData/{userDataKey}": {"put": {"responses": {"200": {"description": "Physical location userData have been created on the server", "schema": {"$ref": "#/definitions/PhysicalLocationRO"}}, "404": {"description": "The specified physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of physical location under which to create or update the UserData", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the UserData to create or update", "required": true, "type": "string", "name": "userDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired userData value", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiphysicalLocations"], "summary": "Creates or updates an UserData to a given physical location", "consumes": ["text/plain"], "operationId": "updateUserData"}, "delete": {"responses": {"404": {"description": "The specified physical location or userData does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Deleted physical location userData successfully."}, "500": {"description": "Failed to delete physical location userData - identifier.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "parameters": [{"description": "Identifier of the physical location whose UserData is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the UserData to delete", "required": true, "type": "string", "name": "userDataKey", "in": "path"}], "tags": ["000 - nsiapiphysicalLocations"], "description": "<p>LATEST VERSION: V3", "summary": "Delete a userData from a given physical location", "operationId": "deletePhysicalLocationUserData"}}, "/nsi/api/physicalLocations/{id}/identifiers/{identifierKey}": {"put": {"responses": {"200": {"description": "Physical location userData identifier have been created on the server", "schema": {"$ref": "#/definitions/PhysicalLocationRO"}}, "404": {"description": "The specified physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the physical location under which to create or update the identifier", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to create or update", "required": true, "type": "string", "name": "identifierKey", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "identifier", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiphysicalLocations"], "summary": "Creates or updates an Identifier to a given physical location", "consumes": ["application/json"], "operationId": "updatePhysicalLocationIdentifiers"}, "delete": {"responses": {"404": {"description": "The specified physical location or identifier does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Deleted physical location identifier successfully."}, "500": {"description": "Failed to delete physical location identifier.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "Identifier of the physical location whose identifier is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to delete", "required": true, "type": "string", "name": "identifierKey", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapiphysicalLocations"], "summary": "Delete an Identifier from a given physical location", "operationId": "deletePhysicalLocationIdentifiers"}}, "/nsi/api/physicalLocations": {"post": {"responses": {"201": {"description": "Physical location has been created on the server"}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/PhysicalLocationRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>Upon success, code 201 is returned and the output consists of JSON objects representing the physical location.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"1\",\n    \"type\": \"physicalLocation\"\n  }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/PhysicalLocationRO"}, "description": "Request to create an physical location.", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiphysicalLocations"], "summary": "Creates or updates a physical location", "consumes": ["application/json"], "operationId": "postPhysicalLocation"}, "get": {"responses": {"200": {"description": "List of physical locations", "schema": {"$ref": "#/definitions/PhysicalLocationListRO"}}, "404": {"description": "Unable to retrieve physical location"}, "500": {"description": "Retrieval of physical location failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request"}}, "description": "<p>LATEST VERSION: V3<p>Discovered locations returned as a JSON list of physical location objects", "parameters": [{"description": "List of comma separated resources to be side-loaded. The allowed values are: expectations", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["000 - nsiapiphysicalLocations"], "summary": "Get list of physical locations", "consumes": ["application/json"], "operationId": "getPhysicalLocations"}}, "/nsi/api/physicalLocations/{physicalLocationId}": {"delete": {"responses": {"500": {"description": "Failed to delete physical location (error message provided).", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "404": {"description": "The specified physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Deleted physical location successfully."}, "409": {"description": "The physical location is related to networkConstruct/networkConstructExpectation, cannot delete.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "Identifier of the physical location to delete", "required": true, "type": "string", "name": "physicalLocationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapiphysicalLocations"], "summary": "Deletes a specific physical location", "consumes": ["application/json"], "operationId": "deletePhysicalLocationById"}}, "/nsi/api/v3/physicalLocations/{id}": {"get": {"responses": {"200": {"description": "Retrieved physical location successfully.", "schema": {"$ref": "#/definitions/PhysicalLocationRO"}}, "404": {"description": "The specified physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to retrieve the specified physical location", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the physical location", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "List of comma separated resources to be side-loaded. The allowed values are: expectations", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3physicalLocations"], "summary": "Retrieve a physical location with given id", "consumes": ["application/json"], "operationId": "getPhysicalLocationById"}}, "/nsi/api/v3/physicalLocations/{id}/identifiers/{identifierKey}": {"put": {"responses": {"200": {"description": "Physical location userData identifier have been created on the server", "schema": {"$ref": "#/definitions/PhysicalLocationRO"}}, "404": {"description": "The specified physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the physical location under which to create or update the identifier", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to create or update", "required": true, "type": "string", "name": "identifierKey", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "identifier", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3physicalLocations"], "summary": "Creates or updates an Identifier to a given physical location", "consumes": ["application/json"], "operationId": "updatePhysicalLocationIdentifiers"}, "delete": {"responses": {"404": {"description": "The specified physical location or identifier does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Deleted physical location identifier successfully."}, "500": {"description": "Failed to delete physical location identifier.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the physical location whose identifier is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to delete", "required": true, "type": "string", "name": "identifierKey", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3physicalLocations"], "summary": "Delete an Identifier from a given physical location", "operationId": "deletePhysicalLocationIdentifiers"}}, "/nsi/api/v3/physicalLocations": {"post": {"responses": {"201": {"description": "Physical location has been created on the server"}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/PhysicalLocationRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon success, code 201 is returned and the output consists of JSON objects representing the physical location.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"1\",\n    \"type\": \"physicalLocation\"\n  }\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/PhysicalLocationRO"}, "description": "Request to create an physical location.", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3physicalLocations"], "summary": "Trigger the  creation of physical location", "consumes": ["application/json"], "operationId": "postPhysicalLocation"}, "get": {"responses": {"200": {"description": "List of physical locations", "schema": {"$ref": "#/definitions/PhysicalLocationListRO"}}, "404": {"description": "Unable to retrieve physical location"}, "500": {"description": "Retrieval of physical location failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request"}}, "description": "Discovered locations returned as a JSON list of physical location objects", "parameters": [{"description": "List of comma separated resources to be side-loaded. The allowed values are: expectations", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3physicalLocations"], "summary": "Get list of physical locations", "consumes": ["application/json"], "operationId": "getPhysicalLocations"}}, "/nsi/api/physicalLocations/{id}/expectations": {"post": {"responses": {"201": {"description": "Physical location expectations have been created on the server", "schema": {"$ref": "#/definitions/PhysicalLocationRO"}}, "404": {"description": "The specified physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the physical location under which to create the expectation", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/PhysicalLocationExpectationDataRO"}, "description": "Physical location expectation to create", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapiphysicalLocations"], "summary": "Create an physical location expectation given the physical location id", "consumes": ["application/json"], "operationId": "postPhysicalLocationExpectations"}}, "/nsi/api/v2_0/physicalLocations": {"post": {"responses": {"201": {"description": "Physical location has been created on the server"}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/PhysicalLocationRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon success, code 201 is returned and the output consists of JSON objects representing the physical location.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"1\",\n    \"type\": \"physicalLocation\"\n  }\n}</code></pre>", "parameters": [{"schema": {"$ref": "#/definitions/PhysicalLocationRO"}, "description": "Request to create an physical location.", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0physicalLocations"], "summary": "Creates or updates a physical location", "consumes": ["application/json"], "operationId": "postPhysicalLocation"}, "get": {"responses": {"200": {"description": "List of physical locations", "schema": {"$ref": "#/definitions/PhysicalLocationListRO"}}, "404": {"description": "Unable to retrieve physical location"}, "500": {"description": "Retrieval of physical location failed (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request"}}, "description": "Discovered locations returned as a JSON list of physical location objects", "parameters": [{"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0physicalLocations"], "summary": "Get list of physical locations", "consumes": ["application/json"], "operationId": "getPhysicalLocations"}}, "/nsi/api/v2_0/physicalLocations/{physicalLocationId}": {"delete": {"responses": {"500": {"description": "Failed to delete physical location (error message provided).", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "404": {"description": "The specified physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Deleted physical location successfully."}, "409": {"description": "The physical location is related to networkConstruct/networkConstructExpectation, cannot delete.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the physical location to delete", "required": true, "type": "string", "name": "physicalLocationId", "in": "path"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0physicalLocations"], "summary": "Deletes a specific physical location", "consumes": ["application/json"], "operationId": "deletePhysicalLocationById"}}, "/nsi/api/v3/physicalLocations/{physicalLocationId}": {"delete": {"responses": {"500": {"description": "Failed to delete physical location (error message provided).", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "404": {"description": "The specified physical location does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "204": {"description": "Deleted physical location successfully."}, "409": {"description": "The physical location is related to networkConstruct/networkConstructExpectation, cannot delete.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the physical location to delete", "required": true, "type": "string", "name": "physicalLocationId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3physicalLocations"], "summary": "Delete a physical location with given id.", "consumes": ["application/json"], "operationId": "deletePhysicalLocationById"}}}, "schemes": ["http", "https"], "tags": [{"name": "000 - nsiapiphysicalLocations", "description": "Retrieve, and manage the physical location resources<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "997 - nsiapiv3physicalLocations", "description": "Retrieve, and manage the physical location resources V3."}, {"name": "998 - nsiapiv2_0physicalLocations", "description": "Retrieve, and manage the physical location resources (version 2)"}], "definitions": {"PhysicalLocationRelationshipsRO": {"type": "object", "properties": {"physicalLocationDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "physicalLocationExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "physicalLocationPlanned": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "PhysicalLocationExpectationRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/PhysicalLocationExpectationDataRO"}}}, "AdditionalAttributesRO": {"type": "object"}, "OneToOneRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipDataRO"}}}, "ErrorSourceRO": {"type": "object", "properties": {"parameter": {"type": "string", "description": "URI query parameter that caused the error"}, "pointer": {"type": "string", "description": "JSON Pointer to the associated entity in the request document"}}}, "PhysicalLocationListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Array of associated expectations"}, "data": {"items": {"$ref": "#/definitions/PhysicalLocationDataRO"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "IdentifierRO": {"type": "object"}, "ErrorRO": {"type": "object", "properties": {"source": {"description": "Error source", "$ref": "#/definitions/ErrorSourceRO"}, "code": {"type": "string", "description": "Error code"}, "detail": {"type": "string", "description": "Error details"}, "title": {"type": "string", "description": "Error title"}}}, "GeoLocationRO": {"type": "object", "properties": {"latitude": {"type": "string", "description": "Latitude of the device location"}, "longitude": {"type": "string", "description": "Longitude of the device location"}, "zone": {"type": "string", "description": "Zone of the device location"}}}, "PhysicalLocationExpectationAttributesRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "intentId": {"type": "string", "description": "The intent id of the physical expectation location"}, "name": {"type": "string", "description": "Name of the physical location."}, "geoLocation": {"description": "The geography location of the device", "$ref": "#/definitions/GeoLocationRO"}}}, "PhysicalLocationAttributesRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "name": {"type": "string", "description": "Name of the physical location."}, "geoLocation": {"description": "The geography location of the device", "$ref": "#/definitions/GeoLocationRO"}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePoliciesRO"}}}, "RelationshipMetaDataRO": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean", "description": "Flags whether the included relationship object is partially populated or not"}}}, "PhysicalLocationExpectationDataRO": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/PhysicalLocationExpectationAttributesRO"}, "type": {"enum": ["physicalLocationExpectations"], "type": "string", "description": "The physical location expectation type"}, "id": {"type": "string", "description": "The unique identifier of the physical location"}}}, "LinksRO": {"type": "object", "properties": {"last": {"type": "string", "description": "The last page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "next": {"type": "string", "description": "The next page of data", "format": "uri"}, "current": {"type": "string", "description": "The current page of data", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "ErrorsRO": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/ErrorRO"}, "type": "array", "description": "A list of errors"}}}, "AttributePoliciesRO": {"type": "object", "properties": {"defaultAttributeSourcePolicy": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string", "description": "Source of attribute."}, "overrides": {"items": {"$ref": "#/definitions/AttributePolicyOverrideRO"}, "type": "array"}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "OneToManyRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array", "description": "The one-to-many relationship"}}}, "PhysicalLocationRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Referenced resources (planned, expectation, discovered)"}, "data": {"$ref": "#/definitions/PhysicalLocationDataRO"}}}, "PhysicalLocationDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/PhysicalLocationRelationshipsRO"}, "attributes": {"$ref": "#/definitions/PhysicalLocationAttributesRO"}, "type": {"enum": ["physicalLocation"], "type": "string", "description": "The physical location type"}, "id": {"type": "string", "description": "The unique identifier of the physical location"}}}, "AttributePolicyOverrideRO": {"type": "object", "properties": {"attributeSource": {"type": "string", "description": "Attribute source, in case it has the value from some other references, (e.g. attributes.srlg is relationships.srlgs.id"}, "attributeName": {"type": "string", "description": "Attribute path(e.g. attribute.customerCode or relationship.endpoints)"}, "policies": {"items": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string"}, "type": "array"}}}, "UserDataRO": {"type": "object"}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_open_roadm_nbi.json b/tapi/resources/MCP_4.0.0_open_roadm_nbi.json
deleted file mode 100644
index 72f742b7d7a8ef0f5abb4edc346bd17c8d0c72d7..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_open_roadm_nbi.json
+++ /dev/null
@@ -1,2492 +0,0 @@
-{
-  "info": {
-    "version": "1.0",
-    "description": "OpenRoadmNBI",
-    "title": "Open ROADM NBI"
-  },
-  "paths": {
-    "/openroadmnbi/restconf/operations/configure": {
-      "put": {
-        "responses": {
-          "200": {
-            "description": "OK"
-          },
-          "500": {
-            "description": "Internal system error"
-          }
-        },
-        "parameters": [
-          {
-            "schema": {
-              "$ref": "#/definitions/(configure)input"
-            },
-            "required": true,
-            "description": "Configure Input",
-            "name": "(configure)input",
-            "in": "body"
-          }
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Configure"
-        ],
-        "summary": "Configure parameters",
-        "operationId": "configure",
-        "description": ""
-      }
-    },
-    "/openroadmnbi/restconf/data/org-openroadm-service:service-list": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "Services retrieved"
-          },
-          "500": {
-            "description": "Internal system error"
-          }
-        },
-        "parameters": [],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Service Retrieval"
-        ],
-        "summary": "Get all Services",
-        "operationId": "getAllServices",
-        "description": ""
-      }
-    },
-    "/openroadmnbi/restconf/streams/stream/event-subscription/org-openroadm-service-yang": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "Subscribed to org-openroadm-service-yang stream"
-          },
-          "500": {
-            "description": "Internal system error"
-          }
-        },
-        "parameters": [],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Stream Subscription"
-        ],
-        "summary": "Subscribe to kafka stream",
-        "operationId": "kafkaStreamSubscription",
-        "description": ""
-      }
-    },
-    "/openroadmnbi/restconf/data/org-openroadm-service:service-list/services/{service-name}": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "Services retrieved"
-          },
-          "404": {
-            "description": "Service not found"
-          },
-          "500": {
-            "description": "Internal system error"
-          }
-        },
-        "parameters": [
-          {
-            "required": true,
-            "type": "string",
-            "description": "The unique identifier of the service",
-            "name": "service-name",
-            "in": "path"
-          }
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Service Retrieval By Service Name"
-        ],
-        "summary": "Get Services By Service Name",
-        "operationId": "getServicesByServiceName",
-        "description": ""
-      }
-    },
-    "/openroadmnbi/restconf/operations/org-openroadm-service:service-create": {
-      "post": {
-        "responses": {
-          "201": {
-            "description": "Created"
-          },
-          "200": {
-            "description": "OK"
-          },
-          "500": {
-            "description": "Internal system error"
-          }
-        },
-        "parameters": [
-          {
-            "schema": {
-              "$ref": "#/definitions/(service-create)input"
-            },
-            "required": true,
-            "description": "Service Create Input",
-            "name": "(service-create)input",
-            "in": "body"
-          }
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Service Create"
-        ],
-        "summary": "Creates a Service",
-        "operationId": "createService",
-        "description": ""
-      }
-    },
-    "/openroadmnbi/.well-known/host-meta": {},
-    "/openroadmnbi/restconf/operations/org-openroadm-service:service-ber-test": {
-      "post": {
-        "responses": {
-          "200": {
-            "description": "OK"
-          },
-          "500": {
-            "description": "Internal system error"
-          }
-        },
-        "parameters": [
-          {
-            "schema": {
-              "$ref": "#/definitions/(service-ber-test)input"
-            },
-            "required": true,
-            "description": "Service BER Test Input",
-            "name": "(service-ber-test)input",
-            "in": "body"
-          }
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Service BER Test"
-        ],
-        "summary": "Check BER Test after creating service",
-        "operationId": "serviceBERTest",
-        "description": ""
-      }
-    },
-    "/openroadmnbi/restconf/operations/org-openroadm-service:service-delete": {
-      "post": {
-        "responses": {
-          "200": {
-            "description": "OK"
-          },
-          "404": {
-            "description": "Service not Found"
-          },
-          "500": {
-            "description": "Internal system error"
-          }
-        },
-        "parameters": [
-          {
-            "schema": {
-              "$ref": "#/definitions/(service-delete)input"
-            },
-            "required": true,
-            "description": "Service Delete Input",
-            "name": "(service-delete)input",
-            "in": "body"
-          }
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Service Delete"
-        ],
-        "summary": "Deletes a Service",
-        "operationId": "deleteService",
-        "description": ""
-      }
-    },
-    "/openroadmnbi/restconf/data/org-openroadm-service:service-list/services": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "Services retrieved"
-          },
-          "500": {
-            "description": "Internal system error"
-          }
-        },
-        "parameters": [
-          {
-            "required": false,
-            "type": "string",
-            "description": "Filter by Connection Type. The allowed values are: service, infrastructure, roadm-line",
-            "name": "connection-type",
-            "in": "query"
-          },
-          {
-            "required": false,
-            "type": "string",
-            "description": "Filter by Supporting Service Name",
-            "name": "supporting-service-name",
-            "in": "query"
-          }
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Retrieve services with query parameters"
-        ],
-        "summary": "Retrieve services with query parameters",
-        "operationId": "getServicesWithQueryParameters",
-        "description": ""
-      }
-    },
-    "/openroadmnbi/pm/queries/execute": {
-      "post": {
-        "responses": {
-          "201": {
-            "description": "Query Completed",
-            "schema": {
-              "$ref": "#/definitions/QueryResult"
-            }
-          },
-          "404": {
-            "description": "Facility not found"
-          },
-          "500": {
-            "description": "Internal system error"
-          },
-          "206": {
-            "description": "Query Completed: Partial success",
-            "schema": {
-              "$ref": "#/definitions/QueryResult"
-            }
-          }
-        },
-        "parameters": [
-          {
-            "schema": {
-              "$ref": "#/definitions/Query"
-            },
-            "required": true,
-            "description": "PM query to be executed on NEs, Retrieves RPM or HPM",
-            "name": "body",
-            "in": "body"
-          }
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Execute PM query"
-        ],
-        "summary": "Execute a PM query. Retrieves Real-Time or Historical Performance Metrics",
-        "operationId": "executeQuery",
-        "description": ""
-      }
-    },
-    "/openroadmnbi/restconf/operations/org-openroadm-service:service-feasibility-check": {
-      "post": {
-        "responses": {
-          "200": {
-            "description": "OK"
-          },
-          "500": {
-            "description": "Internal system error"
-          }
-        },
-        "parameters": [
-          {
-            "schema": {
-              "$ref": "#/definitions/(service-feasibility-check)input"
-            },
-            "required": true,
-            "description": "Service Feasibility Check Input",
-            "name": "(service-feasibility-check)input",
-            "in": "body"
-          }
-        ],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Service Feasibility Check"
-        ],
-        "summary": "Check feasibility of creating a service",
-        "operationId": "serviceFeasibilityCheck",
-        "description": ""
-      }
-    },
-    "/openroadmnbi/restconf/operations/org-openroadm-service:event-subscription": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "Subscribed to service events"
-          },
-          "500": {
-            "description": "Internal system error"
-          }
-        },
-        "parameters": [],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Event Subscription"
-        ],
-        "summary": "Subscribe to services events",
-        "operationId": "eventSubscription",
-        "description": ""
-      }
-    },
-    "/openroadmnbi/restconf/data/configuration": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "Configuration retreived"
-          },
-          "500": {
-            "description": "Internal system error"
-          }
-        },
-        "parameters": [],
-        "produces": [
-          "application/json"
-        ],
-        "tags": [
-          "Configuration"
-        ],
-        "summary": "Get configured parameters",
-        "operationId": "configuration",
-        "description": ""
-      }
-    }
-  },
-  "schemes": [
-    "http"
-  ],
-  "tags": [
-    {
-      "name": "Open ROADM NBI"
-    }
-  ],
-  "basePath": "/",
-  "definitions": {
-    "AdditionalAttributes": {
-      "type": "object"
-    },
-    "QueryResultAttributes": {
-      "type": "object",
-      "properties": {
-        "metrics": {
-          "items": {
-            "$ref": "#/definitions/MetricsEventData"
-          },
-          "type": "array",
-          "description": "A collection of one or more Metric objects."
-        },
-        "status": {
-          "enum": [
-            "inProgress",
-            "completed",
-            "error"
-          ],
-          "type": "string",
-          "description": "The status of this QueryResult"
-        },
-        "errors": {
-          "$ref": "#/definitions/Errors"
-        },
-        "nodeId": {
-          "type": "string",
-          "nodeId": "The id of the node we were querying"
-        }
-      }
-    },
-    "Errors": {
-      "type": "object",
-      "description": "Container with 1 or more errors",
-      "properties": {
-        "errors": {
-          "items": {
-            "$ref": "#/definitions/Error"
-          },
-          "type": "array"
-        }
-      }
-    },
-    "QueryResult": {
-      "type": "object",
-      "description": "The result of a query operation, this result is JSON API compliant",
-      "properties": {
-        "data": {
-          "items": {
-            "$ref": "#/definitions/QueryResultData"
-          },
-          "type": "array",
-          "description": "The collection of result data"
-        }
-      }
-    },
-    "(service-delete)input": {
-      "additionalProperties": false,
-      "$schema": "http://json-schema.org/draft-04/schema#",
-      "type": "object",
-      "properties": {
-        "input": {
-          "additionalProperties": false,
-          "required": [
-            "sdnc-request-header"
-          ],
-          "type": "object",
-          "properties": {
-            "sdnc-request-header": {
-              "type": "object",
-              "properties": {
-                "request-id": {
-                  "type": "string"
-                },
-                "rpc-action": {
-                  "enum": [
-                    "service-create",
-                    "service-feasibility-check",
-                    "service-delete",
-                    "equipment-notification",
-                    "temp-service-create",
-                    "temp-service-delete",
-                    "service-roll",
-                    "service-reconfigure",
-                    "service-ber-test",
-                    "service-restoration",
-                    "service-reversion",
-                    "service-reroute",
-                    "service-reroute-confirm",
-                    "network-re-optimization"
-                  ],
-                  "type": "string"
-                },
-                "notification-url": {
-                  "type": "string"
-                },
-                "request-system-id": {
-                  "type": "string"
-                }
-              }
-            },
-            "service-delete-req-info": {
-              "required": [
-                "service-name"
-              ],
-              "type": "object",
-              "properties": {
-                "due-date": {
-                  "type": "string"
-                },
-                "tail-retention": {
-                  "type": "string"
-                },
-                "service-name": {
-                  "type": "string"
-                }
-              }
-            }
-          }
-        }
-      },
-      "title": "Delete Service Input"
-    },
-    "QueryResultData": {
-      "type": "object",
-      "description": "The data of the query result",
-      "properties": {
-        "attributes": {
-          "$ref": "#/definitions/QueryResultAttributes"
-        },
-        "type": {
-          "enum": [
-            "results"
-          ],
-          "type": "string",
-          "description": "Type of this result, used for JSON API compliance."
-        },
-        "id": {
-          "type": "string",
-          "description": "The id of this data object."
-        }
-      }
-    },
-    "MetricsEventData": {
-      "required": [
-        "attributes"
-      ],
-      "type": "object",
-      "properties": {
-        "attributes": {
-          "$ref": "#/definitions/MetricEventAttributes"
-        },
-        "type": {
-          "type": "string",
-          "description": "The type of the metric data"
-        }
-      }
-    },
-    "Criteria": {
-      "type": "object",
-      "description": "Optional criteria to specify the extent of the desired result set",
-      "properties": {
-        "endTime": {
-          "type": "string",
-          "description": "When specified, retrieves historical metrics up to the provided date. Format: yyyy-MM-ddTHH:mm:ss.SSSZ (Ex.: 2016-08-20T15:50:11.152Z). If endTime is specific startTime should be specified as well."
-        },
-        "startTime": {
-          "type": "string",
-          "description": "When specified, retrieves historical metrics starting at the given date. Format: yyyy-MM-ddTHH:mm:ss.SSSZ (Ex.: 2016-08-20T15:50:11.152+04:00). If startTime is specified endTime should also be specified."
-        },
-        "parameters": {
-          "items": {
-            "type": "string"
-          },
-          "type": "array",
-          "description": "List of PM parameters to query. This corresponds the `nativeParameter` value in `tags`"
-        },
-        "granularity": {
-          "items": {
-            "enum": [
-              "UNTIMED",
-              "15_MINUTE",
-              "24_HOUR",
-              "ALL"
-            ]
-          },
-          "type": "array",
-          "description": "Specify the `granularity`. Accepted values: UNTIMED, 15_MINUTE, 24_HOUR, ALL."
-        }
-      }
-    },
-    "QueryData": {
-      "type": "object",
-      "description": "The data of the query input",
-      "properties": {
-        "attributes": {
-          "$ref": "#/definitions/QueryAttributes"
-        },
-        "type": {
-          "enum": [
-            "queries"
-          ],
-          "type": "string"
-        }
-      }
-    },
-    "(configure)input": {
-      "required": [
-        "retry-count",
-        "retry-interval"
-      ],
-      "properties": {
-        "retry-interval": {
-          "default": 3,
-          "type": "integer"
-        },
-        "retry-count": {
-          "default": 3,
-          "type": "integer"
-        }
-      },
-      "additionalProperties": false,
-      "definitions": {},
-      "$schema": "http://json-schema.org/draft-04/schema#",
-      "type": "object",
-      "id": "http://example.com/example.json"
-    },
-    "(service-ber-test)input": {
-      "additionalProperties": false,
-      "$schema": "http://json-schema.org/draft-04/schema#",
-      "type": "object",
-      "properties": {
-        "input": {
-          "additionalProperties": false,
-          "required": [
-            "sdnc-request-header"
-          ],
-          "type": "object",
-          "properties": {
-            "sdnc-request-header": {
-              "required": [
-                "service-name"
-              ],
-              "type": "object",
-              "properties": {
-                "rpc-action": {
-                  "enum": [
-                    "service-create",
-                    "service-feasibility-check",
-                    "service-delete",
-                    "equipment-notification",
-                    "temp-service-create",
-                    "temp-service-delete",
-                    "service-roll",
-                    "service-reconfigure",
-                    "service-ber-test",
-                    "service-restoration",
-                    "service-reversion",
-                    "service-reroute",
-                    "service-reroute-confirm",
-                    "network-re-optimization"
-                  ],
-                  "type": "string"
-                },
-                "request-id": {
-                  "type": "string"
-                },
-                "retry-attempts": {
-                  "type": "number"
-                },
-                "target-prefec-ber": {
-                  "type": "string"
-                },
-                "service-name": {
-                  "type": "string"
-                },
-                "notification-url": {
-                  "type": "string"
-                },
-                "request-system-id": {
-                  "type": "string"
-                }
-              }
-            }
-          }
-        }
-      },
-      "title": "Service Pre FEC Input"
-    },
-    "Tags": {
-      "type": "object",
-      "properties": {
-        "facilityNameNative": {
-          "type": "string",
-          "description": "facilityName as returned by the network element. Example: OTM4-12-1-1"
-        },
-        "direction": {
-          "enum": [
-            "RECEIVE",
-            "TRANSMIT",
-            "NOT APPLICABLE",
-            "ALL"
-          ],
-          "type": "string",
-          "description": "Possible values: RECEIVE, TRANSMIT, NOT APPLICABLE, ALL"
-        },
-        "location": {
-          "enum": [
-            "NEAR_END",
-            "FAR_END"
-          ],
-          "type": "string",
-          "description": "Possible values: NEAR_END, FAR_END"
-        },
-        "granularity": {
-          "enum": [
-            "UNTIMED",
-            "15_MINUTE",
-            "24_HOUR"
-          ],
-          "type": "string",
-          "description": "Possible values: UNTIMED, 15_MINUTE, 24_HOUR"
-        },
-        "parameterNative": {
-          "type": "string",
-          "description": "The native parameter as returned by the network element"
-        },
-        "unit": {
-          "type": "string",
-          "description": "The unit of the metric. This value might be empty in some cases"
-        }
-      }
-    },
-    "MetaTags": {
-      "type": "object",
-      "description": "Meta tags for the retrieved metrics, only available for real time queries",
-      "properties": {
-        "binStateNative": {
-          "enum": [
-            "COMPL",
-            "PRTL",
-            "ADJ",
-            "NA"
-          ],
-          "description": "The bin state as shown by the network element."
-        },
-        "channelID": {
-          "type": "string",
-          "description": "logical channel number assignment for each defined wavelength. Range 1 - 88."
-        },
-        "altAidNative": {
-          "type": "string",
-          "description": "A physical location identifier for a facility consisting of a Bay and Shelf identifier. Example, OTM4-1-2-1-1"
-        },
-        "binState": {
-          "enum": [
-            "COMPLETED",
-            "ADJUSTED",
-            "PARTIAL",
-            "NOT AVAILABLE"
-          ],
-          "type": "string",
-          "description": "Possible values: COMPLETED, ADJUSTED (The register data is suspect), PARTIAL (Interval Incomplete), NOT AVAILABLE"
-        },
-        "portmodeNative": {
-          "type": "string",
-          "description": "Optical port market preference, as shown by the network element"
-        }
-      }
-    },
-    "MetricEventAttributes": {
-      "type": "object",
-      "properties": {
-        "meta_tags": {
-          "$ref": "#/definitions/MetaTags"
-        },
-        "tags": {
-          "$ref": "#/definitions/Tags"
-        },
-        "resourceId": {
-          "type": "string"
-        },
-        "version": {
-          "type": "string",
-          "description": "The version of the response"
-        },
-        "values": {
-          "items": {
-            "$ref": "#/definitions/Sample"
-          },
-          "type": "array",
-          "description": "A collection of one or more samples"
-        },
-        "error": {
-          "$ref": "#/definitions/Error"
-        }
-      }
-    },
-    "ResourceObject": {
-      "type": "object",
-      "description": "Specify a `device` and `nativePmFacilityName`. For HPM one of the parameters is required, for RPM both parameters are required",
-      "properties": {
-        "device": {
-          "type": "string",
-          "description": "Name of the device to query, Optional for HPM, required for RPM"
-        },
-        "nativePmFacilityName": {
-          "type": "string",
-          "description": "Physical ID of PM facility in the format <bay>-<shelf>-<slot>-<port> (Ex.: 1-2-7-1). Optional for HPM, required for RPM"
-        }
-      }
-    },
-    "(service-create)input": {
-      "additionalProperties": false,
-      "$schema": "http://json-schema.org/draft-04/schema#",
-      "type": "object",
-      "properties": {
-        "input": {
-          "additionalProperties": false,
-          "required": [
-            "sdnc-request-header",
-            "service-name",
-            "connection-type"
-          ],
-          "type": "object",
-          "properties": {
-            "customer": {
-              "type": "string"
-            },
-            "nci-code": {
-              "type": "string"
-            },
-            "nc-code": {
-              "type": "string"
-            },
-            "customer-contact": {
-              "type": "string"
-            },
-            "hard-constraints": {
-              "oneOf": [
-                {
-                  "properties": {
-                    "exclude": {
-                      "type": "object",
-                      "properties": {
-                        "supporting-service-name": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "fiber-bundle": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "node-id": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "site": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    },
-                    "include": {
-                      "type": "object",
-                      "properties": {
-                        "supporting-service-name": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "fiber-bundle": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "node-id": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "site": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    },
-                    "diversity": {
-                      "type": "object",
-                      "properties": {
-                        "existing-service": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "existing-service-applicability": {
-                          "type": "object",
-                          "properties": {
-                            "node": {
-                              "type": "boolean"
-                            },
-                            "srlg": {
-                              "type": "boolean"
-                            },
-                            "site": {
-                              "type": "boolean"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "latency": {
-                      "type": "object",
-                      "properties": {
-                        "max-latency": {
-                          "type": "number"
-                        }
-                      }
-                    },
-                    "customer-code": {
-                      "items": {
-                        "type": "string"
-                      },
-                      "type": "array"
-                    }
-                  }
-                },
-                {
-                  "properties": {
-                    "co-routing": {
-                      "type": "object",
-                      "properties": {
-                        "existing-service": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    },
-                    "customer-code": {
-                      "items": {
-                        "type": "string"
-                      },
-                      "type": "array"
-                    }
-                  }
-                }
-              ],
-              "type": "object"
-            },
-            "service-z-end": {
-              "required": [
-                "service-format",
-                "clli",
-                "node-id",
-                "optic-type"
-              ],
-              "type": "object",
-              "properties": {
-                "rx-direction": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "lgx": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "lgx-port-rack": {
-                          "type": "string"
-                        },
-                        "lgx-port-shelf": {
-                          "type": "string"
-                        },
-                        "lgx-port-name": {
-                          "type": "string"
-                        },
-                        "lgx-device-name": {
-                          "type": "string"
-                        }
-                      }
-                    },
-                    "tail": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "xponder-port": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "circuit-pack-name": {
-                              "type": "string"
-                            },
-                            "port-name": {
-                              "type": "string"
-                            }
-                          }
-                        },
-                        "tail-roadm-port-aid": {
-                          "type": "string"
-                        },
-                        "tail-roadm-port-rack-location": {
-                          "type": "string"
-                        },
-                        "tail-roadm": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "node-id": {
-                              "type": "string"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "port": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "port-rack": {
-                          "type": "string"
-                        },
-                        "port-sub-slot": {
-                          "type": "string"
-                        },
-                        "port-shelf": {
-                          "type": "string"
-                        },
-                        "port-device-name": {
-                          "type": "string"
-                        },
-                        "port-name": {
-                          "type": "string"
-                        },
-                        "port-slot": {
-                          "type": "string"
-                        },
-                        "port-type": {
-                          "type": "string"
-                        }
-                      }
-                    }
-                  }
-                },
-                "clli": {
-                  "type": "string"
-                },
-                "optic-type": {
-                  "enum": [
-                    "gray",
-                    "dwdm"
-                  ],
-                  "type": "string"
-                },
-                "service-rate": {
-                  "type": "number"
-                },
-                "service-format": {
-                  "enum": [
-                    "Ethernet",
-                    "OTU",
-                    "OC",
-                    "STM",
-                    "OMS",
-                    "ODU",
-                    "OTM"
-                  ],
-                  "type": "string"
-                },
-                "site": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {}
-                },
-                "user-label": {
-                  "type": "string"
-                },
-                "tx-direction": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "lgx": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "lgx-port-rack": {
-                          "type": "string"
-                        },
-                        "lgx-port-shelf": {
-                          "type": "string"
-                        },
-                        "lgx-port-name": {
-                          "type": "string"
-                        },
-                        "lgx-device-name": {
-                          "type": "string"
-                        }
-                      }
-                    },
-                    "tail": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "xponder-port": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "circuit-pack-name": {
-                              "type": "string"
-                            },
-                            "port-name": {
-                              "type": "string"
-                            }
-                          }
-                        },
-                        "tail-roadm-port-aid": {
-                          "type": "string"
-                        },
-                        "tail-roadm-port-rack-location": {
-                          "type": "string"
-                        },
-                        "tail-roadm": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "node-id": {
-                              "type": "string"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "port": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "port-rack": {
-                          "type": "string"
-                        },
-                        "port-sub-slot": {
-                          "type": "string"
-                        },
-                        "port-shelf": {
-                          "type": "string"
-                        },
-                        "port-device-name": {
-                          "type": "string"
-                        },
-                        "port-name": {
-                          "type": "string"
-                        },
-                        "port-slot": {
-                          "type": "string"
-                        },
-                        "port-type": {
-                          "type": "string"
-                        }
-                      }
-                    }
-                  }
-                },
-                "router": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "url": {
-                      "type": "string"
-                    },
-                    "node-id": {
-                      "type": "string"
-                    },
-                    "ip-address": {
-                      "anyOf": [
-                        {
-                          "type": "string"
-                        }
-                      ]
-                    }
-                  }
-                },
-                "node-id": {
-                  "type": "string"
-                }
-              }
-            },
-            "sdnc-request-header": {
-              "type": "object",
-              "properties": {
-                "request-id": {
-                  "type": "string"
-                },
-                "rpc-action": {
-                  "enum": [
-                    "service-create",
-                    "service-feasibility-check",
-                    "service-delete",
-                    "equipment-notification",
-                    "temp-service-create",
-                    "temp-service-delete",
-                    "service-roll",
-                    "service-reconfigure",
-                    "service-ber-test",
-                    "service-restoration",
-                    "service-reversion",
-                    "service-reroute",
-                    "service-reroute-confirm",
-                    "network-re-optimization"
-                  ],
-                  "type": "string"
-                },
-                "notification-url": {
-                  "type": "string"
-                },
-                "request-system-id": {
-                  "type": "string"
-                }
-              }
-            },
-            "due-date": {
-              "type": "string"
-            },
-            "connection-type": {
-              "enum": [
-                "service",
-                "infrastructure"
-              ],
-              "type": "string"
-            },
-            "service-a-end": {
-              "required": [
-                "service-format",
-                "clli",
-                "node-id",
-                "optic-type"
-              ],
-              "type": "object",
-              "properties": {
-                "rx-direction": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "lgx": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "lgx-port-rack": {
-                          "type": "string"
-                        },
-                        "lgx-port-shelf": {
-                          "type": "string"
-                        },
-                        "lgx-port-name": {
-                          "type": "string"
-                        },
-                        "lgx-device-name": {
-                          "type": "string"
-                        }
-                      }
-                    },
-                    "tail": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "xponder-port": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "circuit-pack-name": {
-                              "type": "string"
-                            },
-                            "port-name": {
-                              "type": "string"
-                            }
-                          }
-                        },
-                        "tail-roadm-port-aid": {
-                          "type": "string"
-                        },
-                        "tail-roadm-port-rack-location": {
-                          "type": "string"
-                        },
-                        "tail-roadm": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "node-id": {
-                              "type": "string"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "port": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "port-rack": {
-                          "type": "string"
-                        },
-                        "port-sub-slot": {
-                          "type": "string"
-                        },
-                        "port-shelf": {
-                          "type": "string"
-                        },
-                        "port-device-name": {
-                          "type": "string"
-                        },
-                        "port-name": {
-                          "type": "string"
-                        },
-                        "port-slot": {
-                          "type": "string"
-                        },
-                        "port-type": {
-                          "type": "string"
-                        }
-                      }
-                    }
-                  }
-                },
-                "clli": {
-                  "type": "string"
-                },
-                "optic-type": {
-                  "enum": [
-                    "gray",
-                    "dwdm"
-                  ],
-                  "type": "string"
-                },
-                "service-rate": {
-                  "type": "number"
-                },
-                "service-format": {
-                  "enum": [
-                    "Ethernet",
-                    "OTU",
-                    "OC",
-                    "STM",
-                    "OMS",
-                    "ODU",
-                    "OTM"
-                  ],
-                  "type": "string"
-                },
-                "site": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {}
-                },
-                "user-label": {
-                  "type": "string"
-                },
-                "tx-direction": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "lgx": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "lgx-port-rack": {
-                          "type": "string"
-                        },
-                        "lgx-port-shelf": {
-                          "type": "string"
-                        },
-                        "lgx-port-name": {
-                          "type": "string"
-                        },
-                        "lgx-device-name": {
-                          "type": "string"
-                        }
-                      }
-                    },
-                    "tail": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "xponder-port": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "circuit-pack-name": {
-                              "type": "string"
-                            },
-                            "port-name": {
-                              "type": "string"
-                            }
-                          }
-                        },
-                        "tail-roadm-port-aid": {
-                          "type": "string"
-                        },
-                        "tail-roadm-port-rack-location": {
-                          "type": "string"
-                        },
-                        "tail-roadm": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "node-id": {
-                              "type": "string"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "port": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "port-rack": {
-                          "type": "string"
-                        },
-                        "port-sub-slot": {
-                          "type": "string"
-                        },
-                        "port-shelf": {
-                          "type": "string"
-                        },
-                        "port-device-name": {
-                          "type": "string"
-                        },
-                        "port-name": {
-                          "type": "string"
-                        },
-                        "port-slot": {
-                          "type": "string"
-                        },
-                        "port-type": {
-                          "type": "string"
-                        }
-                      }
-                    }
-                  }
-                },
-                "router": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "url": {
-                      "type": "string"
-                    },
-                    "node-id": {
-                      "type": "string"
-                    },
-                    "ip-address": {
-                      "anyOf": [
-                        {
-                          "type": "string"
-                        }
-                      ]
-                    }
-                  }
-                },
-                "node-id": {
-                  "type": "string"
-                }
-              }
-            },
-            "secondary-nci-code": {
-              "type": "string"
-            },
-            "common-id": {
-              "type": "string"
-            },
-            "service-name": {
-              "type": "string"
-            },
-            "soft-constraints": {
-              "oneOf": [
-                {
-                  "type": "object",
-                  "properties": {
-                    "exclude": {
-                      "type": "object",
-                      "properties": {
-                        "supporting-service-name": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "fiber-bundle": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "node-id": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "site": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    },
-                    "include": {
-                      "type": "object",
-                      "properties": {
-                        "supporting-service-name": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "fiber-bundle": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "node-id": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "site": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    },
-                    "diversity": {
-                      "type": "object",
-                      "properties": {
-                        "existing-service": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "existing-service-applicability": {
-                          "type": "object",
-                          "properties": {
-                            "node": {
-                              "type": "boolean"
-                            },
-                            "srlg": {
-                              "type": "boolean"
-                            },
-                            "site": {
-                              "type": "boolean"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "latency": {
-                      "type": "object",
-                      "properties": {
-                        "max-latency": {
-                          "type": "number"
-                        }
-                      }
-                    }
-                  }
-                },
-                {
-                  "type": "object",
-                  "properties": {
-                    "co-routing": {
-                      "type": "object",
-                      "properties": {
-                        "existing-service": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    }
-                  }
-                }
-              ],
-              "type": "object"
-            },
-            "operator-contact": {
-              "type": "string"
-            },
-            "end-date": {
-              "type": "string"
-            }
-          }
-        }
-      },
-      "title": "Create Service Input"
-    },
-    "(service-feasibility-check)input": {
-      "additionalProperties": false,
-      "$schema": "http://json-schema.org/draft-04/schema#",
-      "type": "object",
-      "properties": {
-        "input": {
-          "additionalProperties": false,
-          "required": [
-            "sdnc-request-header",
-            "connection-type"
-          ],
-          "type": "object",
-          "properties": {
-            "customer": {
-              "type": "string"
-            },
-            "nci-code": {
-              "type": "string"
-            },
-            "nc-code": {
-              "type": "string"
-            },
-            "customer-contact": {
-              "type": "string"
-            },
-            "hard-constraints": {
-              "oneOf": [
-                {
-                  "properties": {
-                    "exclude": {
-                      "type": "object",
-                      "properties": {
-                        "supporting-service-name": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "fiber-bundle": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "node-id": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "site": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    },
-                    "include": {
-                      "type": "object",
-                      "properties": {
-                        "supporting-service-name": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "fiber-bundle": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "node-id": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "site": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    },
-                    "diversity": {
-                      "type": "object",
-                      "properties": {
-                        "existing-service": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "existing-service-applicability": {
-                          "type": "object",
-                          "properties": {
-                            "node": {
-                              "type": "boolean"
-                            },
-                            "srlg": {
-                              "type": "boolean"
-                            },
-                            "site": {
-                              "type": "boolean"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "latency": {
-                      "type": "object",
-                      "properties": {
-                        "max-latency": {
-                          "type": "number"
-                        }
-                      }
-                    }
-                  }
-                },
-                {
-                  "properties": {
-                    "co-routing": {
-                      "type": "object",
-                      "properties": {
-                        "existing-service": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    }
-                  }
-                }
-              ],
-              "type": "object"
-            },
-            "service-z-end": {
-              "required": [
-                "service-format",
-                "clli",
-                "node-id",
-                "optic-type"
-              ],
-              "type": "object",
-              "properties": {
-                "rx-direction": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "lgx": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "lgx-port-rack": {
-                          "type": "string"
-                        },
-                        "lgx-port-shelf": {
-                          "type": "string"
-                        },
-                        "lgx-port-name": {
-                          "type": "string"
-                        },
-                        "lgx-device-name": {
-                          "type": "string"
-                        }
-                      }
-                    },
-                    "tail": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "xponder-port": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "circuit-pack-name": {
-                              "type": "string"
-                            },
-                            "port-name": {
-                              "type": "string"
-                            }
-                          }
-                        },
-                        "tail-roadm-port-aid": {
-                          "type": "string"
-                        },
-                        "tail-roadm-port-rack-location": {
-                          "type": "string"
-                        },
-                        "tail-roadm": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "node-id": {
-                              "type": "string"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "port": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "port-rack": {
-                          "type": "string"
-                        },
-                        "port-sub-slot": {
-                          "type": "string"
-                        },
-                        "port-shelf": {
-                          "type": "string"
-                        },
-                        "port-device-name": {
-                          "type": "string"
-                        },
-                        "port-name": {
-                          "type": "string"
-                        },
-                        "port-slot": {
-                          "type": "string"
-                        },
-                        "port-type": {
-                          "type": "string"
-                        }
-                      }
-                    }
-                  }
-                },
-                "clli": {
-                  "type": "string"
-                },
-                "optic-type": {
-                  "enum": [
-                    "gray",
-                    "dwdm"
-                  ],
-                  "type": "string"
-                },
-                "service-rate": {
-                  "type": "number"
-                },
-                "service-format": {
-                  "enum": [
-                    "Ethernet",
-                    "OTU",
-                    "OC",
-                    "STM",
-                    "OMS",
-                    "ODU",
-                    "OTM"
-                  ],
-                  "type": "string"
-                },
-                "site": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {}
-                },
-                "user-label": {
-                  "type": "string"
-                },
-                "tx-direction": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "lgx": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "lgx-port-rack": {
-                          "type": "string"
-                        },
-                        "lgx-port-shelf": {
-                          "type": "string"
-                        },
-                        "lgx-port-name": {
-                          "type": "string"
-                        },
-                        "lgx-device-name": {
-                          "type": "string"
-                        }
-                      }
-                    },
-                    "tail": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "xponder-port": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "circuit-pack-name": {
-                              "type": "string"
-                            },
-                            "port-name": {
-                              "type": "string"
-                            }
-                          }
-                        },
-                        "tail-roadm-port-aid": {
-                          "type": "string"
-                        },
-                        "tail-roadm-port-rack-location": {
-                          "type": "string"
-                        },
-                        "tail-roadm": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "node-id": {
-                              "type": "string"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "port": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "port-rack": {
-                          "type": "string"
-                        },
-                        "port-sub-slot": {
-                          "type": "string"
-                        },
-                        "port-shelf": {
-                          "type": "string"
-                        },
-                        "port-device-name": {
-                          "type": "string"
-                        },
-                        "port-name": {
-                          "type": "string"
-                        },
-                        "port-slot": {
-                          "type": "string"
-                        },
-                        "port-type": {
-                          "type": "string"
-                        }
-                      }
-                    }
-                  }
-                },
-                "router": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "url": {
-                      "type": "string"
-                    },
-                    "node-id": {
-                      "type": "string"
-                    },
-                    "ip-address": {
-                      "anyOf": [
-                        {
-                          "type": "string"
-                        }
-                      ]
-                    }
-                  }
-                },
-                "node-id": {
-                  "type": "string"
-                }
-              }
-            },
-            "sdnc-request-header": {
-              "type": "object",
-              "properties": {
-                "request-id": {
-                  "type": "string"
-                },
-                "rpc-action": {
-                  "enum": [
-                    "service-create",
-                    "service-feasibility-check",
-                    "service-delete",
-                    "equipment-notification",
-                    "temp-service-create",
-                    "temp-service-delete",
-                    "service-roll",
-                    "service-reconfigure",
-                    "service-ber-test",
-                    "service-restoration",
-                    "service-reversion",
-                    "service-reroute",
-                    "service-reroute-confirm",
-                    "network-re-optimization"
-                  ],
-                  "type": "string"
-                },
-                "notification-url": {
-                  "type": "string"
-                },
-                "request-system-id": {
-                  "type": "string"
-                }
-              }
-            },
-            "due-date": {
-              "type": "string"
-            },
-            "connection-type": {
-              "enum": [
-                "service",
-                "infrastructure"
-              ],
-              "type": "string"
-            },
-            "service-a-end": {
-              "required": [
-                "service-format",
-                "clli",
-                "node-id",
-                "optic-type"
-              ],
-              "type": "object",
-              "properties": {
-                "rx-direction": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "lgx": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "lgx-port-rack": {
-                          "type": "string"
-                        },
-                        "lgx-port-shelf": {
-                          "type": "string"
-                        },
-                        "lgx-port-name": {
-                          "type": "string"
-                        },
-                        "lgx-device-name": {
-                          "type": "string"
-                        }
-                      }
-                    },
-                    "tail": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "xponder-port": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "circuit-pack-name": {
-                              "type": "string"
-                            },
-                            "port-name": {
-                              "type": "string"
-                            }
-                          }
-                        },
-                        "tail-roadm-port-aid": {
-                          "type": "string"
-                        },
-                        "tail-roadm-port-rack-location": {
-                          "type": "string"
-                        },
-                        "tail-roadm": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "node-id": {
-                              "type": "string"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "port": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "port-rack": {
-                          "type": "string"
-                        },
-                        "port-sub-slot": {
-                          "type": "string"
-                        },
-                        "port-shelf": {
-                          "type": "string"
-                        },
-                        "port-device-name": {
-                          "type": "string"
-                        },
-                        "port-name": {
-                          "type": "string"
-                        },
-                        "port-slot": {
-                          "type": "string"
-                        },
-                        "port-type": {
-                          "type": "string"
-                        }
-                      }
-                    }
-                  }
-                },
-                "clli": {
-                  "type": "string"
-                },
-                "optic-type": {
-                  "enum": [
-                    "gray",
-                    "dwdm"
-                  ],
-                  "type": "string"
-                },
-                "service-rate": {
-                  "type": "number"
-                },
-                "service-format": {
-                  "enum": [
-                    "Ethernet",
-                    "OTU",
-                    "OC",
-                    "STM",
-                    "OMS",
-                    "ODU",
-                    "OTM"
-                  ],
-                  "type": "string"
-                },
-                "site": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {}
-                },
-                "user-label": {
-                  "type": "string"
-                },
-                "tx-direction": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "lgx": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "lgx-port-rack": {
-                          "type": "string"
-                        },
-                        "lgx-port-shelf": {
-                          "type": "string"
-                        },
-                        "lgx-port-name": {
-                          "type": "string"
-                        },
-                        "lgx-device-name": {
-                          "type": "string"
-                        }
-                      }
-                    },
-                    "tail": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "xponder-port": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "circuit-pack-name": {
-                              "type": "string"
-                            },
-                            "port-name": {
-                              "type": "string"
-                            }
-                          }
-                        },
-                        "tail-roadm-port-aid": {
-                          "type": "string"
-                        },
-                        "tail-roadm-port-rack-location": {
-                          "type": "string"
-                        },
-                        "tail-roadm": {
-                          "additionalProperties": false,
-                          "type": "object",
-                          "properties": {
-                            "node-id": {
-                              "type": "string"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "port": {
-                      "additionalProperties": false,
-                      "type": "object",
-                      "properties": {
-                        "port-rack": {
-                          "type": "string"
-                        },
-                        "port-sub-slot": {
-                          "type": "string"
-                        },
-                        "port-shelf": {
-                          "type": "string"
-                        },
-                        "port-device-name": {
-                          "type": "string"
-                        },
-                        "port-name": {
-                          "type": "string"
-                        },
-                        "port-slot": {
-                          "type": "string"
-                        },
-                        "port-type": {
-                          "type": "string"
-                        }
-                      }
-                    }
-                  }
-                },
-                "router": {
-                  "additionalProperties": false,
-                  "type": "object",
-                  "properties": {
-                    "url": {
-                      "type": "string"
-                    },
-                    "node-id": {
-                      "type": "string"
-                    },
-                    "ip-address": {
-                      "anyOf": [
-                        {
-                          "type": "string"
-                        }
-                      ]
-                    }
-                  }
-                },
-                "node-id": {
-                  "type": "string"
-                }
-              }
-            },
-            "secondary-nci-code": {
-              "type": "string"
-            },
-            "common-id": {
-              "type": "string"
-            },
-            "soft-constraints": {
-              "oneOf": [
-                {
-                  "type": "object",
-                  "properties": {
-                    "exclude": {
-                      "type": "object",
-                      "properties": {
-                        "supporting-service-name": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "fiber-bundle": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "node-id": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "site": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    },
-                    "include": {
-                      "type": "object",
-                      "properties": {
-                        "supporting-service-name": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "fiber-bundle": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "node-id": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "site": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    },
-                    "diversity": {
-                      "type": "object",
-                      "properties": {
-                        "existing-service": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        },
-                        "existing-service-applicability": {
-                          "type": "object",
-                          "properties": {
-                            "node": {
-                              "type": "boolean"
-                            },
-                            "srlg": {
-                              "type": "boolean"
-                            },
-                            "site": {
-                              "type": "boolean"
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "latency": {
-                      "type": "object",
-                      "properties": {
-                        "max-latency": {
-                          "type": "number"
-                        }
-                      }
-                    }
-                  }
-                },
-                {
-                  "type": "object",
-                  "properties": {
-                    "co-routing": {
-                      "type": "object",
-                      "properties": {
-                        "existing-service": {
-                          "items": {
-                            "type": "string"
-                          },
-                          "type": "array"
-                        }
-                      }
-                    }
-                  }
-                }
-              ],
-              "type": "object"
-            },
-            "operator-contact": {
-              "type": "string"
-            },
-            "end-date": {
-              "type": "string"
-            }
-          }
-        }
-      },
-      "title": "Service Feasibility Check Input"
-    },
-    "Error": {
-      "type": "object",
-      "properties": {
-        "errorCode": {
-          "type": "string",
-          "description": "Error code for this message, not guaranteed to be unique."
-        },
-        "errorDescription": {
-          "type": "string",
-          "description": "A description of this error. Descriptions further explain the error or offer possible root causes."
-        },
-        "errorMessage": {
-          "type": "string",
-          "description": "The text of the error, may point to data or state that caused the error."
-        },
-        "meta": {
-          "items": {
-            "type": "object"
-          },
-          "type": "array",
-          "description": "An array of objects pertaining to the returned error. This value may be null."
-        }
-      }
-    },
-    "QueryMeasurementPoint": {
-      "type": "object",
-      "description": "Define one or more measurement points to query. Real time queries support multiple measurement points while historical queries only supports one (1) resourceObject per request",
-      "properties": {
-        "additionalAttributes": {
-          "$ref": "#/definitions/AdditionalAttributes"
-        },
-        "resourceObject": {
-          "$ref": "#/definitions/ResourceObject"
-        }
-      }
-    },
-    "QueryAttributes": {
-      "required": [
-        "measurementPoints"
-      ],
-      "type": "object",
-      "example": {
-        "measurementPoints": [
-          {
-            "resourceObject": {
-              "device": "OTTAWA-01",
-              "nativePmFacilityName": "OTM4-1-2-1-1"
-            }
-          }
-        ],
-        "criteria": {
-          "parameters": [
-            "OPRAVG-OTS"
-          ],
-          "granularity": [
-            "UNTIMED"
-          ]
-        }
-      },
-      "properties": {
-        "measurementPoints": {
-          "minItems": 1,
-          "items": {
-            "$ref": "#/definitions/QueryMeasurementPoint"
-          },
-          "type": "array",
-          "description": "Collection of one or more measurement points"
-        },
-        "criteria": {
-          "$ref": "#/definitions/Criteria"
-        }
-      }
-    },
-    "Sample": {
-      "required": [
-        "time"
-      ],
-      "type": "object",
-      "description": "The metric, including the time it was retrieved, the metric type and actual value",
-      "properties": {
-        "value": {
-          "type": "number",
-          "description": "The value of this metric.",
-          "format": "double"
-        },
-        "condition": {
-          "type": "string",
-          "description": "Metric sample condition, e.g. outOfRange, invalid, etc."
-        },
-        "time": {
-          "type": "string",
-          "description": "The timestamp of the collected metric value. Format: yyyy-MM-ddTHH:mm:ss-HH:MM"
-        }
-      }
-    },
-    "Query": {
-      "type": "object",
-      "description": "Input for the performance metric query, this input is JSON API compliant.",
-      "properties": {
-        "data": {
-          "$ref": "#/definitions/QueryData"
-        }
-      }
-    }
-  },
-  "swagger": "2.0"
-}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_otdr.json b/tapi/resources/MCP_4.0.0_otdr.json
deleted file mode 100644
index d0917f6500006ca78123ddeed1af9d185d9f57a3..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_otdr.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "0.0.4", "description": "Optical time-domain reflectometer", "title": "OTDR"}, "paths": {"/otdr/api/v1/spanlength": {"get": {"responses": {"200": {"description": "Successfully retrieved OTDR spanlength.", "schema": {"type": "object", "properties": {}, "title": "OTDR spanlength"}}, "500": {"description": "Retrieval of OTDR spanlength failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find session_id / trace_id parameter."}}, "summary": "Get OTDR Spanlength", "description": "Use this API to fetch the length of the span associated with an OTDR entity.\n\nPrerequisite: management session id and entity id.\n", "parameters": [{"required": true, "type": "string", "description": "Management session id of enrolled NE", "name": "session_id", "in": "query"}, {"required": true, "type": "string", "description": "OTDR entity id", "name": "trace_id", "in": "query"}], "tags": ["OTDR spanlength"]}}, "/otdr/api/v1/sordownload": {"post": {"responses": {"200": {"description": "SOR file successfully downloaded.", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "SORDOownloadConfirmationMessage"}}, "500": {"description": "SFTP of SOR file failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters"}}, "summary": "SFTP sor file", "description": "Use this API to sftp a SOR file.\n\nPrerequisite: management session id.\n", "parameters": [{"required": true, "type": "string", "description": "Management session id of enrolled NE", "name": "session_id", "in": "query"}, {"required": true, "type": "string", "description": "Profile name of OTDR profile", "name": "profile_name", "in": "query"}, {"schema": {"$ref": "#/definitions/sordownload"}, "required": true, "description": "SOR download parameters", "name": "data", "in": "body"}], "tags": ["OTDR SOR download"]}}, "/otdr/api/v1/profile": {"delete": {"responses": {"200": {"description": "OTDR profile deleted successfully.", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "OTDRProfileDeleteConfirmationMessage"}}, "500": {"description": "OTDR Profile deletion failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters"}}, "summary": "Delete an OTDR profile", "description": "Use this API to delete an existing OTDR profile.\n\nPrerequisite: profile id.\n", "parameters": [{"required": true, "type": "string", "description": "Profile id of the profile to be edited", "name": "id", "in": "query"}], "tags": ["OTDR profiles"]}, "post": {"responses": {"200": {"description": "OTDR profile created successfully. ", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "ProfileCreationConfirmationMessage"}}, "500": {"description": "Profile creation failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters"}}, "summary": "Creates an OTDR profile", "description": "Use this API to create an OTDR profile.\n", "parameters": [{"schema": {"$ref": "#/definitions/otdrprofile"}, "required": true, "description": "OTDR profile parameters", "name": "profile ", "in": "body"}], "tags": ["OTDR profiles"]}, "get": {"responses": {"200": {"description": "Successfully retrieved OTDR profiles.", "schema": {"type": "object", "properties": {}, "title": "OTDR profiles"}}, "500": {"description": "Retrieval of OTDR profiles failed, error message provided in logs and response."}, "400": {"description": "Bad request. "}}, "summary": "Get OTDR profiles", "description": "Use this API to retrieve OTDR profiles.\n", "parameters": [], "tags": ["OTDR profiles"]}, "patch": {"responses": {"200": {"description": "OTDR profile updated successfully.", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "OTDRProfileEditConfirmationMessage"}}, "500": {"description": "OTDR profile updation failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters"}}, "summary": "Edit an OTDR profile", "description": "Use this API to edit an existing OTDR profile.\n\nPrerequisite: profile id.\n", "parameters": [{"required": true, "type": "string", "description": "Profile id of the profile to be edited", "name": "id", "in": "query"}, {"schema": {"$ref": "#/definitions/otdrprofile"}, "required": true, "description": "OTDR profile parameters", "name": "profile", "in": "body"}], "tags": ["OTDR profiles"]}}, "/otdr/api/v1/entities": {"post": {"responses": {"200": {"description": "Start/Stop trace successfully initiated.", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "Start/StopTraceConfirmationMessage"}}, "500": {"description": "Start/Stop trace failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters"}}, "summary": "Start/Stop trace on OTDR entities", "description": "Use this API to start/stop trace on OTDR entities.\n\nPrerequisite: management session id.\n", "parameters": [{"required": true, "type": "string", "description": "Management session id of enrolled NE", "name": "session_id", "in": "query"}, {"schema": {"$ref": "#/definitions/startstoptrace"}, "required": true, "description": "Start/Stop trace parameters", "name": "trace entities", "in": "body"}], "tags": ["OTDR entities"]}, "patch": {"responses": {"200": {"description": "Edit successfull on OTDR entity.", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "OTDREditConfirmationMessage"}}, "500": {"description": "OTDR Entity edit failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters"}}, "summary": "Edit an OTDR entity", "description": "Use this API to edit an underlying OTDR entity.\n\nPrerequisite: management session id and entity id.\n", "parameters": [{"required": true, "type": "string", "description": "Management session id of enrolled NE", "name": "session_id", "in": "query"}, {"required": true, "type": "string", "description": "OTDR entity id", "name": "trace_id", "in": "query"}, {"schema": {"$ref": "#/definitions/otdrentity"}, "required": true, "description": "OTDR entity parameters", "name": "OTDR entity", "in": "body"}], "tags": ["OTDR entities"]}, "get": {"responses": {"200": {"description": "Successfully retrieved OTDR entities.", "schema": {"type": "object", "properties": {}, "title": "OTDR entities"}}, "500": {"description": "Retrieval of OTDR Entities failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find session_id parameter."}}, "summary": "Get OTDR entities", "description": "Use this API to fetch OTDR supporting entities.\n\nPrerequisite: management session id.\n", "parameters": [{"required": true, "type": "string", "description": "Management session id of enrolled NE", "name": "session_id", "in": "query"}], "tags": ["OTDR entities"]}}, "/otdr/api/v1/tracelist": {"get": {"responses": {"200": {"description": "Successfully retrieved SOR tracelist.", "schema": {"type": "object", "properties": {}, "title": "OTDR tracelist"}}, "500": {"description": "Retrieval of OTDR SOR tracelist failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find session_id / trace_id parameter."}}, "summary": "Get SOR tracelist", "description": "Use this API to fetch SOR tracelist associated with an OTDR entity.\n\nPrerequisite: management session id and entity id.\n", "parameters": [{"required": true, "type": "string", "description": "Management session id of enrolled NE", "name": "session_id", "in": "query"}, {"required": true, "type": "string", "description": "OTDR entity id", "name": "trace_id", "in": "query"}], "tags": ["OTDR SOR tracelist"]}}}, "schemes": ["http", "https"], "produces": ["application/json"], "basePath": "/", "tags": [{"name": "OTDR entities", "description": "Retrieve, start/stop trace and edit the OTDR entities "}, {"name": "OTDR SOR tracelist", "description": "Retrieve SOR trace list associated with an OTDR entity "}, {"name": "OTDR spanlength", "description": "Retrieve the length of the span associated with an OTDR entity "}, {"name": "OTDR SOR download", "description": "SFTP the SOR file to a specified location "}, {"name": "OTDR profiles", "description": "Create, Retrieve, Update and Delete the OTDR profiles "}], "definitions": {"startstoptrace": {"type": "object", "description": "Parameters for start/stop  trace.", "properties": {"parameters": {"type": "object", "properties": {"trace_entities": {"items": {"type": "object", "properties": {"entityid": {"default": "OTDRCFG-1-5-8", "type": "string"}, "operation": {"default": "start", "type": "string"}}}, "type": "array"}}}}}, "sordownload": {"type": "object", "description": "Parameters for SOR download.", "properties": {"trace_type": {"default": "OFFICE", "type": "string"}, "trace_id": {"default": "OTDRCFG-1-1-8", "type": "string"}, "trace_tag": {"default": "CURRENT", "type": "string"}}}, "otdrentity": {"type": "object", "description": "OTDR entity edit parameters.", "properties": {"parameters": {"type": "object", "properties": {"max_aquisition_time": {"default": "80", "type": "string"}, "event_range": {"default": "500", "type": "string"}, "pulse_long": {"default": "2000", "type": "string"}}}}}, "otdrprofile": {"type": "object", "description": "OTDR profile parameters.", "properties": {"description": {"default": "2000", "type": "string"}, "passwd": {"default": "password", "type": "string"}, "ip_address": {"default": "1.1.1.1", "type": "string"}, "profile_name": {"default": "test", "type": "string"}, "location": {"default": "/temp", "type": "string"}, "user_name": {"default": "admin", "type": "string"}, "port": {"default": "22", "type": "string"}, "protocol_type": {"default": "sftp", "type": "string"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_performance_gauge.json b/tapi/resources/MCP_4.0.0_performance_gauge.json
deleted file mode 100644
index 5f2aa4a11ed1bcafb1ab23f06a868b7961d292b1..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_performance_gauge.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "2.0", "description": "Liquid Spectrum Performance Gauge micro Service", "title": "Performance Gauge"}, "paths": {"/perfg/api/channelmargins/{freid}": {"get": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/MarginDetailsRO"}}, "404": {"description": "Unable to retrieve specified OTSi service and its margin"}, "403": {"description": "API Not Licensed"}, "500": {"description": "Retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V2<p>Get detailed channel margin data for a specific service", "parameters": [{"required": true, "in": "path", "type": "string", "description": "identifier of OTSi service to be retrieved", "name": "freid"}, {"enum": ["Tx", "Rx"], "type": "string", "description": "Tx or Rx termination end of the OTSi service. The allowed values are: Tx, Rx", "in": "query", "name": "dir"}], "tags": ["cmgapi"], "produces": ["application/json"], "summary": "Get detailed channel margin data for a specific service", "operationId": "getChanMargin"}}, "/perfg/api/configs": {"post": {"responses": {"200": {"description": "Configuration settings of Performance Gauge is changed", "schema": {"$ref": "#/definitions/ConfigurationAttributesRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}, "400": {"description": "Invalid configuration settings", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V2<p>Modify one or more configuration settings of Performance Gauge", "parameters": [{"schema": {"$ref": "#/definitions/ConfigurationAttributesRO"}, "in": "body", "description": "create or change SafetyFactor and ValidFactor for the Channel Margin app.", "name": "body"}], "produces": ["application/json"], "tags": ["cmgapi"], "summary": "Create or change the configuration settings of Performance Gauge", "consumes": ["application/json"], "operationId": "postConfigs"}, "get": {"responses": {"200": {"description": "List of configuration settings", "schema": {"$ref": "#/definitions/ConfigurationAttributesRO"}}, "500": {"description": "Retrieval of Configurations failed (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "tags": ["cmgapi"], "description": "<p>LATEST VERSION: V2<p>Get list of configuration settings that Performance Gauge uses", "produces": ["application/json"], "summary": "Get the configuration settings of Performance Gauge", "operationId": "getConfigs"}}, "/perfg/api/v2/marginsummary": {"get": {"responses": {"200": {"description": "Channel Margin Summary", "schema": {"$ref": "#/definitions/MarginSummary"}}, "403": {"description": "API Not Licensed"}, "500": {"description": "Retrieval of Channel Margin Summary failed (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V2<p>Dashboard API for channel margin", "parameters": [{"in": "query", "type": "string", "description": "(Optional) List of comma separated resource Partition IDs", "name": "resourcePartitionIDs"}], "tags": ["cmgapiV2"], "produces": ["application/json"], "summary": "Dashboard API binning all OTSi services according to line rate and margin status", "operationId": "getMarginSummaryV2"}}, "/perfg/api/v1/validity/{factor}": {"put": {"responses": {"200": {"description": "Validity factor has been set"}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}, "400": {"description": "Validity factor must be an integer number from 1 to 35040", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "How many 15 minute PM bins are required before a margin  calculation is considered valid", "parameters": [{"description": "Validity Factor", "format": "int32", "required": true, "maximum": 35040, "minimum": 1, "in": "path", "type": "integer", "name": "factor"}], "produces": ["application/json"], "tags": ["cmgapiV1"], "summary": "How many 15 minute PM bins are required before a margin calculation is considered valid", "consumes": ["application/octet-stream"], "operationId": "put-validity"}}, "/perfg/api/v2/channelmargins/{freid}": {"get": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/MarginDetailsRO"}}, "404": {"description": "Unable to retrieve specified OTSi service and its margin"}, "403": {"description": "API Not Licensed"}, "500": {"description": "Retrieval failed (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V2<p>Get detailed channel margin data for a specific service", "parameters": [{"required": true, "in": "path", "type": "string", "description": "identifier of OTSi service to be retrieved", "name": "freid"}, {"enum": ["Tx", "Rx"], "type": "string", "description": "Tx or Rx termination end of the OTSi service. The allowed values are: Tx, Rx", "in": "query", "name": "dir"}], "tags": ["cmgapiV2"], "produces": ["application/json"], "summary": "Get detailed channel margin data for a specific service", "operationId": "getChanMarginV2"}}, "/perfg/api/v1/channelmargin": {"get": {"responses": {"200": {"description": "Whatever we tried worked", "schema": {"$ref": "#/definitions/ChanListV1"}}, "403": {"description": "API Not Licensed"}, "500": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Get list of services and their margins", "tags": ["cmgapiV1"], "deprecated": true, "produces": ["application/json"], "summary": "Get list of OTU services and their margins", "operationId": "get-chanmarg"}}, "/perfg/api/v2/channelmargins": {"get": {"responses": {"200": {"description": "List of Channel Margins", "schema": {"$ref": "#/definitions/ChanList"}}, "403": {"description": "API Not Licensed"}, "500": {"description": "Retrieval of Channel Margins failed (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V2<p>Get list of services and their margins\n", "parameters": [{"in": "query", "type": "string", "description": "Offset for the second page", "name": "offset"}, {"default": "30", "in": "query", "type": "string", "description": "The size of a returned page", "name": "limit"}], "tags": ["cmgapiV2"], "produces": ["application/json"], "summary": "Get all OTSi services and their margins", "operationId": "getChanMarginsV2"}}, "/perfg/api/v1/channelmargin/{freid}/{dir}": {"get": {"responses": {"200": {"description": "Found requested service", "schema": {"$ref": "#/definitions/MarginDetailsV1"}}, "404": {"description": "freid not found"}, "403": {"description": "API Not Licensed"}, "500": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Get detailed channel margin data for a specific servicep", "parameters": [{"required": true, "type": "string", "name": "freid", "in": "path"}, {"required": true, "type": "string", "name": "dir", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["cmgapiV1"], "summary": "Get detailed channel margin data for a specific service", "consumes": ["application/json"], "operationId": "get-chanidmarg"}}, "/perfg/api/marginsummary": {"get": {"responses": {"200": {"description": "Channel Margin Summary", "schema": {"$ref": "#/definitions/MarginSummary"}}, "403": {"description": "API Not Licensed"}, "500": {"description": "Retrieval of Channel Margin Summary failed (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V2<p>Dashboard API for channel margin", "parameters": [{"in": "query", "type": "string", "description": "(Optional) List of comma separated resource Partition IDs", "name": "resourcePartitionIDs"}], "tags": ["cmgapi"], "produces": ["application/json"], "summary": "Dashboard API binning all OTSi services according to line rate and margin status", "operationId": "getMarginSummary"}}, "/perfg/api/v2/fiberloss": {"get": {"responses": {"200": {"description": "List of fiber losses", "schema": {"$ref": "#/definitions/FiberList"}}, "500": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V2<p>Get list of fibers and their losses", "parameters": [{"in": "query", "type": "string", "description": "Offset for the second page", "name": "offset"}, {"default": "30", "in": "query", "type": "string", "description": "The size of a returned page", "name": "limit"}], "tags": ["fiberlossV2"], "produces": ["application/json"], "summary": "List of fibers and their losses", "operationId": "getFiberLossV2"}}, "/perfg/api/v2/configs": {"post": {"responses": {"200": {"description": "Configuration settings of Performance Gauge is changed", "schema": {"$ref": "#/definitions/ConfigurationAttributesRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}, "400": {"description": "Invalid configuration settings", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V2<p>Modify one or more configuration settings of Performance Gauge", "parameters": [{"schema": {"$ref": "#/definitions/ConfigurationAttributesRO"}, "in": "body", "description": "create or change SafetyFactor and ValidFactor for the Channel Margin app.", "name": "body"}], "produces": ["application/json"], "tags": ["cmgapiV2"], "summary": "Create or change the configuration settings of Performance Gauge", "consumes": ["application/json"], "operationId": "postConfigsV2"}, "get": {"responses": {"200": {"description": "List of configuration settings", "schema": {"$ref": "#/definitions/ConfigurationAttributesRO"}}, "500": {"description": "Retrieval of Configurations failed (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "tags": ["cmgapiV2"], "description": "<p>LATEST VERSION: V2<p>Get list of configuration settings that Performance Gauge uses", "produces": ["application/json"], "summary": "Get the configuration settings of Performance Gauge", "operationId": "getConfigsV2"}}, "/perfg/api/v1/marginsummary": {"get": {"responses": {"200": {"description": "Channel Margin Summary", "schema": {"$ref": "#/definitions/MarginSummary"}}, "403": {"description": "API Not Licensed"}, "500": {"description": "Retrieval of Channel Margin Summary failed (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "tags": ["cmgapiV1"], "description": "<p>VERSION: V1<p>Dashboard API for channel margin", "produces": ["application/json"], "summary": "Dashboard API binning all OTSi services according to line rate and margin status", "operationId": "getMarginSummaryV1"}}, "/perfg/api/v1/fiberloss": {"get": {"responses": {"200": {"description": "Return fiber list", "schema": {"$ref": "#/definitions/FiberList"}}, "500": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Get list of fibers and their losses", "tags": ["fiberlossV1"], "deprecated": true, "produces": ["application/json"], "summary": "Get list of fibers and their losses", "operationId": "get-fiberloss"}}, "/perfg/api/v1/fiberloss/{freid}": {"patch": {"responses": {"200": {"description": "Updated planned fiber loss"}, "404": {"description": "freid not found"}, "403": {"description": "API Not Licensed"}, "500": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Patch fiber planned loss", "parameters": [{"required": true, "type": "string", "name": "freid", "in": "path"}, {"schema": {"$ref": "#/definitions/FiberData"}, "in": "body", "description": "Fiber Data to Update", "name": "fiberData"}], "produces": ["application/json"], "tags": ["fiberlossV1"], "summary": "Patch fiber planned loss", "consumes": ["application/json"], "operationId": "patch-fiberidloss"}, "get": {"responses": {"200": {"description": "Found requested fiber", "schema": {"$ref": "#/definitions/FiberLoss"}}, "404": {"description": "freid not found"}, "500": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Get specified fiber and its losses", "parameters": [{"required": true, "type": "string", "name": "freid", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["fiberlossV1"], "summary": "Get specified fiber and its losses", "consumes": ["application/json"], "operationId": "get-fiberidloss"}}, "/perfg/api/v1/safety": {"get": {"responses": {"200": {"description": "Safety factor has been gotten", "schema": {"$ref": "#/definitions/Safety"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "tags": ["cmgapiV1"], "description": "How much greater than upgrade does minmargin need to be in order for it to be flagged as upgradeable - in dB", "produces": ["application/json"], "summary": "How much greater than upgrade does minmargin need to be in order for it to be flagged as upgradeable - in dB", "operationId": "get-safety"}}, "/perfg/api/fiberloss": {"get": {"responses": {"200": {"description": "List of fiber losses", "schema": {"$ref": "#/definitions/FiberList"}}, "500": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V2<p>Get list of fibers and their losses", "parameters": [{"in": "query", "type": "string", "description": "Offset for the second page", "name": "offset"}, {"default": "30", "in": "query", "type": "string", "description": "The size of a returned page", "name": "limit"}], "tags": ["fiberloss"], "produces": ["application/json"], "summary": "List of fibers and their losses", "operationId": "getFiberLoss"}}, "/perfg/api/v1/validity": {"get": {"responses": {"200": {"description": "Validity factor has been gotten", "schema": {"$ref": "#/definitions/Validity"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "tags": ["cmgapiV1"], "description": "How many 15 minute PM bins are required before a margin  calculation is considered valid", "produces": ["application/json"], "summary": "How many 15 minute PM bins are required before a margin calculation is considered valid", "operationId": "get-validity"}}, "/perfg/api/channelmargins": {"get": {"responses": {"200": {"description": "List of Channel Margins", "schema": {"$ref": "#/definitions/ChanList"}}, "403": {"description": "API Not Licensed"}, "500": {"description": "Retrieval of Channel Margins failed (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V2<p>Get list of services and their margins", "parameters": [{"in": "query", "type": "string", "description": "Offset for the second page", "name": "offset"}, {"default": "30", "in": "query", "type": "string", "description": "The size of a returned page", "name": "limit"}], "tags": ["cmgapi"], "produces": ["application/json"], "summary": "Get all OTSi services and their margins", "operationId": "getChanMargins"}}, "/perfg/api/v1/safety/{factor}": {"put": {"responses": {"200": {"description": "Safety factor has been set"}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ApiResponse"}}, "400": {"description": "Safety factor must be a floating point number from 0.0 to 10.0", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "How much greater than upgrade does minmargin need to be in order for it to be flagged as upgradeable - in dB", "parameters": [{"description": "Safety Factor", "format": "float", "required": true, "maximum": 10, "minimum": 0, "in": "path", "type": "number", "name": "factor"}], "produces": ["application/json"], "tags": ["cmgapiV1"], "summary": "How much greater than upgrade does minmargin need to be in order for it to be flagged as upgradeable - in dB", "consumes": ["application/octet-stream"], "operationId": "put-safety"}}, "/perfg/api/fiberloss/{freid}": {"patch": {"responses": {"200": {"description": "Updated planned fiber loss"}, "404": {"description": "freid not found"}, "403": {"description": "API Not Licensed"}, "500": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V1<p>Patch fiber planned loss", "parameters": [{"required": true, "in": "path", "type": "string", "description": "Fiber identifier to be updated", "name": "freid"}, {"schema": {"$ref": "#/definitions/FiberData"}, "in": "body", "description": "Fiber Data to Update", "name": "fiberData"}], "produces": ["application/json"], "tags": ["fiberloss"], "summary": "Patch fiber planned loss", "consumes": ["application/json"], "operationId": "patchFiberidLoss"}, "get": {"responses": {"200": {"description": "Found requested fiber", "schema": {"$ref": "#/definitions/FiberLoss"}}, "404": {"description": "freid not found"}, "500": {"description": "Unexpected processing error", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "<p>LATEST VERSION: V1<p>Get specified fiber and its losses", "parameters": [{"required": true, "in": "path", "type": "string", "description": "Fiber identifier to be retrieved", "name": "freid"}], "produces": ["application/json"], "tags": ["fiberloss"], "summary": "Get specified fiber and its losses", "consumes": ["application/json"], "operationId": "getFiberidLoss"}}}, "schemes": ["http"], "tags": [{"description": "This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs", "name": "cmgapi"}, {"name": "cmgapiV1"}, {"name": "cmgapiV2"}, {"description": "This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs", "name": "fiberloss"}, {"name": "fiberlossV1"}, {"name": "fiberlossV2"}], "definitions": {"MetaDataRO": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of entities in the data", "format": "int64"}}}, "MarginDetailsV1": {"required": ["valid", "minMargin"], "type": "object", "properties": {"status": {"type": "string"}, "viable": {"type": "string"}, "circuitId": {"type": "string"}, "sdMargin": {"type": "number", "format": "float"}, "timeEnd": {"type": "string", "format": "time-date"}, "minMargin": {"type": "number", "format": "float"}, "timeStart": {"type": "string", "format": "time-date"}, "maxMargin": {"type": "number", "format": "float"}, "intervals": {"type": "integer", "format": "int32"}, "upgrMargin": {"type": "number", "format": "float"}, "upgrRate": {"type": "string"}, "histogram": {"items": {"type": "integer", "format": "int32"}, "type": "array"}, "valid": {"type": "boolean"}, "meanMargin": {"type": "number", "format": "float"}}}, "FiberList": {"type": "object", "properties": {"services": {"items": {"$ref": "#/definitions/FiberLoss"}, "type": "array"}, "meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "MarginDetails": {"required": ["valid", "minMargin"], "type": "object", "properties": {"status": {"type": "string"}, "viable": {"type": "string"}, "direction": {"type": "string"}, "sdMargin": {"type": "number", "format": "float"}, "timeEnd": {"type": "string", "format": "time-date"}, "histogram": {"items": {"type": "integer", "format": "int32"}, "type": "array"}, "timeStart": {"type": "string", "format": "time-date"}, "maxMargin": {"type": "number", "format": "float"}, "freId": {"type": "string"}, "intervals": {"type": "integer", "format": "int32"}, "upgrMargin": {"type": "number", "format": "float"}, "tpeId": {"type": "string"}, "upgrRate": {"type": "string"}, "minMargin": {"type": "number", "format": "float"}, "valid": {"type": "boolean"}, "meanMargin": {"type": "number", "format": "float"}}}, "ChanListV1": {"type": "object", "properties": {"services": {"items": {"$ref": "#/definitions/ChanMarginV1"}, "type": "array"}}}, "RateCount": {"type": "object", "properties": {"rate": {"type": "string"}, "degradeCount": {"type": "integer", "format": "int32"}, "upgradeCount": {"type": "integer", "format": "int32"}}}, "ApiResponse": {"type": "object", "properties": {"message": {"type": "string"}, "code": {"type": "string"}, "level": {"type": "string"}}}, "ChanMargin": {"required": ["valid"], "type": "object", "properties": {"status": {"type": "string"}, "viable": {"type": "string"}, "direction": {"type": "string"}, "sdMargin": {"type": "number", "format": "float"}, "minMargin": {"type": "number", "format": "float"}, "maxMargin": {"type": "number", "format": "float"}, "freId": {"type": "string"}, "layerRate": {"type": "string"}, "upgrMargin": {"type": "number", "format": "float"}, "tpeId": {"type": "string"}, "valid": {"type": "boolean"}, "meanMargin": {"type": "number", "format": "float"}}}, "MarginDetailsRO": {"items": {"type": "object", "$ref": "#/definitions/MarginDetails"}, "type": "array"}, "MarginSummary": {"required": ["totalCount", "goodCount", "counts"], "type": "object", "properties": {"totalCount": {"type": "integer", "format": "int32"}, "counts": {"items": {"$ref": "#/definitions/RateCount"}, "type": "array"}, "goodCount": {"type": "integer", "format": "int32"}}}, "Safety": {"required": ["factor"], "type": "object", "properties": {"factor": {"type": "number", "format": "float"}}}, "Validity": {"required": ["factor"], "type": "object", "properties": {"factor": {"type": "integer", "format": "int32"}}}, "LinksRO": {"type": "object", "properties": {"last": {"type": "string", "description": "The last page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "next": {"type": "string", "description": "The next page of data", "format": "uri"}, "current": {"type": "string", "description": "The current page of data", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "ChanList": {"type": "object", "properties": {"meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "data": {"items": {"$ref": "#/definitions/ChanMargin"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "ConfigurationAttributesRO": {"type": "object", "properties": {"safety": {"minimum": 0, "type": "number", "maximum": 10, "format": "float"}, "validity": {"minimum": 1, "type": "integer", "maximum": 35040, "format": "int32"}}}, "ChanMarginV1": {"required": ["valid"], "type": "object", "properties": {"status": {"type": "string"}, "viable": {"type": "string"}, "direction": {"type": "string"}, "circuitId": {"type": "string"}, "sdMargin": {"type": "number", "format": "float"}, "minMargin": {"type": "number", "format": "float"}, "maxMargin": {"type": "number", "format": "float"}, "freId": {"type": "string"}, "layerRate": {"type": "string"}, "upgrMargin": {"type": "number", "format": "float"}, "valid": {"type": "boolean"}, "meanMargin": {"type": "number", "format": "float"}}}, "FiberLoss": {"type": "object", "properties": {"status": {"type": "string"}, "plannedLoss": {"type": "string"}, "deltaLoss": {"type": "string"}, "plannedMargin": {"type": "string"}, "freId": {"type": "string"}, "measuredTime": {"type": "string"}, "measuredLoss": {"type": "string"}, "method": {"type": "string"}}}, "FiberData": {"type": "object", "properties": {"loss": {"type": "string"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_performance_metrics.json b/tapi/resources/MCP_4.0.0_performance_metrics.json
deleted file mode 100644
index 1a5ec94df509961998fd5d742cd85d68de6fbe89..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_performance_metrics.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "v2", "description": "Enable real-time and historical Performance Metrics collection from network elements", "title": "Performance metrics"}, "paths": {"/pm/api/v2/collections": {"patch": {"description": "Bulk update collection configuration for multiple network elements. Network elements can be specified by name or type", "parameters": [{"schema": {"$ref": "#/definitions/collectionsBulkRequest"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Collections"], "summary": "Bulk update collection configuration for multiple network elements", "consumes": ["application/json"], "responses": {"200": {"description": "Successful update"}, "207": {"description": "Partial success", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "404": {"description": "Not found", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "409": {"description": "Conflict. Server constraint violated", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmErrorV2"}}}}}, "/pm/api/v2/collections/templates/{type}": {"patch": {"description": "Update collection configuration template for the given network element type", "parameters": [{"required": true, "in": "path", "type": "string", "description": "Network Element Type (i.e.: 6500)", "name": "type"}, {"schema": {"$ref": "#/definitions/collectionsPatch"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Collections"], "summary": "Update collection configuration template for the given network element type", "consumes": ["application/json"], "responses": {"200": {"description": "Success"}, "207": {"description": "Partial success", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "404": {"description": "Not found", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "409": {"description": "Conflict. Server constraint violated", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmErrorV2"}}}}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/collectionsGet"}}, "404": {"description": "Not found", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmErrorV2"}}}, "parameters": [{"required": true, "in": "path", "type": "string", "description": "Network Element Type (i.e.: 6500)", "name": "type"}], "tags": ["Collections"], "produces": ["application/json"], "summary": "Return the collection configuration template of the given network element type", "description": "Return the collection configuration template of the given network element type"}}, "/pm/api/v2/collections/networkelements/{networkElementName}": {"post": {"description": "Triggers PM collection for the specified network element", "parameters": [{"required": true, "in": "path", "type": "string", "description": "Network Element Name", "name": "networkElementName"}, {"required": true, "in": "query", "type": "string", "description": "The name of the configuration, representing the desired resolution (15_MINUTES, 24_HOURS)", "name": "configuration"}], "produces": ["application/json"], "tags": ["Collections"], "summary": "Trigger immediate collection for the specified network element and resolution", "consumes": ["application/json"], "responses": {"200": {"description": "Success"}, "404": {"description": "Not found", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "409": {"description": "Conflict. Server constraint violated", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmErrorV2"}}}}, "patch": {"description": "Update collection configuration of the given network element, identified by its name", "parameters": [{"required": true, "in": "path", "type": "string", "description": "Network Element Name", "name": "networkElementName"}, {"schema": {"$ref": "#/definitions/collectionsPatch"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Collections"], "summary": "Update collection configuration of the given network element", "consumes": ["application/json"], "responses": {"200": {"description": "Success"}, "207": {"description": "Partial success", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "404": {"description": "Not found", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "409": {"description": "Conflict. Server constraint violated", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmErrorV2"}}}}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/collectionsGet"}}, "404": {"description": "Not found", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmErrorV2"}}}, "parameters": [{"required": true, "in": "path", "type": "string", "description": "Network Element Name", "name": "networkElementName"}], "tags": ["Collections"], "produces": ["application/json"], "summary": "Return collection configuration of the given network element", "description": "Return collection configuration of the given network element, identified by its name"}}, "/pm/api/v1/changeftpcredentials": {"post": {"responses": {"200": {"description": "Success"}, "400": {"description": "Bad request"}}, "summary": "Change SFTP credentials for 6500 PM file transfer", "description": "Change SFTP credentials for 6500 PM file transfer", "parameters": [{"type": "string", "name": "username", "in": "formData"}, {"type": "string", "name": "password", "in": "formData"}], "consumes": ["application/x-www-form-urlencoded"]}}, "/pm/api/v2/query/meta": {"post": {"description": "Retrieves meta data and contextual aggregations corresponding to the specified criteria", "parameters": [{"schema": {"$ref": "#/definitions/metaRequest"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Historical"], "summary": "Retrieves meta data according to the specified criteria", "consumes": ["application/json"], "responses": {"201": {"description": "Returns all metrics available for the provided time frame that match the specified criteria", "schema": {"$ref": "#/definitions/metaResponse"}}, "500": {"description": "Unexpected error", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "400": {"description": "Bad Request format", "schema": {"$ref": "#/definitions/pmErrorV2"}}}}}, "/pm/api/v1/queries": {"post": {"responses": {"201": {"description": "Returns the metrics collected from each measurement point or an error if metrics collection failed for a given measurement point", "schema": {"$ref": "#/definitions/queryResponse"}}, "504": {"description": "The NE for the RPM request is LOA", "schema": {"$ref": "#/definitions/pmError"}}, "408": {"description": "Time-out. None of the defined measurement points could be retrieved in time", "schema": {"$ref": "#/definitions/pmError"}}, "500": {"description": "Unexpected error", "schema": {"$ref": "#/definitions/pmError"}}, "400": {"description": "Bad request format", "schema": {"$ref": "#/definitions/pmError"}}}, "description": "Retrieves real-time performance metrics. Multiple measurement points can be defined. All measurement points are queried concurrently. This call blocks until all results are returned or times out. In case of a timeout of individual measurement point queries, all successful queries are still returned", "parameters": [{"schema": {"$ref": "#/definitions/rpmRequest"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Real-Time"], "summary": "Retrieves real-time metrics from network element", "consumes": ["application/json"], "operationId": "getRPM"}}, "/pm/api/v1/query/metrics": {"post": {"responses": {"201": {"description": "Returns all metrics available for the provided time frame that match the specified criteria", "schema": {"$ref": "#/definitions/queryResponse"}}, "500": {"description": "Heroic did not respond as expected", "schema": {"$ref": "#/definitions/pmError"}}, "400": {"description": "Bad Request format", "schema": {"$ref": "#/definitions/pmError"}}}, "description": "Retrieves historical performance metrics. Callers can choose an absolute or relative time frame and filter the results based on multiple criteria", "parameters": [{"schema": {"$ref": "#/definitions/hpmRequest"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["Historical"], "summary": "Retrieves historical performance metrics from heroic", "consumes": ["application/json"], "operationId": "getHPM"}}, "/pm/api/v2/query/tags": {"get": {"responses": {"200": {"description": "Returns a limited set of values for the specified tag. If no values are found, an empty array is returned", "schema": {"$ref": "#/definitions/tagResponse"}}, "500": {"description": "Unexpected error", "schema": {"$ref": "#/definitions/pmErrorV2"}}}, "parameters": [{"required": true, "in": "query", "type": "string", "description": "The name of the tag for which a collection of values is returned", "name": "tag"}, {"required": true, "in": "query", "type": "string", "description": "A filter for the returned tag values. Any value which CONTAINS the provided search text is returned", "name": "search"}, {"required": true, "in": "query", "type": "number", "description": "The maximum number of returned values", "name": "limit"}], "tags": ["Historical"], "produces": ["application/json"], "summary": "Returns a collection of existing values for the provided tag", "consumes": ["application/json"]}}, "/pm/api/v1/facilities": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/initRegisterResponse"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmError"}}}, "description": "Interactions with facilities such as INIT-REG", "parameters": [{"schema": {"$ref": "#/definitions/initRegisterRequest"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Facilities"], "summary": "Facility interactions", "consumes": ["application/json"], "operationId": "initReg"}}, "/pm/api/v2/query/metrics": {"post": {"description": "Retrieves historical performance metrics. Callers can choose an absolute or relative time frame and filter the results based on multiple criteria", "parameters": [{"schema": {"$ref": "#/definitions/hpmRequestV2"}, "required": true, "name": "body", "in": "body"}, {"description": "Determines format of timestamp in response. Either nanoseconds or RFC3339 formatted timestamp", "default": "rfc3339", "enum": ["ns", "rfc3339"], "in": "query", "type": "string", "name": "ts"}, {"in": "query", "type": "string", "description": "Unix timstamp representing the absolute start time of the query. Used for paging through datapoints. A user triggered request must specify a RFC3339 formatted 'startTime' in the request body. If both are defined, the URL parameter takes precedence.", "name": "start"}, {"in": "query", "type": "string", "description": "Unix timstamp representing the absolute end time of the query. Used for paging through datapoints. A user triggered request must specify a RFC3339 formatted 'endTime' in the request body. If both are defined, the URL parameter takes precedence.", "name": "end"}, {"in": "query", "type": "number", "description": "Page number", "name": "page"}], "produces": ["application/json"], "tags": ["Historical"], "summary": "Retrieves historical performance metrics", "consumes": ["application/json"], "responses": {"201": {"description": "Returns all metrics available for the provided time frame that match the specified criteria", "schema": {"$ref": "#/definitions/hpmResponseV2"}}, "500": {"description": "Unexpected error", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "400": {"description": "Bad Request format", "schema": {"$ref": "#/definitions/pmErrorV2"}}}}}, "/pm/api/v2/collections/networkelements/types/{type}": {"patch": {"description": "Update collection configuration of all network elements of given type", "parameters": [{"required": true, "in": "path", "type": "string", "description": "Network Element Type (i.e: 6500)", "name": "type"}, {"schema": {"$ref": "#/definitions/collectionsPatch"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Collections"], "summary": "Update collection configuration of all network elements of given type", "consumes": ["application/json"], "responses": {"200": {"description": "Success"}, "207": {"description": "Partial success", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "404": {"description": "Not found", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "409": {"description": "Conflict. Server constraint violated", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmErrorV2"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmErrorV2"}}}}}}, "schemes": ["http"], "produces": ["application/json"], "basePath": "/", "tags": [{"description": "Reset a collection facility", "name": "Facilities"}, {"description": "Retrieve real-time performance metrics", "name": "Real-Time"}, {"description": "Search and filter historical performance metrics", "name": "Historical"}, {"description": "Configure collection intervals and resolution for individual or groups of devices", "name": "Collections"}], "definitions": {"initRegRequestAttr": {"example": {"measurementPoints": [{"resurceType": "TPE", "resourceId": "36b4c0eb-4a24-3339-96d9-cfa3912df58a::TPE_36b4c0eb-4a24-3339-96d9-cfa3912df58a::EQPT_0_1-6-CTPServerToClient-1", "nodeId": "36b4c0eb-4a24-3339-96d9-cfa3912df58a", "resourceObject": {"type": "initRegister", "nativeFacilityName": "OPTMON-0-1-6"}}], "criteria": {"granularity": ["15_MINUTE", "UNTIMED"]}}, "required": ["measurementPoints"], "type": "object", "description": "INIT-REG request attributes", "properties": {"measurementPoints": {"items": {"$ref": "#/definitions/measurementPoint"}, "type": "array"}, "criteria": {"$ref": "#/definitions/initRegCriteria"}}}, "rpmCriteria": {"type": "object", "properties": {"powerType": {"enum": ["TOTAL", "CHANNEL", "OSC", "FIBERLOSS", "SPECTRUM"], "type": "string", "description": "Power Type"}, "parameters": {"items": {"uniqueItems": true, "type": "string"}, "type": "array", "description": "PM parameters. For MCP 16.12 drop 1 and drop 2 it will native name instead of normalized names"}, "suppress": {"default": "ZERO", "enum": ["ZERO", "NONE", "ZERO_VALID"], "type": "string", "description": "Monitoring Level"}, "includeThreshold": {"default": false, "type": "boolean", "description": "Include Threshold flag indicates whether response to include Threshold Level or not"}, "granularity": {"items": {"enum": ["UNTIMED", "15_MINUTE", "24_HOUR", "BASELINE", "ALL"], "type": "string"}, "type": "array", "description": "[6500 only] The granularity of the desired binTypes"}, "binIndex": {"pattern": "(\\d{1,2}(-\\d{1,2})?,?){1,}", "type": "string", "description": "bin index. User can input data in any of the following format 0 | 0,1-3,5-7,21 | 0-32 | 1,3,5,7,9"}}}, "pmErrorV2": {"type": "object", "description": "Errors that occurred", "properties": {"errors": {"items": {"type": "object", "properties": {"code": {"type": "string", "description": "The error code"}, "detail": {"type": "string", "description": "The detailed description of the error"}, "title": {"type": "string", "description": "The error title"}}}, "type": "array"}}}, "queryResponseAttributes": {"type": "object", "properties": {"status": {"enum": ["inProgress", "completed", "error"], "type": "string"}, "lastBatch": {"type": "boolean"}, "errors": {"items": {"$ref": "#/definitions/pmError"}, "type": "array"}, "nodeId": {"type": "string"}, "metrics": {"items": {"$ref": "#/definitions/metricData"}, "type": "array"}, "requestId": {"type": "string"}}}, "tagResponse": {"type": "object", "properties": {"data": {"items": {"type": "string"}, "type": "array", "description": "Array of existing values for the given tag"}}, "example": {"data": ["PV00456", "PV77009", "Ottawa_045"]}}, "rpmRequestData": {"required": ["attributes"], "type": "object", "properties": {"attributes": {"$ref": "#/definitions/rpmRequestAttributes"}}}, "hpmResponseV2": {"required": ["data"], "type": "object", "properties": {"data": {"items": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"values": {"additionalProperties": {"type": "number"}, "description": "A map, representing the time series. timestamp:value . Timestamp can be nanoseconds or RFC3339 formatted."}, "tags": {"additionalProperties": {"type": "string"}, "type": "object", "description": "A tag"}}}}}, "type": "array"}, "links": {"type": "object", "properties": {"nextInterval": {"type": "string", "description": "A relative URL pointing to the next interval of datapoints for the time series in the current response. The interval returned for a single page can be specified as 'interval' in the request."}, "previousInterval": {"type": "string", "description": "A relative URL pointing to the previous interval of datapoints for the time series in the current response. The interval returned for a single page can be specified as 'interval' in the request."}, "self": {"type": "string", "description": "A relative URL pointing to the current page"}, "previousPage": {"type": "string", "description": "A relative URL pointing to the previous page of time series matching the request filter. The maximum amount of time series on a single page can be specified as 'pageSize' in the request."}, "nextPage": {"type": "string", "description": "A relative URL pointing to the next page of time series matching the request filter. The maximum amount of time series on a single page can be specified as 'pageSize' in the request."}}}}, "example": {"data": [{"attributes": {"values": {"2019-02-04T15:30:00Z": 5.56, "2019-02-04T15:15:00Z": 4.556}, "tags": {"facilityNameNative": "OTM4-3-4-2", "direction": "NEND", "parameter": "Fiberloss", "networkElementName": "Ottawa_011"}}}, {"attributes": {"values": {"2019-02-04T15:15:00Z": 2.556}, "tags": {"facilityNameNative": "OTM4-3-4-2", "direction": "FEND", "parameter": "Fiberloss", "networkElementName": "Ottawa_011"}}}], "links": {"nextInterval": "/pm/api/v2/query/metrics?start=1556783931000&end=1556913531000&page=1", "previousInterval": "/pm/api/v2/query/metrics?start=1556740714000&end=1556783931000&page=1", "self": "/pm/api/v2/query/metrics?start=1556783931000&end=1556913531000&page=1", "previousPage": "/pm/api/v2/query/metrics?start=1556783931000&end=1556827131000&page=0", "nextPage": "/pm/api/v2/query/metrics?start=1556783931000&end=1556827131000&page=2"}}}, "rpmRequestAttributes": {"required": ["measurementPoints"], "type": "object", "properties": {"measurementPoints": {"items": {"$ref": "#/definitions/measurementPoint"}, "type": "array", "description": "The measurement point defines the specific resource the retrieve metrics from. Multiple measurement points on the same or different network elements may be specified"}, "criteria": {"$ref": "#/definitions/rpmCriteria"}}, "example": {"measurementPoints": [{"resourceType": "TPE", "resourceId": "6bc1c116-bba6-3c25-bbe2-21423cd8dacd::TPE_6bc1c116-bba6-3c25-bbe2-21423cd8dacd::EQPT_0_1-5-PTP", "nodeId": "6bc1c116-bba6-3c25-bbe2-21423cd8dacd", "resourceObject": {"tpe": {"data": {"attributes": {"locations": [{"slot": "1", "shelf": "0", "port": "6"}]}}}, "type": "pmData"}}], "criteria": {"suppress": "NONE", "parameters": ["OPR-OTS", "CV-ODU"], "binIndex": "0-12", "includeThreshold": false, "granularity": ["15_MINUTE", "24_HOUR"]}}}, "initRegCriteria": {"type": "object", "description": "Criteria allow qualification of the result set", "properties": {"powerType": {"enum": ["TOTAL", "CHANNEL", "OSC", "FIBERLOSS"], "type": "string", "description": "Power Type"}, "monVal": {"default": 0, "minimum": -2147483646, "type": "integer", "description": "Value of the monitored PM parameter", "maximum": 2147483646}, "granularity": {"items": {"enum": ["UNTIMED", "15_MINUTE", "24_HOUR", "BASELINE", "ALL"], "type": "string"}, "type": "array", "description": "[6500 only] The granularity of the desired binTypes"}}}, "requestTypeEnum": {"enum": ["absolute", "relative"], "type": "string"}, "rpmRequest": {"required": ["data"], "type": "object", "description": "The Real-Time metrics query", "properties": {"data": {"$ref": "#/definitions/rpmRequestData"}}}, "hpmRequestRange": {"type": "object", "properties": {"value": {"minimum": 1, "type": "integer", "maximum": 2147483646}, "endTime": {"type": "string", "format": "date-time"}, "type": {"$ref": "#/definitions/requestTypeEnum"}, "unit": {"$ref": "#/definitions/timeUnitEnum"}, "startTime": {"type": "string", "format": "date-time"}}}, "measurementPoint": {"required": ["nodeId"], "type": "object", "properties": {"resourceType": {"type": "string", "description": "Inventory resource type. Example: TPE"}, "resourceId": {"type": "string", "description": "The resourceId in the format: Bay-Shelf-Slot-Port. Example: 1-1-2-6"}, "nodeId": {"type": "string", "description": "The ID of the network element"}, "resourceObject": {"$ref": "#/definitions/resourceObject"}}}, "resourceObject": {"description": "Inventory resource object", "properties": {"tpe": {"type": "object", "description": "A JSON-formatted TPE object"}, "nativePmFacilityName": {"type": "string", "description": "The native name of the facility of the network element that is subject to this query"}, "cardType": {"$ref": "#/definitions/cardType"}, "location": {"$ref": "#/definitions/location"}, "signalIndex": {"$ref": "#/definitions/signalIndex"}, "type": {"type": "string"}}}, "location": {"description": "The location of the entity queried for metrics", "properties": {"slot": {"type": "string"}, "subport": {"type": "string"}, "shelf": {"type": "string"}, "baynum": {"type": "string"}, "mcId": {"type": "string", "description": "chcIdx of NMCC AID"}, "subslot": {"type": "string"}, "port": {"type": "string"}}}, "hpmRequestAttributes": {"required": ["range", "filter"], "type": "object", "properties": {"filter": {"items": {"type": "object"}, "type": "array", "description": "Define a filter for your query. The filter syntax matches heroics filter syntax"}, "range": {"$ref": "#/definitions/hpmRequestRange"}}, "example": {"filter": ["and", ["=", "facilityNameNative", "OMS-4-2-1"]], "range": {"endTime": "2016-10-26T15:50:11.152-04:00", "type": "absolute", "startTime": "2016-10-26T15:50:11.152-04:00"}}}, "signalIndex": {"required": ["index_name", "index_value"], "description": "Signal index of entity queried for metrics if applicable", "properties": {"index_value": {"type": "string", "description": "Value of the signal index"}, "index_name": {"enum": ["wavelength", "odu4_index", "odu2_index", "frequency", "nmcId"], "type": "string", "description": "Named attribute of the signal index"}}}, "collectionsBulkRequestData": {"type": "object", "properties": {"attributes": {"required": ["configName"], "type": "object", "properties": {"applyForNeNames": {"items": {"type": "string"}, "type": "array"}, "applyForNeTypes": {"items": {"type": "string"}, "type": "array"}, "configName": {"type": "string"}, "pollingInterval": {"$ref": "#/definitions/timeUnit"}, "enabled": {"x-nullable": true, "type": "boolean"}, "resolution": {"$ref": "#/definitions/timeUnit"}}}, "type": {"enum": ["config"], "type": "string"}}}, "initRegisterResponseItem": {"type": "object", "description": "Response of a INIT-REG measurement point", "properties": {"attributes": {"required": ["resourceId", "status"], "type": "object", "properties": {"status": {"items": {"$ref": "#/definitions/initRegStatus"}, "type": "array"}, "resourceId": {"type": "string", "description": "The resourceId for which response is returned"}}}}}, "collectionsBulkRequest": {"required": ["data"], "type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/collectionsBulkRequestData"}, "type": "array"}}, "example": {"data": [{"attributes": {"applyForNeNames": ["PV0045", "PV0046"], "resolution": {"value": 15, "unit": "MINUTES"}, "enabled": true, "configName": "15_MINUTES", "pollingInterval": {"value": 3, "unit": "HOURS"}}, "type": "config"}]}}, "metaResponse": {"type": "object", "properties": {"meta": {"type": "object", "properties": {"context-total": {"type": "number"}}}}}, "hpmRequestV2": {"required": ["data"], "type": "object", "properties": {"data": {"required": ["attributes"], "type": "object", "properties": {"attributes": {"required": ["filter", "range"], "type": "object", "properties": {"filter": {"items": {"type": "object"}, "type": "array", "description": "Define a filter for your query"}, "sort": {"items": {"type": "string"}, "type": "array", "description": "Define a sort order for the result. Prefix with '-' for DESC"}, "range": {"required": ["type"], "type": "object", "description": "Defines the time range to be queried. Supports 'absolute' with RFC3339 compatible start and end date or 'relative' with a 'unit' (SECONDS, MINUTES, etc) and 'value'", "properties": {"value": {"minimum": 1, "type": "integer", "maximum": 2147483646}, "endTime": {"type": "string", "format": "date-time"}, "type": {"$ref": "#/definitions/requestTypeEnum"}, "unit": {"$ref": "#/definitions/timeUnitEnum"}, "startTime": {"type": "string", "format": "date-time"}}}, "interval": {"type": "string", "description": "The time interval returned in the response. This can be used to page through the specified time range. I not specified, all data for the queried time period is returned. To facilitate access to the next interval, a link is present in meta>nextInterval. Use a value with a time suffix (m - minutes, h - hours, d - days)"}, "pageSize": {"type": "number", "description": "The maximum amount of unique time series returned in the response. If more times series are in the result set, a link to the next page is created in meta>nextPage"}}}}}}, "example": {"data": {"attributes": {"filter": ["and", ["=", "networkElementName", "PV00445"], ["or", ["=", "facilityNameNative", "OMS-4-2-1"], ["endsWith", "facilityNameNative", "-10"], ["startsWith", "facilityNameNative", "ODU"]]], "sort": ["-facilityNameNative", "parameter"], "range": {"endTime": "2019-05-03T12:00:00.000-04:00", "type": "absolute", "startTime": "2019-05-02T12:00:00.000-04:00"}, "interval": "12h", "pageSize": 100}}}}, "initRegisterResponse": {"type": "object", "description": "INIT-REG response", "properties": {"data": {"items": {"$ref": "#/definitions/initRegisterResponseItem"}, "type": "array"}}}, "metricData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/metricAttributes"}, "type": {"enum": ["metrics"], "type": "string"}}}, "cardType": {"required": ["shortName"], "description": "The card type information", "properties": {"partNumber": {"type": "string", "description": "PEC code of the card. Ex: NTK553MA"}, "shortName": {"type": "string", "description": "Card name such as 100g MUX, OTR, OTNFLEX"}, "longName": {"type": "string", "description": "CTYPE of card such as the full name of card reported by NE"}}}, "initRegStatus": {"additionalProperties": false, "required": ["aid", "success"], "type": "object", "properties": {"aid": {"type": "string", "description": "AID for the corresponding measurement point for the request"}, "success": {"type": "boolean", "description": "Tells the Init Register response for the specific MeasurementPoint is success or not"}, "error": {"additionalProperties": false, "required": ["code", "detail", "title"], "type": "object", "description": "Error response object", "properties": {"code": {"type": "string", "description": "Error code"}, "detail": {"type": "string", "description": "Error description"}, "title": {"type": "string", "description": "Error Title"}}}}}, "queryResponseData": {"required": ["attributes"], "type": "object", "properties": {"attributes": {"$ref": "#/definitions/queryResponseAttributes"}, "type": {"default": "results", "enum": ["results"], "type": "string"}, "id": {"type": "string", "description": "The UUIDv4 identifying the PM query request"}}}, "timeUnit": {"example": {"value": 3, "unit": "HOURS"}, "required": ["unit", "value"], "type": "object", "description": "A TimeUnit is represented by the unit (SECONDS/MINUTES/HOURS/DAYS) and a value that is quantifying the unit", "properties": {"value": {"type": "number"}, "unit": {"enum": ["SECONDS", "MINUTES", "HOURS", "DAYS"], "type": "string"}}}, "hpmRequest": {"required": ["data"], "type": "object", "description": "The Historical metrics query", "properties": {"data": {"$ref": "#/definitions/hpmRequestData"}}}, "collectionsGet": {"required": ["data"], "type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/collectionsGetData"}, "type": "array"}}}, "queryResponse": {"required": ["data"], "type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/pmError"}, "type": "array"}, "data": {"items": {"$ref": "#/definitions/queryResponseData"}, "type": "array"}}}, "collectionsPatchData": {"required": ["id", "type", "attributes"], "type": "object", "properties": {"attributes": {"required": ["configName"], "type": "object", "properties": {"pollingInterval": {"$ref": "#/definitions/timeUnit"}, "resolution": {"$ref": "#/definitions/timeUnit"}, "enabled": {"x-nullable": true, "type": "boolean"}, "configName": {"type": "string"}}}, "type": {"enum": ["config"], "type": "string"}, "id": {"type": "string", "description": "Network Element Name (PV0445A) or Type (6500)"}}}, "sample": {"required": ["time", "value"], "type": "object", "properties": {"value": {"type": "number"}, "condition": {"type": "string"}, "time": {"type": "string"}}}, "hpmRequestData": {"required": ["attributes"], "type": "object", "properties": {"attributes": {"$ref": "#/definitions/hpmRequestAttributes"}}}, "metricAttributes": {"required": ["resourceId"], "type": "object", "properties": {"meta_tags": {"additionalProperties": {"type": "string"}, "type": "object"}, "tags": {"additionalProperties": {"type": "string"}, "type": "object"}, "resourceId": {"type": "string"}, "nativePmFacilityName": {"type": "string", "description": "The name of the PM facility being requested"}, "version": {"default": "1.0", "type": "string"}, "values": {"items": {"$ref": "#/definitions/sample"}, "type": "array"}, "location": {"type": "object", "description": "Location of entity queried for pm data", "$ref": "#/definitions/location"}}}, "pmError": {"type": "object", "description": "An error that occurred during PM collection", "properties": {"source": {"type": "string", "description": "The source of the error"}, "code": {"type": "string", "description": "The error code"}, "detail": {"type": "string", "description": "The detailed description of the error"}, "title": {"type": "string", "description": "The error title"}}}, "collectionsPatch": {"required": ["data"], "type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/collectionsPatchData"}, "type": "array"}}, "example": {"data": [{"attributes": {"pollingInterval": {"value": 3, "unit": "HOURS"}, "resolution": {"value": 15, "unit": "MINUTES"}, "enabled": true, "configName": "15_MINUTES"}, "type": "config", "id": "PV0445A"}]}}, "timeUnitEnum": {"enum": ["MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS", "WEEKS", "MONTHS"], "type": "string"}, "initRegisterRequest": {"required": ["data"], "type": "object", "description": "The Real-Time metrics query", "properties": {"data": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/initRegRequestAttr"}, "type": {"type": "string"}}}}}, "metaRequest": {"required": ["data"], "type": "object", "properties": {"data": {"required": ["attributes"], "type": "object", "properties": {"attributes": {"required": ["filter", "range"], "type": "object", "properties": {"filter": {"items": {"type": "object"}, "type": "array", "description": "Define a filter for your query"}, "range": {"required": ["type"], "type": "object", "description": "Defines the time range to be queried. Supports 'absolute' with RFC3339 compatible start and end date or 'relative' with a 'unit' (SECONDS, MINUTES, etc) and 'value'", "properties": {"value": {"minimum": 1, "type": "integer", "maximum": 2147483646}, "endTime": {"type": "string", "format": "date-time"}, "type": {"$ref": "#/definitions/requestTypeEnum"}, "unit": {"$ref": "#/definitions/timeUnitEnum"}, "startTime": {"type": "string", "format": "date-time"}}}}}}}}, "example": {"data": {"attributes": {"filter": ["and", ["=", "networkElementName", "PV00445"], ["or", ["=", "facilityNameNative", "OMS-4-2-1"], ["endsWith", "facilityNameNative", "-10"]]], "range": {"endTime": "2019-05-03T12:00:00.000-04:00", "type": "absolute", "startTime": "2019-05-02T12:00:00.000-04:00"}}}}}, "collectionsGetData": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"pollingInterval": {"$ref": "#/definitions/timeUnit"}, "resolution": {"$ref": "#/definitions/timeUnit"}, "enabled": {"type": "boolean"}, "configName": {"type": "string"}}}, "type": {"enum": ["config"], "type": "string"}, "id": {"type": "string", "description": "Network Element Name"}}}}, "swagger": "2.0", "consumes": ["application/json"]}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_pm_processor.json b/tapi/resources/MCP_4.0.0_pm_processor.json
deleted file mode 100644
index bcda2c0496654f1727ccce489aff816f93b7fd22..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_pm_processor.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "0.0.1", "description": "Performance Metrics Processing for threshold alerts and derived metrics", "title": "PM Processor"}, "paths": {"/v1/resource_profiles": {"put": {"responses": {"404": {"description": "Threshold group not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "202": {"description": "Resource profile(s) update request accepted with primary validation successful"}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Update one or more resource profiles", "parameters": [{"required": true, "schema": {"$ref": "#/definitions/resourceProfiles"}, "in": "body", "description": "The new resource profile", "name": "body"}], "produces": ["application/json"], "tags": ["Resource Profiles"], "summary": "Update resource profile(s)", "consumes": ["application/json"], "operationId": "updateResourceProfile"}, "post": {"responses": {"404": {"description": "Threshold group for profile not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "202": {"description": "Resource profile create request accepted with primary validation successful", "schema": {"$ref": "#/definitions/resourceProfiles"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "409": {"description": "Resource profile already exists", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Create a resource profile with one or more resources for association with one or more pre-existing threshold groups", "parameters": [{"schema": {"$ref": "#/definitions/resourceProfiles"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Resource Profiles"], "summary": "Create resource profile for one or more resources", "consumes": ["application/json"], "operationId": "createResourceProfile"}, "get": {"responses": {"200": {"description": "Successfully retrieved all resource profiles", "schema": {"$ref": "#/definitions/resourceProfiles"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "tags": ["Resource Profiles"], "description": "Retrieve all resource profiles", "produces": ["application/json"], "summary": "Retrieve all resource profiles", "operationId": "getAllResourceProfiles"}}, "/v1/thresholds/{thresholdId}": {"put": {"responses": {"404": {"description": "Threshold not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "202": {"description": "Threshold update request accepted with primary validation successful"}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "409": {"description": "Conflicting IDs", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Update a specific threshold by ID", "parameters": [{"required": true, "in": "path", "type": "string", "description": "ID of the threshold to retrieve", "name": "thresholdId"}, {"required": true, "schema": {"$ref": "#/definitions/threshold"}, "in": "body", "description": "The new threshold", "name": "body"}], "produces": ["application/json"], "tags": ["Thresholds"], "summary": "Update threshold by ID", "consumes": ["application/json"], "operationId": "updateThresholdById"}, "delete": {"responses": {"404": {"description": "Threshold not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "202": {"description": "Threshold delete request accepted with primary validation successful"}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "parameters": [{"required": true, "in": "path", "type": "string", "description": "ID of the threshold to delete", "name": "thresholdId"}], "tags": ["Thresholds"], "description": "Delete a specific threshold, the deleted threshold is removed from all threshold groups.", "summary": "Delete a threshold by ID.", "operationId": "deleteThresholdById"}, "get": {"responses": {"200": {"description": "Successfully retrieved specified threshold", "schema": {"$ref": "#/definitions/threshold"}}, "404": {"description": "Threshold not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Retrieve a specfic threshold by ID", "parameters": [{"required": true, "in": "path", "type": "string", "description": "ID of the threshold to retrieve", "name": "thresholdId"}], "tags": ["Thresholds"], "produces": ["application/json"], "summary": "Retrieve threshold by ID", "operationId": "getThresholdById"}}, "/v1/calculationcontexts": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/calculationContexts"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Queries active CalculationContext instances for debugging purposes", "parameters": [{"in": "query", "type": "string", "description": "Only return CalculationContext instances, associated with the given root FRE ID", "name": "rootfreid"}, {"in": "query", "type": "string", "description": "Only return CalculationContext instances, created by the given Calculation", "name": "calculation"}], "produces": ["application/json"], "tags": ["Derived Metrics"], "summary": "Queries active CalculationContext instances", "consumes": ["application/json"], "operationId": "queryCalculationContext"}}, "/v1/threshold_groups/{thresholdGroupId}": {"put": {"responses": {"404": {"description": "Threshold group not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "202": {"description": "Threshold group update request accepted with primary validation successful"}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "409": {"description": "Conflicting IDs", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Update a specific threshold group by ID", "parameters": [{"required": true, "in": "path", "type": "string", "description": "ID of the threshold group to retrieve", "name": "thresholdGroupId"}, {"required": true, "schema": {"$ref": "#/definitions/thresholdGroup"}, "in": "body", "description": "The new threshold group", "name": "body"}], "produces": ["application/json"], "tags": ["Threshold Groups"], "summary": "Update threshold group by ID", "consumes": ["application/json"], "operationId": "updateThresholdGroupById"}, "delete": {"operationId": "deleteThresholdGroupById", "summary": "Delete a threshold group by ID", "responses": {"404": {"description": "Threshold group not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "202": {"description": "Threshold group delete request accepted with primary validation successful"}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "parameters": [{"required": true, "in": "path", "type": "string", "description": "ID of the threshold group to delete", "name": "thresholdGroupId"}], "tags": ["Threshold Groups"]}, "get": {"responses": {"200": {"description": "Successfully retrieved specified threshold group", "schema": {"$ref": "#/definitions/thresholdGroup"}}, "404": {"description": "Threshold group not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Retrieve a specfic threshold group by ID", "parameters": [{"required": true, "in": "path", "type": "string", "description": "ID of the threshold group to retrieve", "name": "thresholdGroupId"}], "tags": ["Threshold Groups"], "produces": ["application/json"], "summary": "Retrieve threshold group by ID", "operationId": "getThresholdGroupById"}}, "/v1/threshold_groups": {"put": {"responses": {"404": {"description": "Threshold group not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "202": {"description": "Threshold group(s) update request accepted with primary validation successful"}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Update one or more threshold groups", "parameters": [{"required": true, "schema": {"$ref": "#/definitions/thresholdGroups"}, "in": "body", "description": "The new threshold group(s)", "name": "body"}], "produces": ["application/json"], "tags": ["Threshold Groups"], "summary": "Update threshold group(s)", "consumes": ["application/json"], "operationId": "updateThresholdGroup"}, "post": {"responses": {"404": {"description": "Threshold for group not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "202": {"description": "Threshold group(s) create request accepted with primary validation successful", "schema": {"$ref": "#/definitions/thresholdGroups"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "409": {"description": "Threshold group already exists", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Create a PM threshold group with one or more pre-existing thresholds for association with a resource profile", "parameters": [{"schema": {"$ref": "#/definitions/thresholdGroups"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Threshold Groups"], "summary": "Create threshold group(s) containing one or more pre-existing thresholds", "consumes": ["application/json"], "operationId": "createThresholdGroup"}, "get": {"responses": {"200": {"description": "Successfully retrieved all threshold groups", "schema": {"$ref": "#/definitions/thresholdGroups"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "tags": ["Threshold Groups"], "description": "Retrieve all persisted threshold groups", "produces": ["application/json"], "summary": "Retrieve all threshold groups", "operationId": "getAllThresholdGroups"}}, "/v1/resource_profiles/{resourceProfileId}": {"put": {"responses": {"404": {"description": "Threshold group not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "202": {"description": "Resource profile update request accepted with primary validation successful"}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "409": {"description": "Conflicting IDs", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Update a specific resource profile by ID", "parameters": [{"required": true, "in": "path", "type": "string", "description": "ID of the resource profile to retrieve", "name": "resourceProfileId"}, {"required": true, "schema": {"$ref": "#/definitions/resourceProfile"}, "in": "body", "description": "The new resource profile", "name": "body"}], "produces": ["application/json"], "tags": ["Resource Profiles"], "summary": "Update a specific resource profile by ID", "consumes": ["application/json"], "operationId": "updateResourceProfileById"}, "delete": {"operationId": "deleteResourceProfileById", "summary": "Delete a resource profile by ID", "responses": {"404": {"description": "Resource profile not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "202": {"description": "Resource profile delete request accepted with primary validation successful"}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "parameters": [{"required": true, "in": "path", "type": "string", "description": "ID of the resource profile to delete", "name": "resourceProfileId"}], "tags": ["Resource Profiles"]}, "get": {"responses": {"200": {"description": "Successfully retrieved specified resource profile", "schema": {"$ref": "#/definitions/resourceProfile"}}, "404": {"description": "Resource profile not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Retrieve a specfic resource profile by ID", "parameters": [{"required": true, "in": "path", "type": "string", "description": "ID of the resource profile to retrieve", "name": "resourceProfileId"}], "tags": ["Resource Profiles"], "produces": ["application/json"], "summary": "Retrieve resource profile by ID", "operationId": "getResourceProfileById"}}, "/v1/thresholds": {"put": {"responses": {"404": {"description": "Threshold not found", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "202": {"description": "Threshold update request accepted with primary validation successful"}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Update threshold(s)", "parameters": [{"required": true, "schema": {"$ref": "#/definitions/thresholds"}, "in": "body", "description": "The new threshold(s)", "name": "body"}], "produces": ["application/json"], "tags": ["Thresholds"], "summary": "Update one or more thresholds", "consumes": ["application/json"], "operationId": "updateThreshold"}, "post": {"responses": {"202": {"description": "Threshold creation request accepted with primary validation successful", "schema": {"$ref": "#/definitions/thresholds"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "description": "Create a PM threshold and define an alarm for when threshold is violated. All thresholds must be valid for the creation to occur", "parameters": [{"schema": {"$ref": "#/definitions/thresholdsNoID"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Thresholds"], "summary": "Create threshold(s) with associated alert", "consumes": ["application/json"], "operationId": "createThreshold"}, "get": {"responses": {"200": {"description": "Successfully retrieved all thresholds", "schema": {"$ref": "#/definitions/thresholds"}}, "500": {"description": "Error", "schema": {"$ref": "#/definitions/pmProcessorError"}}}, "tags": ["Thresholds"], "description": "Retrieve all persisted thresholds", "produces": ["application/json"], "summary": "Retrieve all thresholds", "operationId": "getAllThresholds"}}}, "produces": ["application/json"], "basePath": "/pmprocessor/api", "tags": [{"description": "Derive Metrics from existing ones", "name": "Derived Metrics"}, {"description": "Create, update, and delete thresholds", "name": "Thresholds"}, {"description": "Create, update, and delete threshold groups", "name": "Threshold Groups"}, {"description": "Create, update, and delete resource profiles", "name": "Resource Profiles"}], "definitions": {"thresholdData": {"required": ["id", "type", "attributes"], "type": "object", "description": "A threshold", "properties": {"attributes": {"$ref": "#/definitions/thresholdAttributes"}, "type": {"default": "threshold", "enum": ["threshold"], "type": "string"}, "id": {"type": "string", "description": "the unique threshold ID"}}}, "thresholdGroups": {"required": ["data"], "type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/thresholdGroupData"}, "type": "array"}}, "example": {"data": [{"attributes": {"thresholdId": ["threshold_id_1", "threshold_id_2"]}, "type": "thresholdGroup", "id": "Troubleshoot"}]}}, "resourceProfileData": {"required": ["id", "type", "attributes"], "type": "object", "description": "A resource profile", "properties": {"attributes": {"$ref": "#/definitions/resourceProfileAttributes"}, "type": {"default": "resourceProfile", "enum": ["resourceProfile"], "type": "string"}, "id": {"type": "string", "description": "The unique resource profile identifer"}}}, "thresholds": {"required": ["data"], "type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/thresholdData"}, "type": "array"}}, "example": {"data": [{"attributes": {"name": "My threshold", "tags": {"granularityNative": "15-MIN"}, "maxValue": {"value": 10.5}, "thresholdType": "max", "action": {"alarmAlert": {"severity": "MINOR"}}, "pmParameter": "fiberloss"}, "type": "threshold", "id": "0911c8ff-07e7-43dd-96f2-b2bdb3f987ad"}]}}, "minValue": {"required": ["value"], "type": "object", "description": "a minimum value threshold", "properties": {"value": {"type": "number", "description": "the value that if the parameter goes below will trigger the alert"}}}, "threshold": {"required": ["data"], "type": "object", "properties": {"data": {"$ref": "#/definitions/thresholdData"}}, "example": {"data": {"attributes": {"name": "My threshold", "tags": {"granularityNative": "15-MIN"}, "maxValue": {"value": 10.5}, "thresholdType": "max", "action": {"alarmAlert": {"severity": "MINOR"}}, "pmParameter": "fiberloss"}, "type": "threshold", "id": "0911c8ff-07e7-43dd-96f2-b2bdb3f987ad"}}}, "calculationContexts": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/calculationContext"}, "type": "array"}}}, "resourceProfiles": {"required": ["data"], "type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/resourceProfileData"}, "type": "array"}}, "example": {"data": [{"attributes": {"thresholdGroupId": ["myGroup1", "myGroup2"], "nodeId": ["id_1", "id_2"], "tags": [{"tag1": "tag1matcher", "tag2": "tag2matcher"}, {"tag1": "differentMatcher"}]}, "type": "resourceProfile", "id": "WestCoastResources"}]}}, "resourceProfile": {"required": ["data"], "type": "object", "properties": {"data": {"$ref": "#/definitions/resourceProfileData"}}, "example": {"data": {"attributes": {"thresholdGroupId": ["myGroup1", "myGroup2"], "nodeId": ["id_1", "id_2"], "tags": [{"tag1": "tag1matcher", "tag2": "tag2matcher"}, {"tag1": "differentMatcher"}]}, "type": "resourceProfile", "id": "WestCoastResources"}}}, "thresholdAlarmAlert": {"required": ["severity"], "type": "object", "description": "An alarm alert", "properties": {"severity": {"enum": ["CRITICAL", "MAJOR", "MINOR", "WARNING", "INDETERMINATE", "INFO", "CONFIG", "DEBUG"], "type": "string", "description": "The severity of alarm to raise for threshold crossing"}}}, "thresholdAlertAction": {"required": ["alarmAlert"], "type": "object", "description": "the threshold crossing alert action", "properties": {"alarmAlert": {"$ref": "#/definitions/thresholdAlarmAlert"}}}, "measurementPoint": {"type": "object", "properties": {"facilityNameNative": {"type": "string"}, "variableName": {"type": "string"}, "parameterNameNative": {"type": "string"}}}, "deviation": {"required": ["value", "baseValue"], "type": "object", "description": "a maximum value threshold", "properties": {"value": {"type": "number", "description": "the absolute value of the deviation for the alert to be triggered"}, "baseValue": {"type": "number", "description": "the base value from which the deviation occurs"}}}, "thresholdAttributes": {"required": ["thresholdType", "pmParameter", "action"], "type": "object", "description": "attributes of a threshold", "properties": {"deviation": {"$ref": "#/definitions/deviation"}, "name": {"type": "string", "description": "The threshold name"}, "tags": {"description": "Specific tags to match on. Currently only the granularityNative tag is supported. Exact match only, regexp will be supported in a future release", "$ref": "#/definitions/metricTags"}, "maxValue": {"$ref": "#/definitions/maxValue"}, "minValue": {"$ref": "#/definitions/minValue"}, "thresholdType": {"enum": ["min", "max", "deviation"], "type": "string"}, "action": {"$ref": "#/definitions/thresholdAlertAction"}, "pmParameter": {"type": "string", "description": "The PM parameter to apply the threshold to"}}}, "thresholdGroupAttributes": {"required": ["thresholdId"], "type": "object", "description": "attributes of a threshold group", "properties": {"thresholdId": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "The threshold ID(s) to group"}}}, "maxValue": {"required": ["value"], "type": "object", "description": "a maximum value threshold", "properties": {"value": {"type": "number", "description": "the value that if the parameter goes above will trigger the alert"}}}, "calculationContext": {"type": "object", "properties": {"measurementpoints": {"items": {"$ref": "#/definitions/measurementPoint"}, "type": "array"}, "calculationName": {"type": "string"}, "rootfreId": {"type": "string"}}}, "thresholdsNoID": {"required": ["data"], "type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/thresholdDataNoID"}, "type": "array"}}, "example": {"data": [{"attributes": {"name": "My threshold", "tags": {"granularityNative": "15-MIN"}, "maxValue": {"value": 10.5}, "thresholdType": "max", "action": {"alarmAlert": {"severity": "MINOR"}}, "pmParameter": "fiberloss"}, "type": "threshold"}]}}, "thresholdGroupData": {"required": ["id", "type", "attributes"], "type": "object", "description": "A threshold group", "properties": {"attributes": {"$ref": "#/definitions/thresholdGroupAttributes"}, "type": {"default": "thresholdGroup", "enum": ["thresholdGroup"], "type": "string"}, "id": {"type": "string", "description": "The unique threshold group identifer"}}}, "resourceProfileAttributes": {"required": ["nodeId", "thresholdGroupId"], "type": "object", "description": "attributes of a resource profile", "properties": {"thresholdGroupId": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "The threshold group(s) to associate with the resource profile"}, "nodeId": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "The IDs for nodes containing the specified resource(s)"}, "tags": {"items": {"$ref": "#/definitions/metricTags"}, "type": "array", "description": "Specific tags to match on. Currently only the facilityNameNative tag is supported. Regexp match supported"}}}, "metricTags": {"additionalProperties": {"type": "string"}, "type": "object", "description": "A key-value hash of tags to be matched upon, all tags must match for a positive match. Supports regexp matching"}, "rawAlarmEvent": {"type": "object", "description": "Event to send on topic bp.ra.v1.alarms in order to raise alarm in AEP", "properties": {"additionalAttributes": {"additionalProperties": {"type": "string"}, "type": "object"}, "_type": {"default": "bp.v1.AlarmEvent", "enum": ["bp.v1.AlarmEvent"], "type": "string", "description": "The alarm event type"}, "resource": {"type": "string", "description": "The alarming entity, e.g. 40GMUX-2-2"}, "severity": {"enum": ["CRITICAL", "MAJOR", "MINOR", "WARNING", "INDETERMINATE", "INFO", "CONFIG", "DEBUG"], "type": "string"}, "conditionSource": {"enum": ["NETWORK", "MANAGER", "SYSTEM"], "type": "string", "description": "The source of the alarm"}, "resourceId": {"type": "string", "description": "Resource ID used for one method of alarm to service correlation"}, "serviceAffecting": {"enum": ["SERVICE_AFFECTING", "NON_SERVICE_AFFECTING", "UNKNOWN"], "type": "string"}, "additionalText": {"type": "string", "description": "The alarm description, E.g. Circuit pack missing"}, "nativeConditionType": {"type": "string", "description": "E.g. EQPT_MISSING"}, "time": {"type": "string", "description": "The alarm operation time", "format": "date-time"}, "server": {"required": ["id", "type"], "type": "object", "description": "Information about the alarming node", "properties": {"type": {"type": "string", "description": "The node type. E.g. 6500"}, "id": {"type": "string", "description": "The node ID, is a ManagementSessionId from a 6500, used in alarm to service correlation"}}}, "nativeConditionTypeQualifier": {"type": "string", "description": "I've not seen this one used before"}, "id": {"type": "string", "description": "The RA Alarm ID"}, "op": {"enum": ["set", "clear"], "type": "string", "description": "The alarm operation"}}}, "pmProcessorError": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/error"}, "type": "array"}}}, "thresholdGroup": {"required": ["data"], "type": "object", "properties": {"data": {"$ref": "#/definitions/thresholdGroupData"}}, "example": {"data": {"attributes": {"thresholdId": ["threshold_id_1", "threshold_id_2"]}, "type": "thresholdGroup", "id": "Troubleshoot"}}}, "error": {"type": "object", "description": "An error that occurred during PM processing", "properties": {"code": {"type": "string", "description": "The error code"}, "detail": {"type": "string", "description": "The detailed description of the error"}, "title": {"type": "string", "description": "The error title"}}}, "thresholdDataNoID": {"required": ["type", "attributes"], "type": "object", "description": "A threshold", "properties": {"attributes": {"$ref": "#/definitions/thresholdAttributes"}, "type": {"default": "threshold", "enum": ["threshold"], "type": "string"}}}}, "swagger": "2.0", "consumes": ["application/json"]}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_policy_manager.json b/tapi/resources/MCP_4.0.0_policy_manager.json
deleted file mode 100644
index 15eabe5597297f05b40c0ce0cc4c1ae75d626f7a..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_policy_manager.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"termsOfService": "", "description": "APIs for the Policy Manager", "license": {"url": "", "name": ""}, "title": "Policy manager", "contact": {"name": ""}, "version": "v1"}, "paths": {"/conditions/tenants/{tenantId}/conditions": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the tenant", "required": true, "type": "string", "name": "tenantId", "in": "path"}], "tags": ["conditions"], "description": "", "summary": "List all of the conditions defined for a specific tenant", "operationId": "HeadListConditionsByTenantId"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Condition]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the tenant", "required": true, "type": "string", "name": "tenantId", "in": "path"}], "tags": ["conditions"], "description": "", "summary": "List all of the conditions defined for a specific tenant", "operationId": "ListConditionsByTenantId"}}, "/conditions/{conditionId}": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the condition", "required": true, "type": "string", "name": "conditionId", "in": "path"}], "tags": ["conditions"], "description": "", "summary": "Get a condition by condition id", "operationId": "HeadGetCondition"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the condition to delete", "required": true, "type": "string", "name": "conditionId", "in": "path"}], "tags": ["conditions"], "description": "", "summary": "Delete a condition from the policies database", "operationId": "DeleteCondition"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Condition"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the condition", "required": true, "type": "string", "name": "conditionId", "in": "path"}], "tags": ["conditions"], "description": "", "summary": "Get a condition by condition id", "operationId": "GetCondition"}}, "/realms": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["realms"], "description": "", "summary": "List all of the realms defined in the Policy Manager", "operationId": "HeadListRealms"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/AuthRealm"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/AuthRealm"}, "description": "Specification defining a realm (name is used as the identification for this realm)", "required": true, "name": "realmRequest", "in": "body"}], "tags": ["realms"], "description": "", "summary": "Create a realm in the policies database", "operationId": "CreateRealm"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[AuthRealm]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["realms"], "description": "", "summary": "List all of the realms defined in the Policy Manager", "operationId": "ListRealms"}}, "/policies/tenants/{tenantId}/policies": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the tenant", "required": true, "type": "string", "name": "tenantId", "in": "path"}], "tags": ["policies"], "description": "", "summary": "List all of the policies defined for a specific tenant", "operationId": "HeadListPoliciesByTenantId"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Policy]"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the tenant", "required": true, "type": "string", "name": "tenantId", "in": "path"}], "tags": ["policies"], "description": "", "summary": "List all of the policies defined for a specific tenant", "operationId": "ListPoliciesByTenantId"}}, "/conditions": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["conditions"], "description": "", "summary": "List all of the conditions defined in the Policy Manager", "operationId": "HeadListConditions"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/Condition"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/Condition"}, "description": "Specification defining a condition (UUID is used as the identification for this condition)", "required": true, "name": "conditionRequest", "in": "body"}], "tags": ["conditions"], "description": "", "summary": "Create a new condition that may be used in policies", "operationId": "CreateCondition"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Condition]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["conditions"], "description": "", "summary": "List all of the conditions defined in the Policy Manager", "operationId": "ListConditions"}}, "/policies/{policyId}": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the policy", "required": true, "type": "string", "name": "policyId", "in": "path"}], "tags": ["policies"], "description": "", "summary": "Get a policy by policy id", "operationId": "HeadGetPolicy"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the policy to delete", "required": true, "type": "string", "name": "policyId", "in": "path"}], "tags": ["policies"], "description": "", "summary": "Delete a policy from the policies", "operationId": "DeletePolicy"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/Policy"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier of the policy", "required": true, "type": "string", "name": "policyId", "in": "path"}], "tags": ["policies"], "description": "", "summary": "Get a policy by policy id", "operationId": "GetPolicy"}}, "/realms/{realmName}": {"head": {"responses": {"200": {"description": "OK"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the Realm", "required": true, "type": "string", "name": "realmName", "in": "path"}], "tags": ["realms"], "description": "", "summary": "Get a realm by realm name", "operationId": "HeadGetRealm"}, "delete": {"responses": {"204": {"description": "No Content"}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Identifier(name) of the realm to delete", "required": true, "type": "string", "name": "realmName", "in": "path"}], "tags": ["realms"], "description": "", "summary": "Delete a realm from the policies database", "operationId": "DeleteRealm"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/AuthRealm"}}, "404": {"description": "Not Found"}, "403": {"description": "Forbidden"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"description": "Name of the Realm", "required": true, "type": "string", "name": "realmName", "in": "path"}], "tags": ["realms"], "description": "", "summary": "Get a realm by realm name", "operationId": "GetRealm"}}, "/policies": {"head": {"responses": {"200": {"description": "OK"}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["policies"], "description": "", "summary": "List all of the policies defined in the Policy Manager", "operationId": "HeadListPolicies"}, "post": {"responses": {"201": {"description": "Created", "schema": {"$ref": "#/definitions/Policy"}}, "403": {"description": "Forbidden"}, "409": {"description": "Conflict"}, "401": {"description": "Unauthorized"}, "400": {"description": "Bad Request"}, "503": {"description": "Service Unavailable"}, "500": {"description": "Internal Server Error"}}, "parameters": [{"schema": {"$ref": "#/definitions/Policy"}, "description": "Specification defining a policy (UUID is used as the identification for this condition)", "required": true, "name": "policyRequest", "in": "body"}], "tags": ["policies"], "description": "Create a policy in the policies", "summary": "Create a policy in the policies", "operationId": "CreatePolicy"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ListReply[Policy]"}}, "403": {"description": "Forbidden"}, "500": {"description": "Internal Server Error"}, "401": {"description": "Unauthorized"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["policies"], "description": "", "summary": "List all of the policies defined in the Policy Manager", "operationId": "ListPolicies"}}, "/ping": {"head": {"responses": {"200": {"description": "OK"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["ping"], "description": "", "summary": "Ping the system to see whether the component is ready to handle requests or not", "operationId": "HeadGetPing"}, "get": {"responses": {"200": {"description": "OK"}, "503": {"description": "Service Unavailable"}}, "parameters": [], "tags": ["ping"], "description": "", "summary": "Ping the system to see whether the component is ready to handle requests or not", "operationId": "GetPing"}}}, "schemes": ["https"], "tags": [{"name": "conditions", "description": "Determine applicability of policies"}, {"name": "ping", "description": "Policy manager interface to check for readiness"}, {"name": "policies", "description": "Authorization and event policies"}, {"name": "realms", "description": "Defines the component scope to which policies apply"}], "basePath": "/bpocore/policies/api/v1", "securityDefinitions": {}, "host": "10.132.251.42", "definitions": {"Function1": {"type": "object", "title": "Function1"}, "ListReply[Condition]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/Condition"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "ListReply[AuthRealm]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/AuthRealm"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "Function1RequestContextFutureRouteResult": {"type": "object", "title": "Function1RequestContextFutureRouteResult"}, "Value": {"type": "object", "title": "Value"}, "ListReply[Policy]": {"description": "Standard reply envelope containing a list of resources", "type": "object", "properties": {"nextPageToken": {"type": "string", "description": "Identifier used to fetch the next page of results"}, "items": {"items": {"$ref": "#/definitions/Policy"}, "type": "array", "description": "List of requested items (in current page if paged)"}, "total": {"type": "integer", "description": "Total number of items in the reply (across all pages if applicable)", "format": "int32"}, "limit": {"type": "integer", "description": "Limit on the number of items included in a single response page", "format": "int32"}, "offset": {"type": "integer", "description": "Offset within the total count of results where this current items list starts", "format": "int32"}}, "title": "ListReply"}, "Policy": {"description": "A description of a single policy", "type": "object", "properties": {"monitoredTopic": {"type": "string", "description": "Message bus topic for a monitor policy type"}, "description": {"type": "string", "description": "Optional description of the policy"}, "policyActions": {"description": "Type of policy action (accept, deny, filter, monitor, etc.)", "$ref": "#/definitions/Value"}, "conditionId": {"type": "string", "description": "Identifier for the logical condition used to determine applicability of this policy"}, "actionInfo": {"type": "string", "description": "Action info for a monitor policy type"}, "tenantId": {"type": "string", "description": "UUID for the tenant for whom this policy applies"}, "filter": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "Set of filters to apply in this policy"}, "policyType": {"description": "Type of policy", "$ref": "#/definitions/Value"}, "authRealm": {"type": "string", "description": "Authentication realm to which the policy applies"}, "id": {"type": "string", "description": "UUID for the policy"}, "name": {"type": "string", "description": "Policy name"}}, "title": "Policy"}, "AuthRealm": {"description": "A description of a single authorization realm", "type": "object", "properties": {"name": {"type": "string", "description": "Realm name"}, "description": {"type": "string", "description": "Optional description of the realm"}}, "title": "AuthRealm"}, "Condition": {"description": "A description of a single policy condition", "type": "object", "properties": {"definition": {"type": "string", "description": "Boolean expression that used to define the matching condition"}, "description": {"type": "string", "description": "Optional description of the condition"}, "tenantId": {"type": "string", "description": "UUID for the tenant for whom this condition applies"}, "id": {"type": "string", "description": "UUID for the condition"}, "name": {"type": "string", "description": "Condition name"}}, "title": "Condition"}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_port_inventory_(tpes).json b/tapi/resources/MCP_4.0.0_port_inventory_(tpes).json
deleted file mode 100644
index 5e467dd22f57abc8947a89e18a43dc3783e2ef39..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_port_inventory_(tpes).json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Retrieve, plan and modify ports (TPEs)", "title": "Port inventory (TPEs)"}, "paths": {"/nsi/api/v4/tpes/{id}/identifiers": {"put": {"responses": {"201": {"description": "Successfully created a new TPE identifier for the given TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "Successfully updated the TPE identifier for a given TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This REST API is used to update/create an identifier on a TPE<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n   \"key1\": \"value1\",\n   \"key2\": \"value2\"\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The TPE id", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4tpes"], "summary": "Puts or updates a REST identifier on a TPE", "consumes": ["application/json"], "operationId": "updateTpeIdentifier"}, "delete": {"responses": {"201": {"description": "Successfully created a new TPE identifier for the given TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "Successfully updated the TPE identifier for a given TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "The TPE id", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The TPE identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4tpes"], "summary": "Deletes a REST identifier on a TPE", "consumes": ["application/json"], "operationId": "deleteTpeIdentifier"}}, "/nsi/api/tpes/{tpeId}/expectations/{expectationId}/realize": {"post": {"responses": {"200": {"description": "Request to provision was sent successfully."}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Provisioning request failed against TPE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3\nIf TPE is not realized, it will trigger a create provisioning operation, otherwise it will trigger a update provisioning operation to change the current discovered data.", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "TpeExpectation to realize", "required": true, "type": "string", "name": "expectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Perform a provision operation on a TPE", "consumes": ["application/json"], "operationId": "provisionOperations"}}, "/nsi/api/v6/tpes": {"post": {"responses": {"201": {"description": "Successfully created the TPE. The response only contains the identifiers of the created TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/TpeRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This REST API is intended to be used by service provisioning micro-service IFD only to create a TPE expectation.<p>The following attributes and relationships should be specified in the post request:<ul><li>structureType<li>location - management protocol used to retrieve the information and the location of the TPE such as its shelf, slot and port<li>network construct id relationship<li>equipment id relationship if available<li>a list of TPE expectation id relationship<li>the TPE expectation content - specified in the included section<ul><li>layerTerminations, stackDirection, etc.<li>validateParameters - Comma separated list of parameters (if any) to be validated against the expectation</ul></ul><p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\",\n    \"type\": \"tpes\",\n    \"attributes\": {\n      \"userData\": {\n        \"ossLabel\": \"ossLabel\"\n      },\n      \"identifiers\": [\n        {\n          \"ncId\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\",\n          \"ossLabel\": \"ossLabel\"        }\n      ]\n    },\n    \"relationships\": {\n      \"tpeExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"tpeExpectations\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\"\n          }\n        ]\n      }\n    },\n    \"tpePlanned\": {\n        \"data\": {\n          \"type\": \"tpePlanned\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n        }\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\",\n      \"type\": \"tpeExpectations\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\"\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    },\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\",\n      \"type\": \"tpePlanned\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\"\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        },\n        \"networkConstruct\": {\n          \"data\": {\n            \"type\": \"networkConstructs\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/TpeRO"}, "description": "TPE to create", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["995 - nsiapiv6tpes"], "summary": "Trigger the creation of a TPE", "consumes": ["application/json"], "operationId": "postTpe"}}, "/nsi/api/v2_0/tpes/{tpeId}/tpeExpectations/{tpeExpectationId}": {"delete": {"responses": {"204": {"description": "Delete TPE Expectations with given id successfully."}, "500": {"description": "Failed to delete TPE Expectation with id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "TPE expectation identifier", "required": true, "type": "string", "name": "tpeExpectationId", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["998 - nsiapiv2_0tpes"], "summary": "Delete TPE Expectation given tpeId and expectationId", "operationId": "deleteTpeExpectation"}, "get": {"responses": {"200": {"description": "Successfully retrieved the TPE expectation.", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "404": {"description": "Cannot find the TPE expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the TPE expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "TPE expectation identifier", "required": true, "type": "string", "name": "tpeExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0tpes"], "summary": "Retrieves a specific TPE expectation", "operationId": "getTpeExpectation"}}, "/nsi/api/v3/tpes/{tpeId}/tpeExpectations/{tpeExpectationId}": {"delete": {"responses": {"200": {"description": "Delete TPE Expectations with given id successfully."}, "404": {"description": "TPE does not exist."}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "TPE Expectation does not exist."}, "500": {"description": "Failed to delete TPE Expectation with id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "TPE expectation identifier", "required": true, "type": "string", "name": "tpeExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3tpes"], "summary": "Delete TPE Expectation given tpeId and expectationId", "operationId": "deleteTpeExpectation"}}, "/nsi/api/v5/tpes": {"post": {"responses": {"201": {"description": "Successfully created the TPE. The response only contains the identifiers of the created TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/TpeRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This REST API is intended to be used by service provisioning micro-service IFD only to create a TPE expectation.<p>The following attributes and relationships should be specified in the post request:<ul><li>structureType<li>location - management protocol used to retrieve the information and the location of the TPE such as its shelf, slot and port<li>network construct id relationship<li>equipment id relationship if available<li>a list of TPE expectation id relationship<li>the TPE expectation content - specified in the included section<ul><li>layerTerminations, stackDirection, etc.<li>validateParameters - Comma separated list of parameters (if any) to be validated against the expectation</ul></ul><p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\",\n    \"type\": \"tpes\",\n    \"attributes\": {\n      \"userData\": {\n        \"ossLabel\": \"ossLabel\"\n      },\n      \"identifiers\": [\n        {\n          \"ncId\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\",\n          \"ossLabel\": \"ossLabel\"        }\n      ]\n    },\n    \"relationships\": {\n      \"tpeExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"tpeExpectations\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\"\n          }\n        ]\n      }\n    },\n    \"tpePlanned\": {\n        \"data\": {\n          \"type\": \"tpePlanned\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n        }\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\",\n      \"type\": \"tpeExpectations\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\"\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    },\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\",\n      \"type\": \"tpePlanned\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\"\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        },\n        \"networkConstruct\": {\n          \"data\": {\n            \"type\": \"networkConstructs\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/TpeRO"}, "description": "TPE to create", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["995 - nsiapiv5tpes"], "summary": "Trigger the creation of a TPE", "consumes": ["application/json"], "operationId": "postTpe"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested TPEs.", "schema": {"$ref": "#/definitions/TpeListRO"}}, "500": {"description": "Failed to retrieve the requested TPEs.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>Only one of the following parameters must be specified:<ul><li>networkConstruct.id<li>tpeExpectations.equipmentIntent.id<li>tpeExpectations.serviceIntent.id<li>equipmentId<li>id<li>concrete</ul>", "parameters": [{"description": "(Optional) Comma separated list of TPE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) Network Construct identifier. In case of usage with limit parameter, paging will be enabled.", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) Equipment identifier. In case of usage with limit parameter, paging will be enabled.", "required": false, "type": "string", "name": "equipmentId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "tpeExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "tpeExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) Id of the concrete tpe", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"enum": ["summary", "detail"], "description": "(Optional) The TPE content level", "default": "detail", "required": false, "in": "query", "type": "string", "name": "content"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page. Defaulted ALL to return all TPEs at once.", "default": "ALL", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, tpePlanned, tpeDiscovered, concrete", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["995 - nsiapiv5tpes"], "summary": "Retrieves the TPEs satisfying the query parameters", "operationId": "getTpesV5"}}, "/nsi/api/v3/tpes/{tpeId}/expectations/{expectationId}/realize": {"post": {"responses": {"200": {"description": "Request to provision was sent successfully."}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Provisioning request failed against TPE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "If TPE is not realized, it will trigger a create provisioning operation, otherwise it will trigger a update provisioning operation to change the current discovered data.", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "TpeExpectation to realize", "required": true, "type": "string", "name": "expectationId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3tpes"], "summary": "Perform a provision operation on a TPE", "consumes": ["application/json"], "operationId": "provisionOperations"}}, "/nsi/api/v4/tpes/{tpeId}/expectations": {"post": {"responses": {"201": {"description": "TPE expectation has been created on the server", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "200": {"description": "An existing TPE expectation have been updated on the server", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "404": {"description": "The specified TPE does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"schema": {"$ref": "#/definitions/TpeExpectationRO"}, "description": "TPEExpectation to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4tpes"], "summary": "Create an TPE expectation given the TPE id", "consumes": ["application/json"], "operationId": "postExpectation"}}, "/nsi/api/v3/tpes/{tpeId}/expectations": {"post": {"responses": {"201": {"description": "FRE expectation has been created on the server", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "200": {"description": "An existing FRE expectation have been updated on the server", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "404": {"description": "The specified FRE does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"schema": {"$ref": "#/definitions/TpeExpectationRO"}, "description": "TPEExpectation to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["997 - nsiapiv3tpes"], "summary": "Create an TPE expectation given the TPE id", "consumes": ["application/json"], "operationId": "postExpectation"}}, "/nsi/api/tpes/{tpeId}/tpeExpectations/{tpeExpectationId}": {"delete": {"responses": {"200": {"description": "Delete TPE Expectations with given id successfully."}, "404": {"description": "TPE does not exist."}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "TPE Expectation does not exist."}, "500": {"description": "Failed to delete TPE Expectation with id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "TPE expectation identifier", "required": true, "type": "string", "name": "tpeExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Delete TPE Expectation given tpeId and expectationId", "operationId": "deleteTpeExpectation"}, "get": {"responses": {"200": {"description": "Successfully retrieved the TPE expectation.", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "404": {"description": "Cannot find the TPE expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the TPE expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "TPE expectation identifier", "required": true, "type": "string", "name": "tpeExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Retrieves a specific TPE expectation", "operationId": "getTpeExpectation"}}, "/nsi/api/tpes/{tpeId}/userData/{userDataKey}": {"put": {"responses": {"201": {"description": "TPE user data has been created", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "TPE user data has been updated ", "schema": {"$ref": "#/definitions/TpeRO"}}, "404": {"description": "The TPE with that id doesn't exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of TPE under which to create or update the UserData", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "Key of the UserData to create or update", "required": true, "type": "string", "name": "userDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired userData value", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Puts a new key value pair into the user data", "consumes": ["text/plain"], "operationId": "putTpeUserData"}, "delete": {"responses": {"200": {"description": "Successfully deleted the userData with the given id"}, "404": {"description": "Could not find the TPE with the specified id, or could not find the userData key", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "The specified TPE userData does not exist"}, "500": {"description": "Internal system error (error message provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "Identifier to TPE under which to create or update the userData", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "The userData key that will be used to delete the potential value", "required": true, "type": "string", "name": "userDataKey", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Delete a TPEs userData key and value", "operationId": "deleteTpeUserData"}}, "/nsi/api/v3/tpes/{tpeId}/tpePlanned": {"put": {"responses": {"201": {"description": "Planned TPE has been created on the server", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "200": {"description": "Planned TPE has been updated on the server", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "404": {"description": "The specified TPE does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"schema": {"$ref": "#/definitions/TpePlannedRO"}, "description": "Planned TPE to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3tpes"], "summary": "Creates or updates a planned TPE given the TPE id", "consumes": ["application/json"], "operationId": "putTpePlanned"}, "get": {"responses": {"200": {"description": "Successfully retrieved the TPE.", "schema": {"$ref": "#/definitions/TpePlannedRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested TPE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3tpes"], "summary": "Retrieves a specific TPE", "operationId": "getTpePlanned"}}, "/nsi/api/tpes/{tpeId}/expectations": {"post": {"responses": {"201": {"description": "TPE expectation has been created on the server", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "200": {"description": "An existing TPE expectation have been updated on the server", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "404": {"description": "The specified TPE does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPEResource", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "TPEResource identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"schema": {"$ref": "#/definitions/TpeExpectationRO"}, "description": "TPEExpectation to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Create an TPEResource expectation given the TPEResource id", "consumes": ["application/json"], "operationId": "postExpectation"}}, "/nsi/api/v3/tpes/{tpeId}": {"delete": {"responses": {"200": {"description": "The de-provisioning request was sent or TPE is deleted successfully.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "TPE does not exist."}, "500": {"description": "Failed to delete TPE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "The specified TPE has expectations.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This operation is allowed for a root or actual TPE entity.", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3tpes"], "summary": "De-provision an actual TPE or delete a root TPE.", "operationId": "deleteTpeById"}, "get": {"responses": {"200": {"description": "Successfully retrieved the TPE.", "schema": {"$ref": "#/definitions/TpeRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested TPE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded.  The allowed values are: expectations, tpePlanned, tpeDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["997 - nsiapiv3tpes"], "summary": "Retrieves a specific TPE", "operationId": "getTpe"}}, "/nsi/api/tpes/{id}/identifiers": {"put": {"responses": {"201": {"description": "Successfully created a new TPE identifier for the given TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "Successfully updated the TPE identifier for a given TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4<p>This REST API is used to update/create an identifier on a TPE<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n   \"key1\": \"value1\",\n   \"key2\": \"value2\"\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The TPE id", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Puts or updates a REST identifier on a TPE", "consumes": ["application/json"], "operationId": "updateTpeIdentifier"}, "delete": {"responses": {"201": {"description": "Successfully created a new TPE identifier for the given TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "Successfully updated the TPE identifier for a given TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4", "parameters": [{"description": "The TPE id", "required": true, "type": "string", "name": "id", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The TPE identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Deletes a REST identifier on a TPE", "consumes": ["application/json"], "operationId": "deleteTpeIdentifier"}}, "/nsi/api/v5/tpes/{tpeId}": {"put": {"responses": {"201": {"description": "TPE has been successfully created.", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "TPE has been successfully updated.", "schema": {"$ref": "#/definitions/TpeRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to update TPE.", "schema": {"$ref": "#/definitions/TpeRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/TpeRO"}}}, "description": "This REST end point is used to either create the TPE object if it doesn't exist already,<p>or updates the TPE object if it exists.<br><p>There are some attributes that cannot be changed, but can be given in a rest call<p>as long as they match the what is in the database. These attributes are:<ul><li>id<li>networkConstruct.id<li>equipment.id<li>location<li>structureType</ul><p>The response holds the new TPE with the new attributes<p>Here is an example TPE that can be in a request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\",\n    \"type\": \"tpes\",\n    \"attributes\": {\n      \"userData\": {\n        \"ossLabel\": \"ossLabel\"\n      },\n      \"identifiers\": [\n        {\n          \"ncId\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\",\n          \"ossLabel\": \"ossLabel\"        }\n      ]\n    },\n    \"relationships\": {\n      \"tpeExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"tpeExpectations\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\"\n          }\n        ]\n      }\n    },\n    \"tpePlanned\": {\n        \"data\": {\n          \"type\": \"tpePlanned\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n        }\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\",\n      \"type\": \"tpeExpectations\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\"\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    },\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\",\n      \"type\": \"tpePlanned\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\"\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        },\n        \"networkConstruct\": {\n          \"data\": {\n            \"type\": \"networkConstructs\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"schema": {"$ref": "#/definitions/TpeRO"}, "description": "The TpeRO object to be used to update the DB object", "required": false, "name": "tpeRO", "in": "body"}], "produces": ["application/json"], "tags": ["995 - nsiapiv5tpes"], "summary": "Updates or creates a TPE with an id", "consumes": ["application/json"], "operationId": "putTpeById"}}, "/nsi/api/v2_0/tpes/{tpeId}/tpeExpectations": {"get": {"responses": {"200": {"description": "Successfully retrieved the TPE expectation", "schema": {"$ref": "#/definitions/TpeExpectationListRO"}}, "404": {"description": "The requested TPE can't be found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve TPE expectations.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0tpes"], "summary": "Retrieves the expectations of the parent TPE", "operationId": "getTpeExpectations"}}, "/nsi/api/tpes/{tpeId}/tpeExpectations": {"get": {"responses": {"200": {"description": "Successfully retrieved the TPE expectation", "schema": {"$ref": "#/definitions/TpeExpectationListRO"}}, "404": {"description": "The requested TPE can't be found.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve TPE expectations.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Retrieves the expectations of the parent TPE", "operationId": "getTpeExpectations"}}, "/nsi/api/v3/tpes/{tpeId}/userData/{userDataKey}": {"put": {"responses": {"201": {"description": "TPE user data has been created", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "TPE user data has been updated ", "schema": {"$ref": "#/definitions/TpeRO"}}, "404": {"description": "The TPE with that id doesn't exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of TPE under which to create or update the UserData", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "Key of the UserData to create or update", "required": true, "type": "string", "name": "userDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired userData value", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3tpes"], "summary": "Puts a new key value pair into the user data", "consumes": ["text/plain"], "operationId": "putTpeUserData"}, "delete": {"responses": {"200": {"description": "Successfully deleted the userData with the given id"}, "404": {"description": "Could not find the TPE with the specified id, or could not find the userData key", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "The specified TPE userData does not exist"}, "500": {"description": "Internal system error (error message provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier to TPE under which to create or update the userData", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "The userData key that will be used to delete the potential value", "required": true, "type": "string", "name": "userDataKey", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3tpes"], "summary": "Delete a TPEs userData key and value", "operationId": "deleteTpeUserData"}}, "/nsi/api/tpes": {"post": {"responses": {"201": {"description": "Successfully created the TPEResource. The response only contains the identifiers of the created TPEResource", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/TpeRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V6<p>This REST API is intended to be used by service provisioning micro-service IFD only to create a TPE expectation.<p>The following attributes and relationships should be specified in the post request:<ul><li>structureType<li>location - management protocol used to retrieve the information and the location of the TPE such as its shelf, slot and port<li>network construct id relationship<li>equipment id relationship if available<li>a list of TPE expectation id relationship<li>the TPE expectation content - specified in the included section<ul><li>layerTerminations, stackDirection, etc.<li>validateParameters - Comma separated list of parameters (if any) to be validated against the expectation</ul></ul><p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"tpeId\",\n    \"type\": \"tpes\",\n    \"attributes\": {\n      \"structureType\": \"PTP\",\n      \"locations\": [\n        {\n          \"managementType\": \"tl1\",\n          \"shelf\": \"12\",\n          \"slot\": \"11\",\n          \"port\": \"1\"\n        }\n      ],\n      \"userData\": {\n        \"ossLabel\": \"ossLabel\"\n      },\n      \"identifiers\": [\n        {\n          \"ncId\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\",\n          \"ossLabel\": \"ossLabel\"        }\n      ]\n    },\n    \"relationships\": {\n      \"networkConstruct\": {\n        \"data\": {\n          \"type\": \"networkConstructs\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\"\n        }\n      },\n      \"equipment\": {\n        \"data\": {\n          \"type\": \"equipment\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\"\n        }\n      },\n      \"tpeExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"tpeExpectations\",\n            \"id\": \"tpeExpId\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"tpeExpId\",\n      \"type\": \"tpeExpectations\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\",\n        \"validateParameters\": {\n          \"include\": \"stackDirection\"\n        },\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/TpeRO"}, "description": "TPE to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Trigger the creation of a TPE", "consumes": ["application/json"], "operationId": "postTpe"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested TPEs.", "schema": {"$ref": "#/definitions/TpeListRO"}}, "500": {"description": "Failed to retrieve the requested TPEs.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V5<p>Only one of the following parameters must be specified:<ul><li>networkConstruct.id<li>tpeExpectations.equipmentIntent.id<li>tpeExpectations.serviceIntent.id<li>equipmentId<li>id<li>concrete</ul>", "parameters": [{"description": "(Optional) Comma separated list of TPE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) Network Construct identifier. In case of usage with limit parameter, paging will be enabled.", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) Equipment identifier. In case of usage with limit parameter, paging will be enabled.", "required": false, "type": "string", "name": "equipmentId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "tpeExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "tpeExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) Id of the concrete tpe", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"enum": ["summary", "detail"], "description": "(Optional) The TPE content level", "default": "detail", "required": false, "in": "query", "type": "string", "name": "content"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page. Defaulted ALL to return all TPEs at once.", "default": "ALL", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, tpePlanned, tpeDiscovered, concrete", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Retrieves the TPEs satisfying the query parameters", "operationId": "getTpes"}}, "/nsi/api/v4/tpes": {"post": {"responses": {"201": {"description": "Successfully created the TPE. The response only contains the identifiers of the created TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/TpeRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This REST API is intended to be used by service provisioning micro-service IFD only to create a TPE expectation.<p>The following attributes and relationships should be specified in the post request:<ul><li>structureType<li>location - management protocol used to retrieve the information and the location of the TPE such as its shelf, slot and port<li>network construct id relationship<li>equipment id relationship if available<li>a list of TPE expectation id relationship<li>the TPE expectation content - specified in the included section<ul><li>layerTerminations, stackDirection, etc.<li>validateParameters - Comma separated list of parameters (if any) to be validated against the expectation</ul></ul><p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"tpeId\",\n    \"type\": \"tpes\",\n    \"attributes\": {\n      \"structureType\": \"PTP\",\n      \"locations\": [\n        {\n          \"managementType\": \"tl1\",\n          \"shelf\": \"12\",\n          \"slot\": \"11\",\n          \"port\": \"1\"\n        }\n      ],\n      \"userData\": {\n        \"ossLabel\": \"ossLabel\"\n      },\n      \"identifiers\": [\n        {\n          \"ncId\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\",\n          \"ossLabel\": \"ossLabel\"        }\n      ]\n    },\n    \"relationships\": {\n      \"networkConstruct\": {\n        \"data\": {\n          \"type\": \"networkConstructs\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\"\n        }\n      },\n      \"equipment\": {\n        \"data\": {\n          \"type\": \"equipment\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\"\n        }\n      },\n      \"tpeExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"tpeExpectations\",\n            \"id\": \"tpeExpId\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"tpeExpId\",\n      \"type\": \"tpeExpectations\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\",\n        \"validateParameters\": {\n          \"include\": \"stackDirection\"\n        },\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/TpeRO"}, "description": "TPE to create", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["996 - nsiapiv4tpes"], "summary": "Trigger the creation of a TPE", "consumes": ["application/json"], "operationId": "postTpe"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested TPEs.", "schema": {"$ref": "#/definitions/TpeListRO"}}, "500": {"description": "Failed to retrieve the requested TPEs.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following search paths are not supported for the searchFields query parameter:<ul><li>data.attributes.tpeSpec<li>data.attributes.tpeGroupSpecs<li>data.attributes.locations.loc_oid<li>data.attributes.capacityReservations.*<li>data.attributes.syncScopes.*<li>data.relationships.networkConstructAssociation.data.id</ul><p>Specifying a path for the searchFields parameter of an attribute in the following objects will search the parent object for the value specified in searchText: adjacencyPackage, powerPackage, photonicSpectrumPackage, and signalIndex.<p>To specify an expectation path for the searchFields parameter use the prefix \"data.relationships.tpeExpectations.data.*\"", "parameters": [{"description": "(Optional) Comma separated list of TPE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search on. If none are specified, all supported fields are implied. Fields require full path (e.g. data.attributes.name)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of networkConstruct planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "(Optional) Comma-separated named query id list; The allowed values are: portsL2AvailableAll, portsL2ApplicableEPLUni, portsL2ApplicableEVPLUni, portsL2ApplicableEnni, portsL2ApplicableEPLUniWithMcLag, portsL2ApplicableEVPLUniWithMcLag, portsL2ApplicableEnniWithMcLag, portsTunnelsL2ApplicableAll, portsTDMCEApplicableAll", "required": false, "type": "string", "name": "namedQuery", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) The comma separated identifier key set", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "(Optional) The comma separated identifier value set", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) Id of the concrete tpe", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional)  Flag that enables/disables a link from having additional tunnel BW being consumed", "required": false, "in": "query", "type": "string", "name": "bookingData.lockout"}, {"enum": ["true", "false"], "description": "(Optional) The active state of the resource", "required": false, "in": "query", "type": "string", "name": "active"}, {"enum": ["summary", "detail"], "description": "(Optional) The TPE content level", "default": "detail", "required": false, "in": "query", "type": "string", "name": "content"}, {"description": "(Optional) TPE location delimited by dashes", "required": false, "type": "string", "name": "location", "in": "query"}, {"description": "(Optional) Format for the given location; when not given, assume location is [[shelf-]slot-]port", "required": false, "type": "string", "name": "locationFormat", "in": "query"}, {"description": "(Optional) Comma separated list of TPE structure types", "required": false, "type": "string", "name": "structureType", "in": "query"}, {"description": "(Optional) Equipment identifier. In case of usage with limit parameter, paging will be enabled.", "required": false, "type": "string", "name": "equipmentId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "tpeExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "tpeExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) GNE Subnet name of the TPE", "required": false, "type": "string", "name": "gneSubnetName", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of meta data to be included. The allowed values are: stackDirection, layerRate, state, cardType, structureType, structureSubType, resourceState", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, concrete, networkConstructs", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["996 - nsiapiv4tpes"], "summary": "Retrieves the TPEs satisfying the query parameters", "operationId": "getTpes"}}, "/nsi/api/v3/tpes": {"post": {"responses": {"201": {"description": "Successfully created the TPE. The response only contains the identifiers of the created TPE", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/TpeRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This REST API is intended to be used by service provisioning micro-service IFD only to create a TPE expectation.<p>The following attributes and relationships should be specified in the post request:<ul><li>structureType<li>location - management protocol used to retrieve the information and the location of the TPE such as its shelf, slot and port<li>network construct id relationship<li>equipment id relationship if available<li>a list of TPE expectation id relationship<li>the TPE expectation content - specified in the included section<ul><li>layerTerminations, stackDirection, etc.<li>equipment or service intent id relationship</ul></ul><p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\",\n    \"type\": \"tpes\",\n    \"attributes\": {\n      \"structureType\": \"PTP\",\n      \"locations\": [\n        {\n          \"managementType\": \"tl1\",\n          \"shelf\": \"12\",\n          \"slot\": \"11\",\n          \"port\": \"1\"\n        }\n      ],\n      \"userData\": {\n        \"ossLabel\": \"ossLabel\"\n      },\n      \"identifiers\": [\n        {\n          \"ncId\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\",\n          \"ossLabel\": \"ossLabel\"        }\n      ]\n    },\n    \"relationships\": {\n      \"networkConstruct\": {\n        \"data\": {\n          \"type\": \"networkConstructs\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\"\n        }\n      },\n      \"equipment\": {\n        \"data\": {\n          \"type\": \"equipment\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11\"\n        }\n      },\n      \"tpeExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"tpeExpectations\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\",\n      \"type\": \"tpeExpectations\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\"\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre>", "parameters": [{"schema": {"$ref": "#/definitions/TpeRO"}, "description": "TPE to create", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["997 - nsiapiv3tpes"], "summary": "Trigger the creation of a TPE", "consumes": ["application/json"], "operationId": "postTpe"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested TPEs.", "schema": {"$ref": "#/definitions/TpeListRO"}}, "500": {"description": "Failed to retrieve the requested TPEs.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>At least one of the following parameters must be specified:<ul><li>networkConstruct.id<li>tpeExpectations.equipmentIntent.id<li>tpeExpectations.serviceIntent.id<li>equipmentId<li>id</ul>", "parameters": [{"description": "(Optional) Network Construct identifier. In case of usage with limit parameter, paging will be enabled.", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "(Optional) Comma separated list of TPE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) TPE location - shelf-slot-port or slot-port or port", "required": false, "type": "string", "name": "location", "in": "query"}, {"description": "(Optional) TPE structure type", "required": false, "type": "string", "name": "structureType", "in": "query"}, {"description": "(Optional) Equipment identifier. In case of usage with limit parameter, paging will be enabled.", "required": false, "type": "string", "name": "equipmentId", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "tpeExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "tpeExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) Id of the concrete tpe", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, tpePlanned, tpeDiscovered, concrete", "required": false, "type": "string", "name": "include", "in": "query"}, {"enum": ["summary", "detail"], "description": "(Optional) The TPE content level", "default": "detail", "required": false, "in": "query", "type": "string", "name": "content"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page. Defaulted ALL to return all TPEs at once.", "default": "ALL", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["997 - nsiapiv3tpes"], "summary": "Retrieves the TPEs satisfying the query parameters", "operationId": "getTpes"}}, "/nsi/api/v4/tpes/{tpeId}": {"put": {"responses": {"201": {"description": "TPE has been successfully created.", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "TPE has been successfully updated.", "schema": {"$ref": "#/definitions/TpeRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to update TPE.", "schema": {"$ref": "#/definitions/TpeRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/TpeRO"}}}, "description": "This REST end point is used to either create the TPE object if it doesn't exist already,<p>or updates the TPE object if it exists.<br><p>There are some attributes that cannot be changed, but can be given in a rest call<p>as long as they match the what is in the database. These attributes are:<ul><li>id<li>networkConstruct.id<li>equipment.id<li>location<li>structureType</ul><p>The response holds the new TPE with the new attributes<p>Here is an example TPE that can be in a request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\",\n    \"type\": \"tpes\",\n    \"attributes\": {\n      \"userData\": {\n        \"ossLabel\": \"ossLabel\"\n      },\n      \"identifiers\": [\n        {\n          \"ncId\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\",\n          \"ossLabel\": \"ossLabel\"        }\n      ]\n    },\n    \"relationships\": {\n      \"tpeExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"tpeExpectations\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\"\n          }\n        ]\n      }\n    },\n    \"tpePlanned\": {\n        \"data\": {\n          \"type\": \"tpePlanned\",\n          \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n        }\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\",\n      \"type\": \"tpeExpectations\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\"\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    },\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\",\n      \"type\": \"tpePlanned\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\"\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        },\n        \"networkConstruct\": {\n          \"data\": {\n            \"type\": \"networkConstructs\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"schema": {"$ref": "#/definitions/TpeRO"}, "description": "The TpeRO object to be used to update the DB object", "required": false, "name": "tpeRO", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["996 - nsiapiv4tpes"], "summary": "Updates or creates a TPE with an id", "consumes": ["application/json"], "operationId": "putTpeById"}, "get": {"responses": {"200": {"description": "Successfully retrieved the TPE.", "schema": {"$ref": "#/definitions/TpeRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested TPE.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded.  The allowed values are: expectations, tpePlanned, tpeDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4tpes"], "summary": "Retrieves a specific TPE", "operationId": "getTpe"}}, "/nsi/api/tpes/{tpeId}": {"put": {"responses": {"201": {"description": "TPE has been successfully created.", "schema": {"$ref": "#/definitions/TpeRO"}}, "200": {"description": "TPE has been successfully updated.", "schema": {"$ref": "#/definitions/TpeRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to update TPE.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V5<p>This REST end point is used to either create the TPE object if it doesn't exist already,<p>or updates the TPE object if it exists.<br><p>There are some attributes that cannot be changed, but can be given in a rest call<p>as long as they match the what is in the database. These attributes are:<ul><li>id<li>networkConstruct.id<li>equipment.id<li>location<li>structureType</ul><p>The response holds the new TPE with the new attributes<p>Here is an example TPE that can be in a request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\",\n    \"type\": \"tpes\",\n    \"attributes\": {\n      \"userData\": {\n        \"ossLabel\": \"ossLabel\"\n      },\n      \"identifiers\": [\n        {\n          \"ncId\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8\",\n          \"ossLabel\": \"ossLabel\"        }\n      ],\n      \"cardType\": \"cardType\",\n      \"state\": \"IS\",\n      \"userLabel\": \"my-tpe\",    },\n    \"relationships\": {\n      \"tpeExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"tpeExpectations\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP::6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\",\n      \"type\": \"tpeExpectations\",\n      \"attributes\": {\n        \"layerTerminations\": [\n          {\n            \"layerRate\": \"OTU4\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"DSR\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"additionalAttributes\": {\n              \"MODULATION\": \"QPSK100G\"\n            }\n          },\n          {\n            \"layerRate\": \"OTSi\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OMS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"OTS\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\"\n          },\n          {\n            \"layerRate\": \"PHY\",\n            \"structureType\": \"full layer fixed\",\n            \"terminationState\": \"layer termination permanently terminated\",\n            \"adjacencyPackage\": {\n              \"adjacencyType\": \"TXRX\",\n              \"localTag\": \"PV0428A-12-11-1\",\n              \"provisionedRemoteTag\": \"PV0428A-11-21-7\",\n              \"remoteTag\": \"PV0428A-11-21-7\",\n              \"topologySourceTag\": \"DISCOVERED\"\n            }\n          }\n        ],\n        \"stackDirection\": \"bidirectional\"\n      },\n      \"relationships\": {\n        \"equipmentIntent\": {\n          \"data\": {\n            \"type\": \"equipmentIntents\",\n            \"id\": \"6825fda4-1e9f-4c5c-9e48-d5acb4d5b6b9\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"schema": {"$ref": "#/definitions/TpeRO"}, "description": "The new TPE data.", "required": true, "name": "tpe", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Updates or creates a TPE with an id", "consumes": ["application/json"], "operationId": "putTpeById"}, "delete": {"responses": {"200": {"description": "The de-provisioning request was sent or TPEResource is deleted successfully.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPEResource", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "TPEResource does not exist."}, "500": {"description": "Failed to delete TPEResource.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "The specified TPEResource has expectations.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This operation is allowed for a root or actual TPEResource entity.<p>LATEST VERSION: V3", "parameters": [{"description": "TPEResource identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "De-provision an actual TPEResource or delete a root TPEResource.", "operationId": "deleteTpeById"}, "get": {"responses": {"200": {"description": "Successfully retrieved the TPE.", "schema": {"$ref": "#/definitions/TpeRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested TPE.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded.  The allowed values are: expectations, tpePlanned, tpeDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Retrieves a specific TPE", "operationId": "getTpe"}}, "/nsi/api/tpes/{tpeId}/tpePlanned": {"put": {"responses": {"201": {"description": "Planned TPE has been created on the server", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "200": {"description": "Planned TPE has been updated on the server", "schema": {"$ref": "#/definitions/TpeExpectationRO"}}, "404": {"description": "The specified TPE does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}, {"schema": {"$ref": "#/definitions/TpePlannedRO"}, "description": "Planned TPE to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Creates or updates a planned TPE given the TPE id", "consumes": ["application/json"], "operationId": "putTpePlanned"}, "get": {"responses": {"200": {"description": "Successfully retrieved the TPE Planned.", "schema": {"$ref": "#/definitions/TpePlannedRO"}}, "403": {"description": "Forbidden to access specified TPE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested TPE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "TPE identifier", "required": true, "type": "string", "name": "tpeId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapitpes"], "summary": "Retrieves a specific TPE", "operationId": "getTpePlanned"}}}, "schemes": ["http", "https"], "tags": [{"name": "000 - nsiapitpes", "description": "Retrieve, plan, and manage the tpe resources<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "995 - nsiapiv5tpes", "description": "Retrieve, plan, and manage the tpe resources (version 5)"}, {"name": "995 - nsiapiv6tpes", "description": "Retrieve, plan, and manage the tpe resources (version 6)"}, {"name": "996 - nsiapiv4tpes", "description": "Retrieve, plan, and manage the tpe resources (version 4)"}, {"name": "997 - nsiapiv3tpes", "description": "Retrieve, plan, and manage the tpe resources (version 3)"}, {"name": "998 - nsiapiv2_0tpes", "description": "Retrieve, plan, and manage the tpe resources (version 2)."}], "definitions": {"Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "MbbHistoryEntryRO": {"type": "object", "properties": {"reason": {"type": "string", "description": "Reason of the make-before-break"}, "endTime": {"type": "string", "description": "End time of the make-before-break happened"}, "result": {"type": "string", "description": "Result of the make-before-break"}, "startTime": {"type": "string", "description": "Start time of the make-before-break happened"}}}, "ConnectionRuleRO": {"type": "object", "properties": {"immediateClientPotential": {"type": "string", "description": "If describing connectionRulesInAdaptationLayer: names of TPESpec of immediate client TPE. If describing connectionRulesInOwnLayer: null (not relevant). If describing mustConnectInternally: null (not relevant)."}, "immediateDualPortPeerPotential": {"type": "string", "description": "If describing connectionRulesInAdaptationLayer: names of TPESpec of dual port peer TPE. If describing connectionRulesInOwnLayer: null (not relevant). If describing mustConnectInternally: null (not relevant)."}, "targetLayer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "rule": {"enum": ["mustConnectInternally", "clientExternalFGRule", "connectsExternally", "toServerUsingClientExternalFGRule", "externalFGRule", "externalFGRuleViaImmediateClientPotential", "toDualPortPeerUsingClientExternalFGRule", "transitionalAtCreationTime"], "type": "string", "description": "toServerUsingClientExternalFGRule matchers server's clientExternalFGRule"}}}, "BgpMsgsRO": {"type": "object", "properties": {"peerInTotalMessages": {"type": "string", "description": "Total Number of peer messages"}, "peerInUpdateElapsedTime": {"type": "string", "description": "Peer updated elapsed time in seconds"}, "peerOutUpdates": {"type": "string", "description": "Number of peer out updates"}, "peerInUpdates": {"type": "string", "description": "Number of peer in updates"}, "lastError": {"description": "This stores BGP Message Last Error related information.", "$ref": "#/definitions/MsgsLastErrorRO"}, "peerOutTotalMessages": {"type": "string", "description": "Total number of peer out messages"}}}, "TpeResiliencyPackageRO": {"type": "object", "properties": {"role": {"enum": ["Protected", "Working", "Protecting"], "type": "string", "description": "the role of the tpe"}, "resiliencyType": {"enum": ["TPT", "OPS"], "type": "string", "description": "resiliencyType"}}}, "BookingDataRO": {"type": "object", "properties": {"bookingFactor": {"type": "string", "description": "The factor that dictates how much overbooking is allowed."}, "assignedBandwidth": {"type": "string", "description": "The bandwidth assigned to the link."}, "assignedBandwidthUnit": {"type": "string", "description": "The unit of the bandwidth assigned to the link."}, "bandwidthLockout": {"default": false, "type": "boolean", "description": "Flag that enables/disables a link from having additional tunnel BW being consumed."}}}, "TpeAttributesRO": {"type": "object", "properties": {"displayAlias": {"type": "string", "description": "The displayAlias of the TPE"}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "lifeCycleOwner": {"type": "string", "description": "Specifies who owns the lifecycle of a TPE"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array"}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "displayData": {"$ref": "#/definitions/TpeDisplayDataRO"}, "customerCode": {"type": "string", "description": "Customer code"}, "parentEBBWConstraintList": {"items": {"$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "type": "array", "description": "A list of Virtual TPEs as BW constraint."}, "cardMode": {"enum": ["maxReach", "maxCapacity", "undetermined"], "type": "string", "description": "Provides a means to differentiate different configurations of the card setup. For example, WLAi 400G OTR has several configuration options for 400G line service rate."}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "category": {"enum": ["CHANNEL_TX", "CHANNEL_RX", "OTN_ACCESS"], "type": "string"}, "resiliencyHandlingPackage": {"items": {"$ref": "#/definitions/ResiliencyHandlingPackageRO"}, "type": "array", "description": " triggers stitcher building resiliency view and NSI updating layerRate in resiliency view"}, "structureType": {"enum": ["PTP", "FTP", "CTP_SERVER_TO_CLIENT", "CTP_CLIENT_TO_SERVER", "CTP_CLIENT_TO_CLIENT", "CTP_SERVER_TO_DOMAIN"], "type": "string"}, "fgiSpecificationRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance.  E.g 'May_Comment:1.0.0:1234'"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the TPE"}, "parentEBFREBWConstraintList": {"items": {"$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "type": "array", "description": "A list of Virtual TPEs as FRE constraint."}, "userLabel": {"type": "string", "description": "The label given to the TPE by an user"}, "state": {"enum": ["IS", "OOS", "OOS_AUMA"], "type": "string", "description": "State of the TPE."}, "availableCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "dynamicFgiSpecificationRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of dynamic Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance.  E.g 'May_Comment:1.0.0:1234'"}, "roadmLine": {"type": "string"}, "bookingData": {"description": "Bandwidth booking data", "$ref": "#/definitions/BookingDataRO"}, "layerTerminations": {"items": {"$ref": "#/definitions/LayerTerminationRO"}, "type": "array"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "tpeGroupSpecs": {"items": {"type": "string"}, "type": "array", "description": "Names of TPEGSpec-s this TPE belongs to. FUTURE: enumerated value, part of TPEGSpec catalog."}, "resiliencyPackage": {"description": "The resiliency package contains attributes only appear in resiliency view.", "$ref": "#/definitions/TpeResiliencyPackageRO"}, "provisioningAttributes": {"description": "Indicates attributes that are used solely in the provisioning workflow. These attributes would not be reported on discovery, but aid in the provisioning workflow.", "$ref": "#/definitions/ProvisioningAttributesRO"}, "capabilitySpecification": {"description": "Defines a capability specification; normally for a TPE but can be utilized elsewhere in the future.", "$ref": "#/definitions/CapabilitySpecRO"}, "cardType": {"type": "string"}, "gneSubnetName": {"type": "string", "description": "The GNE Subnet Name of the TPE"}, "capacityReservations": {"items": {"$ref": "#/definitions/CapacityReservationRO"}, "type": "array"}, "plannedEndpointRole": {"enum": ["drop", "source"], "type": "string", "description": "The role that this end point plays for multicast FRE."}, "parentEBFREBWConstraint": {"description": "Virtual TPe reference for constraints update", "$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "active": {"default": false, "type": "boolean", "description": "An indicator to flag when a TPE is active, or simply a potential."}, "nativeName": {"type": "string", "description": "The name of the TPE that is native to the network element"}, "stackDirection": {"enum": ["client_to_server", "server_to_client", "bidirectional", "horizontal_unidirectional", "unknown"], "type": "string"}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "stitchingTriggers": {"$ref": "#/definitions/StitchingTriggersRO"}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "tpeSpec": {"type": "string", "description": "Name of TPESpec describing this TPE instance. FUTURE: enumerated value, part of TPESpec catalog."}, "structureSubType": {"enum": ["osrpLink", "osrpLine", "regen"], "type": "string"}, "parentEBBWConstraint": {"description": "Virtual TPe reference for constraints update", "$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePoliciesRO"}, "owningServerTpeListType": {"enum": ["uniDecomposed", "inverseMux", "none"], "type": "string", "description": "Owning server tpe list type."}}}, "BgpPackageRO": {"type": "object", "properties": {"peerFsmEstablishedTransitions": {"type": "string", "description": "Peer Fsm established transitions."}, "peerBgpIdentifier": {"type": "string", "description": "BGP identifier of the peer. Learned only in OPEN CONFIRM and ESTABLISHED states."}, "peerNegotiatedBGPVersion": {"type": "string", "description": "Learned only in OPENCONFIRM and ESTABLISHED states."}, "rr": {"description": "This package stores BGP route reflector related information.", "$ref": "#/definitions/BgpRrRO"}, "bfd": {"description": "Holds BFD attributes for BGP TPE endpoint", "$ref": "#/definitions/BgpBfdRO"}, "peerAs": {"type": "integer", "description": "Autonomous System number configured for the peer.", "format": "int64"}, "afiSafi": {"items": {"$ref": "#/definitions/BgpAfiSafiRO"}, "type": "array"}, "peerFsmEstablishedTime": {"type": "string", "description": "Peer Fsm established time in seconds."}, "msgs": {"description": "This package stores BGP message related information.", "$ref": "#/definitions/BgpMsgsRO"}, "timers": {"description": "This package stores BGP time related information.", "$ref": "#/definitions/BgpTimersRO"}, "peerState": {"enum": ["idle", "connect", "active", "opensent", "openconfirm", "established"], "type": "string", "description": "BGP states"}, "peerType": {"enum": ["internal", "external"], "type": "string", "description": "internal/external depending on peerAs number is same as local or different."}, "transport": {"description": "This package stores BGP transport related information.", "$ref": "#/definitions/BgpTransportRO"}}}, "MapperRuleRO": {"type": "object", "properties": {"groupedTribSlots": {"items": {"items": {"type": "string"}, "type": "array"}, "type": "array"}, "tribPort": {"type": "string", "description": "Tributary port"}, "tribSlots": {"items": {"type": "string"}, "type": "array", "description": "Mapped tributary slots corresponding to tributary port"}}}, "ControlPlanePackageRO": {"type": "object", "properties": {"isMaster": {"default": false, "type": "boolean", "description": "Specifies if this end of the OSRP link is the master."}, "configuredLatencyType": {"enum": ["disc", "manual"], "type": "string", "description": "Describe whether the latency is discovered or  manual."}, "holdBackSdThresholds": {"type": "string", "description": "Holdback signal degrade threshold"}, "bwThresholdMode": {"enum": ["ADV_ALL", "AUTO", "MANUAL"], "type": "string", "description": "The default setting of OSRP link bandwidth threshold mode"}, "applicableRates": {"type": "string", "description": "Applicable Rates list"}, "commState": {"type": "string", "description": "State of the Hello protocol finite state machine."}, "bwThreshold": {"$ref": "#/definitions/BandwidthThresholdRO"}, "osrpCommChannel": {"enum": ["GCC0", "GCC1", "GCC2", "GCC12"], "type": "string", "description": "communication carrier."}, "bwLockOut": {"enum": ["NO", "YES"], "type": "string", "description": "Specifies if bandwidth lockout is enabled locally for the OSRP line."}, "commonId": {"type": "integer", "description": "Common identifier of the OSRP line", "format": "int32"}, "holdOffTimer": {"type": "integer", "description": "Line-Level hold-off timer ", "format": "int32"}, "ovpnIds": {"items": {"type": "string"}, "type": "array", "description": "The optical virtual private network ID list"}}}, "PowerPackageRO": {"type": "object", "properties": {"txMaxPower": {"type": "string", "description": "Maximum transmitter power level (dBm)."}, "rxActualPower": {"type": "string", "description": "Current receiver power (dBm)."}, "rxMinPower": {"type": "string", "description": "Minimum receiver power level (dBm)."}, "txActualPower": {"type": "string", "description": "Current transmitter power (dBm)."}, "txMinPower": {"type": "string", "description": "Minimum transmitter power level (dBm)."}, "rxMaxPower": {"type": "string", "description": "Maximum receiver power level (dBm)."}}}, "NamingRulesRO": {"type": "object", "properties": {"potentialGrowth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "total": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "used": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}}}, "ConnectionPointRO": {"type": "object", "properties": {"mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "dynamicOwningPoolAdapterFgiRules": {"items": {"type": "string"}, "type": "array", "description": "dynamicOwningPoolAdapterFgiRules"}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "namingRules": {"items": {"$ref": "#/definitions/NamingRulesRO"}, "type": "array"}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "owningPoolAdapterType": {"type": "string", "description": "Type of the owner Adapter."}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}}}, "ResiliencyTopologyPackageRO": {"type": "object", "properties": {"switchTpeId": {"type": "string", "description": "Switch port client TPE"}, "resilientFreId": {"type": "string", "description": "Resilient nodal fre id"}}}, "TpePlannedRelationshipsRO": {"type": "object", "properties": {"ownedPeerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "configurationAndSwitchControl": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "serviceIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "partnerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "controller": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "owningPeerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipment": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "owningClientTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstructAssociation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "clientTpes": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "owningServerTpeList": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "owningServerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "TpeExpectationDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/TpeExpectationRelationshipsRO"}, "attributes": {"description": "Expectation attributes to be kept by NSI.", "$ref": "#/definitions/TpeExpectationAttributesRO"}, "type": {"enum": ["tpeExpectations"], "type": "string", "description": "The tpe expectation type"}, "id": {"type": "string", "description": "The unique identifier of the tpe expectation"}}}, "AdapterRO": {"type": "object", "properties": {"nameToCapacityMappingRules": {"items": {"$ref": "#/definitions/NameToCapacityMappingRulesRO"}, "type": "array"}, "poolAdapterType": {"type": "string", "description": "The type for the adapter."}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "mappingInteractionRules": {"items": {"$ref": "#/definitions/MappingInteractionRuleRO"}, "type": "array", "description": "The specification of the interaction between the support for different client layer protocols signals."}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "connectionRulesInAdaptationLayer": {"items": {"$ref": "#/definitions/ConnectionRuleRO"}, "type": "array", "description": "Directions of how to instantiate client TPE(s) for this adapter, including indirect (client over client) client TPE instantiation."}, "namingRules": {"items": {"$ref": "#/definitions/NamingRulesRO"}, "type": "array"}, "adaptsToLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "continuousAdapterRulesPackage": {"description": "This package stores various rules to be considered when instantiating a new TPE utilizing continuous b/w.", "$ref": "#/definitions/ContinuousAdapterRulesPackageRO"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "potentialAdapterCapacities": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array", "description": "Total potential capacity of this Adapter."}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "cardinality": {"type": "string", "description": "Number of possible potential TPEs. Can be a numeric (eg '1', '96', '1000', ...) or can be categorical (eg 'indirect')."}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "name": {"type": "string", "description": "Name of the Adapter. Unique in the scope of this TPE."}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "eFreTerminationState": {"enum": ["hapFre_terminated", "hapFre_not_terminated"], "type": "string", "description": "Values to handle TPEs that have multiple poolAdapters, especially multiple poolAdapters adapting to the same layer rate"}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}}}, "MplsPackageRO": {"type": "object", "properties": {"prevHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the previous hop of this MPLS tunnel"}, "subType": {"enum": ["TP", "TE"], "type": "string", "description": "TP refers to Transport Profile; TE refers to Traffic Engineering"}, "aisSessionAdminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of the AIS session for this MPLS tunnel"}, "mbbHistory": {"items": {"$ref": "#/definitions/MbbHistoryEntryRO"}, "type": "array"}, "shareSrlg": {"items": {"type": "string"}, "type": "array", "description": "A list of share SRLG values used by dynamic tunnel during provisioning."}, "TxTag": {"type": "string", "description": "The label used for traffic egressing from this endpoint"}, "facilityBypass": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is facility-bypass (FB) tunnel"}, "nextHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the next hop of this MPLS tunnel"}, "stickyLsp": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating a dynamic tunnel stays on the same path after change in required resources. Applicable to dynamic coRouted tunnels only."}, "tunnelType": {"enum": ["rsvp_ingress_corout", "rsvp_egress_corout", "rsvp_transit_corout", "static_ingress_corout", "static_egress_corout", "static_transit_corout", "static_ingress_unidir", "static_egress_unidir", "static_transit_unidir", "rsvp_ingress_unidir", "rsvp_transit_unidir", "static_ingress_assoc", "rsvp_ingress", "rsvp_transit", "rsvp_egress"], "type": "string", "description": "Tunnel type (static/dynamic, ingress/egress, corouted/unidrectional)"}, "bfd": {"description": "Holds BFD attributes for one LER TPE endpoint", "$ref": "#/definitions/BfdRO"}, "optimization": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating if tunnel optimization should be attempted by the control-plane"}, "destTunnelId": {"type": "string", "description": "The ID of the far end of this MPLS tunnel"}, "fb": {"description": "MPLS FB tunnel attributes", "$ref": "#/definitions/MplsFbRO"}, "destIp": {"type": "string", "description": "The IP-data interface address of the far end of this MPLS tunnel"}, "fwdIn": {"type": "string", "description": "The inward ID in the forward direction (transit)"}, "localIfNamePrevHop": {"type": "string", "description": "The local interface name of the previous hop of this MPLS tunnel (6200 only)"}, "localIfNameNextHop": {"type": "string", "description": "The local interface name of the next hop of this MPLS tunnel (6200 only)"}, "frrSignaling": {"enum": ["on", "off"], "type": "string", "description": "Deprecated by frr package and will be removed later. Flag for fast re-route capability"}, "colorGroup": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "direction": {"enum": ["bidirectional", "ingress", "egress", "unidirectional"], "type": "string", "description": "Tunnel direction. Use value bidirectional or unidirectional only and TPE attribute stackDirection since ingress and egress are ambiguous"}, "lspId": {"type": "string", "description": "The numeric ID of this MPLS tunnel"}, "srcTunnelId": {"type": "string", "description": "The ID of the near end of this MPLS tunnel"}, "aisProfileName": {"type": "string", "description": "The name of the Alarm Indication Signal profile for this MPLS tunnel"}, "optimizationInterval": {"type": "integer", "description": "The interval between tunnel optimization attempts", "format": "int32"}, "excludeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "signaled": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is dynamic; otherwise it is static"}, "diversityResource": {"enum": ["unknown", "none", "link", "srlg", "node", "srlg_and_node", "srlg_and_link", "link_and_node", "srlg_or_node", "srlg_and_link_and_node"], "type": "string", "description": "The object upon which to base diversity for the backup tunnel"}, "aisRefreshTimerUnit": {"type": "string", "description": "The units for aisRefreshTimer field"}, "fixedTtl": {"type": "string", "description": "The time-to-live for tunnel hops (1-255)"}, "lspName": {"type": "string", "description": "The name of this MPLS tunnel"}, "autoBackup": {"enum": ["on", "off"], "type": "string", "description": "A flag to signal if auto-backup tunnel creation is on or off"}, "aisRefreshTimer": {"type": "integer", "description": "The interval between each AIS refresh for this MPLS tunnel", "format": "int32"}, "nextHopIfNum": {"type": "string", "description": "The interface number of the next hop of this MPLS tunnel"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string", "description": "The role at this point in the MPLS tunnel"}, "includeAll": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "prevHopIfNum": {"type": "string", "description": "The interface number of the previous hop of this MPLS tunnel"}, "explicitTunnel": {"description": "Holds data for the explicit tunnel path", "$ref": "#/definitions/TunnelPathRO"}, "includeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "diversityLevel": {"enum": ["strict", "maximal"], "type": "string", "description": "The diversity level of backup tunnel creation (maximal meaning best-effort)"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "A list of shared-risk link-group values assigned to this interface"}, "setupPriority": {"type": "string", "description": "The priority of the dynamic tunnel setup (0-7)"}, "revIn": {"type": "string", "description": "The inward ID in the reverse direction (transit)"}, "explicitRouteObject": {"items": {"type": "string"}, "type": "array", "description": "An ordered list of hop-by-hop IP-data interface addresses traversed by this dynamic MPLS tunnel"}, "revOut": {"type": "string", "description": "The outward ID in the reverse direction (transit)"}, "frr": {"description": "MPLS FRR details attributes", "$ref": "#/definitions/MplsFrrRO"}, "fwdOut": {"type": "string", "description": "The outward ID in the forward direction (transit)"}, "softPreemption": {"enum": ["enable", "disable"], "type": "string", "description": "If true, soft preemption is enabled. Applicable to dynamic TE unidirectional tunnels only."}, "optimizationIntervalUnit": {"type": "string", "description": "The unit for optimizationInterval"}, "RxTag": {"type": "string", "description": "The label used for traffic ingressing to this endpoint"}, "bw": {"description": "Holds bandwidth attributes for a dynamic tunnel endpoint or an IP interface", "$ref": "#/definitions/BwRO"}, "holdPriority": {"type": "string", "description": "The priority of the dynamic tunnel steady-state (0-7)"}, "srcIp": {"type": "string", "description": "The IP-data interface address of the near end of this MPLS tunnel"}, "coRouted": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is co-routed; otherwise it is associated"}, "frrProfile": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "Deprecated by frr package and will be removed later. The fast re-route profile for this MPLS tunnel"}, "ctrlPlaneId": {"type": "string", "description": "A generated value to uniquely identify a particular tunnel instance"}}}, "AggregationBucketRO": {"type": "object", "properties": {"absoluteTotal": {"type": "string", "description": "The unfiltered total number of entities in the data"}, "subAggregations": {"description": "The aggregated data based on a requested aggregation name and criteria", "$ref": "#/definitions/AggregationRO"}, "bucketValue": {"type": "string", "description": "The result of the aggregation"}, "bucketKey": {"type": "string", "description": "The key of the aggregation criteria"}}}, "TpeRelationshipsRO": {"type": "object", "properties": {"ownedPeerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "configurationAndSwitchControl": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "partnerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "tpePlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "controller": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "owningPeerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipment": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "owningClientTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstructAssociation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "tpeDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "tpeExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "clientTpes": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "owningServerTpeList": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "owningServerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "AfiSafiPrefixListRO": {"type": "object", "properties": {"direction": {"enum": ["in", "out"], "type": "string", "description": "Direction to filter BGP advertisements."}, "name": {"type": "string", "description": "Name to filter BGP advertisements."}}}, "OneToManyRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array", "description": "The one-to-many relationship"}}}, "BgpTransportRO": {"type": "object", "properties": {"peerPort": {"type": "string", "description": "Peer port reported in OPENCONFIRM and ESTABLISHED states."}, "localIp": {"type": "string", "description": "If update-source is configured then IP address of the interface. Rely on learned localIp if it is reported. Reported in OPENCONFIRM and ESTABLISHED states."}, "localPort": {"type": "string", "description": "Local port reported in OPENCONFIRM and ESTABLISHED states."}, "peerIp": {"type": "string", "description": "Peer Ip configured as part of BGP peer configuration."}}}, "AttributePolicyOverrideRO": {"type": "object", "properties": {"attributeSource": {"type": "string", "description": "Attribute source, in case it has the value from some other references, (e.g. attributes.srlg is relationships.srlgs.id"}, "attributeName": {"type": "string", "description": "Attribute path(e.g. attribute.customerCode or relationship.endpoints)"}, "policies": {"items": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string"}, "type": "array"}}}, "NoteRO": {"type": "object", "properties": {"noteMsg": {"type": "string", "description": "The message left on the note left by the user"}, "lastUpdatedBy": {"type": "string", "description": "The name of the user that last edited the note"}, "lastUpdatedTime": {"type": "string", "description": "The time the note was last updated"}}}, "AfiSafiNextHopSelfRO": {"type": "object", "properties": {"configured": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}, "excludeReflectedRoutes": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}}}, "AdditionalAttributesRO": {"type": "object"}, "TpeDisplayDataRO": {"type": "object", "properties": {"displayNativeName": {"type": "string", "description": "The name of the TPE that we want UI to display if it is different than nativeName"}}}, "TpeExpectationRelationshipsRO": {"type": "object", "properties": {"ownedPeerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "configurationAndSwitchControl": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "serviceIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "partnerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "controller": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "owningPeerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipment": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "owningClientTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstructAssociation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "clientTpes": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "owningServerTpeList": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "owningServerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "ErrorSourceRO": {"type": "object", "properties": {"parameter": {"type": "string", "description": "URI query parameter that caused the error"}, "pointer": {"type": "string", "description": "JSON Pointer to the associated entity in the request document"}}}, "IdentifierRO": {"type": "object"}, "ProvisioningAttributesRO": {"type": "object"}, "AdaptationPoolRO": {"type": "object", "properties": {"poolAdapters": {"items": {"$ref": "#/definitions/AdapterRO"}, "type": "array"}, "memberAdaptationPools": {"items": {"type": "string"}, "type": "array", "description": "Reference(s) to 0 or more member AdaptationPool-s. Allows for nesting of AdaptationPools."}, "logicalRule": {"enum": ["xOR", "OR"], "type": "string", "description": "Restrict the number of active poolAdapters could be xOR or OR - default is OR"}, "name": {"type": "string", "description": "Name of the AdaptationPool. Unique in the scope of this TPE."}, "namingRules": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}}}, "CapacityRO": {"type": "object", "properties": {"layer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "capacity": {"type": "integer", "description": "Number of potential client instances or usage instances", "format": "int32"}, "capacityCalculationRule": {"type": "string", "description": "Core logic that will be used on capacity calculation"}, "source": {"type": "string", "description": "Source of the capacity"}, "capacitySize": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacitySizeRO"}, "maxLimit": {"type": "integer", "description": "Maximum potential client instances", "format": "int32"}, "capacityClass": {"enum": ["discrete", "continuous"], "type": "string", "description": "Discrete \u2013 b/w space is treated as a list of discrete values; this is default. Continuous \u2013 b/w space is treated as continuous segment, in the range of low/upper."}}}, "BandwidthThresholdRO": {"type": "object", "properties": {"ODUFLEXRSZ": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (in Bps) for Resizable ODU Flex advertised for a link."}, "ODU2E": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU2E) advertised for a link."}, "ODUFLEXNRSZ": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (in Bps) for Non-Resizable ODU Flex advertised for a link."}, "ODU4": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU4) advertised for a link."}, "ODU2": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU2) advertised for a link."}, "ODU3": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU3) advertised for a link."}, "ODU0": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU0) advertised for a link."}, "ODU1": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU1) advertised for a link."}}}, "AttributeSpecRO": {"type": "object", "properties": {"modificationRules": {"items": {"$ref": "#/definitions/AttributeModificationRuleRO"}, "type": "array", "description": "List of operations that are permitted on the attribute."}, "name": {"type": "string", "description": "Name of attribute."}, "defaultValue": {"type": "string", "description": "Default value for attribute."}, "location": {"type": "string", "description": "Location of attribute, using dot notation e.g. attributes.layerTerminations[DSR].additionalAttributes."}, "valueOptions": {"description": "Provides a means to specify the possible values for an attribute.", "$ref": "#/definitions/AttributeValueOptionRO"}, "matchingRules": {"items": {"$ref": "#/definitions/AttributeMatchingRuleRO"}, "type": "array", "description": "List of matching rules that apply to this attribute."}}}, "TerminationRO": {"type": "object", "properties": {"connectionRulesInOwnLayer": {"items": {"$ref": "#/definitions/ConnectionRuleRO"}, "type": "array"}}}, "AttributeValueOptionRO": {"type": "object", "properties": {"selectFrom": {"items": {"type": "string"}, "type": "array", "description": "A comma separated list of the choices available for selection."}, "range": {"type": "string", "description": "A range of values in the format of '<from>,<to>,[step]' whereby from is the initial value, to is the end value, and an optional step value to indicate the increment."}}}, "AdjacencyPackageRO": {"type": "object", "properties": {"adjacencyMechanism": {"type": "string", "description": "The attribute defining the adjacency mechanism used."}, "provisionedRemoteTagFormat": {"type": "string", "description": "The format of the remote provisioning adjacency tag."}, "remoteTagFormat": {"type": "string", "description": "The format of the remote adjacency tag."}, "remoteTag": {"type": "string", "description": "The actual remote tag as discovered by the network element."}, "linkAttributes": {"description": "This package stores information of Link.", "$ref": "#/definitions/LinkAttributesRO"}, "provisionedRemoteTag": {"type": "string", "description": "The provisioned remote tag is the expected destination defined by the user that adheres to the remoteTagFormat."}, "topologySourceTag": {"type": "string", "description": "The tag representing the topological state. This could be 'DISCOVERED', for example."}, "localTag": {"type": "string", "description": "The actual tag of the originating network element."}, "localTagFormat": {"type": "string", "description": "The format of the local adjacency tag."}, "adjacencyType": {"type": "string", "description": "This field delimits the adjacency type between two network elements (Ex: LIM, LINE, etc...)."}}}, "CapacityPatternRO": {"type": "object", "properties": {"type": {"enum": ["LIST", "RANGE", "POOL", "PERCENTAGE"], "type": "string", "description": "Identifies Pattern type"}, "format": {"type": "string", "description": "An optional regex expression or format string describing how to parse the size string in case of multiple values, e.g. CIR:EIR"}}}, "ResiliencyHandlingEdgeRO": {"type": "object", "properties": {"switchTpeId": {"type": "string", "description": "The ID of the CTPs in the physical view"}, "clientTpeId": {"type": "string", "description": "The ID of the client PTP connected to the switch"}}}, "ErrorsRO": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/ErrorRO"}, "type": "array", "description": "A list of errors"}}}, "BgpBfdRO": {"type": "object", "properties": {"transmitInterval": {"type": "string", "description": "The interval between transmitting BFD messages"}, "configured": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "mhop": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "receiveInterval": {"type": "string", "description": "The interval between receiving BFD messages"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of BFD for this endpoint"}, "role": {"enum": ["passive", "active", "any"], "type": "string", "description": "The role of BFD for this endpoint"}, "profileName": {"type": "string", "description": "The profile name associated with this set of BFD attributes"}, "operationalState": {"enum": ["up", "down"], "type": "string", "description": "The operational state of BFD for this endpoint"}}}, "TrafficProfileRO": {"type": "object", "properties": {"trafficParams": {"items": {"$ref": "#/definitions/TrafficProfileParamRO"}, "type": "array", "description": "List of traffic parameters that must be used as input in the use-case."}, "routeConstraints": {"description": "Defines the traffic profile route characteristics used to data-drive provisioning workflows.", "$ref": "#/definitions/RouteConstraintsRO"}, "inputParams": {"items": {"$ref": "#/definitions/TrafficProfileParamRO"}, "type": "array", "description": "List of input parameters to be matched to derive the correct trafficProfile for the use-case."}, "outputs": {"items": {"$ref": "#/definitions/TrafficProfileParamRO"}, "type": "array", "description": "List of outputs that are expected in the use-case."}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "BgpTimersRO": {"type": "object", "properties": {"peerNegotiatedKeepAliveTime": {"type": "string", "description": "Peer negotiation keep alive time in seconds"}, "peerMinRouteAdvertisementInterval": {"type": "string", "description": "Peer minimum advertised intervel in seconds"}, "peerConfiguredHoldTime": {"type": "string", "description": "Peer configured hold time in seconds"}, "peerConnectRetryInterval": {"type": "string", "description": "Peer connection retry intervel in seconds."}, "peerConfiguredKeepAliveTime": {"type": "string", "description": "Peer configured keep alive time in seconds"}, "peerMinASOriginationInterval": {"type": "string", "description": "Peer minimum AS origination intervel in seconds"}, "peerNegotiatedHoldTime": {"type": "string", "description": "Peer negotiation hold time in seconds"}}}, "TpeExpectationListRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/TpeExpectationDataRO"}, "type": "array"}}}, "BgpRrRO": {"type": "object", "properties": {"peerRole": {"enum": ["client", "routeReflector"], "type": "string", "description": "Role of the peer"}, "role": {"enum": ["client", "routeReflector"], "type": "string", "description": "self role"}, "peerClusterId": {"type": "string", "description": "The cluster-id to which peer belongs if it is configured as RR client."}}}, "TtiPackageRO": {"type": "object", "properties": {"ttiTx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttributeRO"}, "traceFailedMode": {"enum": ["NULL", "ALARM", "ALARM_FAIL_LINE"], "type": "string"}, "ttiExpectedRx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttributeRO"}, "ttiRx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttributeRO"}}}, "TpePlannedAttributesRO": {"type": "object", "properties": {"displayAlias": {"type": "string", "description": "The displayAlias of the TPE"}, "lifeCycleOwner": {"type": "string", "description": "Specifies who owns the lifecycle of a TPE"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array"}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "customerCode": {"type": "string", "description": "Customer code"}, "parentEBBWConstraintList": {"items": {"$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "type": "array", "description": "A list of Virtual TPEs as BW constraint."}, "cardMode": {"enum": ["maxReach", "maxCapacity", "undetermined"], "type": "string", "description": "Provides a means to differentiate different configurations of the card setup. For example, WLAi 400G OTR has several configuration options for 400G line service rate."}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "category": {"enum": ["CHANNEL_TX", "CHANNEL_RX", "OTN_ACCESS"], "type": "string"}, "resiliencyHandlingPackage": {"items": {"$ref": "#/definitions/ResiliencyHandlingPackageRO"}, "type": "array", "description": " triggers stitcher building resiliency view and NSI updating layerRate in resiliency view"}, "structureType": {"enum": ["PTP", "FTP", "CTP_SERVER_TO_CLIENT", "CTP_CLIENT_TO_SERVER", "CTP_CLIENT_TO_CLIENT", "CTP_SERVER_TO_DOMAIN"], "type": "string"}, "fgiSpecificationRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance.  E.g 'May_Comment:1.0.0:1234'"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the TPE"}, "parentEBFREBWConstraintList": {"items": {"$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "type": "array", "description": "A list of Virtual TPEs as FRE constraint."}, "userLabel": {"type": "string", "description": "The label given to the TPE by an user"}, "availableCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "dynamicFgiSpecificationRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of dynamic Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance.  E.g 'May_Comment:1.0.0:1234'"}, "roadmLine": {"type": "string"}, "layerTerminations": {"items": {"$ref": "#/definitions/LayerTerminationRO"}, "type": "array"}, "tpeGroupSpecs": {"items": {"type": "string"}, "type": "array", "description": "Names of TPEGSpec-s this TPE belongs to. FUTURE: enumerated value, part of TPEGSpec catalog."}, "resiliencyPackage": {"description": "The resiliency package contains attributes only appear in resiliency view.", "$ref": "#/definitions/TpeResiliencyPackageRO"}, "capabilitySpecification": {"description": "Defines a capability specification; normally for a TPE but can be utilized elsewhere in the future.", "$ref": "#/definitions/CapabilitySpecRO"}, "cardType": {"type": "string"}, "gneSubnetName": {"type": "string", "description": "The GNE Subnet Name of the TPE"}, "capacityReservations": {"items": {"$ref": "#/definitions/CapacityReservationRO"}, "type": "array"}, "plannedEndpointRole": {"enum": ["drop", "source"], "type": "string", "description": "The role that this end point plays for multicast FRE."}, "parentEBFREBWConstraint": {"description": "Virtual TPe reference for constraints update", "$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "active": {"default": false, "type": "boolean", "description": "An indicator to flag when a TPE is active, or simply a potential."}, "nativeName": {"type": "string", "description": "The name of the TPE that is native to the network element"}, "stackDirection": {"enum": ["client_to_server", "server_to_client", "bidirectional", "horizontal_unidirectional", "unknown"], "type": "string"}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "stitchingTriggers": {"$ref": "#/definitions/StitchingTriggersRO"}, "parentEBBWConstraint": {"description": "Virtual TPe reference for constraints update", "$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "tpeSpec": {"type": "string", "description": "Name of TPESpec describing this TPE instance. FUTURE: enumerated value, part of TPESpec catalog."}, "structureSubType": {"enum": ["osrpLink", "osrpLine", "regen"], "type": "string"}, "provisioningAttributes": {"description": "Indicates attributes that are used solely in the provisioning workflow. These attributes would not be reported on discovery, but aid in the provisioning workflow.", "$ref": "#/definitions/ProvisioningAttributesRO"}, "owningServerTpeListType": {"enum": ["uniDecomposed", "inverseMux", "none"], "type": "string", "description": "Owning server tpe list type."}}}, "MappingTableEntryRO": {"type": "object", "properties": {"ip": {"type": "string", "description": "The ip address."}, "direction": {"enum": ["RX", "TX", "RXTX"], "type": "string", "description": "The directionality defined in terms of RX/TX."}, "cos": {"type": "string", "description": "The class of service."}, "label": {"type": "string", "description": "The user label."}}}, "LayerProtocolRO": {"type": "object", "properties": {"termination": {"description": "The specification of the layer protocol termination (including framing, modulation etc). For example the specification of the function that takes a MAC frame and extracts the content (removing the MAC address in the process).", "$ref": "#/definitions/TerminationRO"}, "accessPoint": {"$ref": "#/definitions/AccessPointRO"}, "connectionPoint": {"$ref": "#/definitions/ConnectionPointRO"}, "layeredAttributes": {"items": {"$ref": "#/definitions/LayeredAttributeRO"}, "type": "array"}, "adaptationPools": {"items": {"$ref": "#/definitions/AdaptationPoolRO"}, "type": "array"}}}, "AccessPointRO": {"type": "object", "properties": {"mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "clientTpeRulesInOwnLayer": {"items": {"$ref": "#/definitions/ConnectionRuleRO"}, "type": "array", "description": "Directions of how to instantiate client TPE(s) for this access point, including indirect (client over client) client TPE instantiation."}, "namingRules": {"items": {"$ref": "#/definitions/NamingRulesRO"}, "type": "array"}, "adaptsToLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "cardinality": {"type": "string", "description": "Number of possible potential TPEs. Can be a numeric (eg '1', '96', '1000', ...) or can be categorical (eg 'indirect')."}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}}}, "AfiSafiOrfRO": {"type": "object", "properties": {"direction": {"enum": ["rx", "tx", "both"], "type": "string", "description": "Outbound Route Filtering direction"}, "type": {"type": "string", "description": "Outbound Route Filtering type"}}}, "ColorGroupRO": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color group"}, "colors": {"items": {"$ref": "#/definitions/ColorEntryRO"}, "type": "array"}, "name": {"type": "string", "description": "The name of the color group"}}}, "TpePlannedRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/TpePlannedDataRO"}}}, "CapacitySizeRO": {"type": "object", "properties": {"pattern": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacityPatternRO"}, "unit": {"type": "string", "description": "unit for size string value"}, "size": {"items": {"type": "string"}, "type": "array", "description": "Capacity size to be interpreted with CapacityPattern"}}}, "MepEntryRO": {"type": "object", "properties": {"mepId": {"type": "string", "description": "The ID of the MEP"}, "mepType": {"enum": ["UP", "DOWN"], "type": "string", "description": "The type of the MEP, up or down"}, "ccmPriority": {"type": "string", "description": "Priority of the CC messages (0-7)"}, "ccmTransmitState": {"enum": ["ON", "OFF"], "type": "string", "description": "The transmission state of CCM (on/off)"}, "mepAdminState": {"enum": ["ENABLED", "DISABLED"], "type": "string", "description": "The administrative state (enabled/disabled) of the MEP"}, "mepMacAddress": {"type": "string", "description": "The MAC address of the MEP"}, "dmm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731AttributesRO"}, "vlanId": {"type": "string", "description": "The VLAN ID of the MEP"}, "slm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731AttributesRO"}, "lmm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731AttributesRO"}, "remoteMepId": {"type": "string", "description": "The ID of the remote MEP"}}}, "RouteConstraintsRO": {"type": "object", "properties": {"maxInCpGroup": {"type": "string", "description": "Maximum number of routes that can be present in a control plane group. Could be a number, or could be a number evident n the model i.e. inverseMux."}, "signalPattern": {"enum": ["adjacent"], "type": "string", "description": "If photonic route type, specifies the frequency or wavelength pattern to choose for the routes."}, "numberOfRoutes": {"type": "string", "description": "Number of routes defined by the configuration. For example, a PRIME/MEMBER configuration.  Could be a number, or could be a number evident from the model i.e. inverseMux. Generally, should only be specified if the configuration implies more than 1 route."}, "sizeOfEachRoute": {"type": "string", "description": "For each route, what is the required size of each route. For example, '200G' in the case of 400G WLAi OTR 2xOTSi."}, "routeCharacteristic": {"enum": ["coRouted", "maximumDiversity"], "type": "string", "description": "If multiple routes need to be defined, what's the relationship between the routes."}, "type": {"enum": ["photonic"], "type": "string", "description": "The route type i.e. photonic. In the future, other types may be supported."}}}, "TtiAttributeRO": {"type": "object", "properties": {"dapi": {"type": "string", "description": "String to hold 'dapi' attribute"}, "operator": {"type": "string", "description": "String to hold 'operator' attribute"}, "sapi": {"type": "string", "description": "String to hold 'sapi' attribute"}}}, "LocationIndexesRO": {"type": "object"}, "CapabilitySpecRO": {"type": "object", "properties": {"attributeSpecs": {"items": {"$ref": "#/definitions/AttributeSpecRO"}, "type": "array", "description": "List of attributes defined in the capability specification that can be acted upon."}}}, "LifeCycleRuleRO": {"type": "object", "properties": {"autoDeletedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto deleted by the network and/or device (true) or must it explicitly be created (false)."}, "autoCreatedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto created by the network and/or device (true) or must it explicitly be created (false)."}}}, "ErrorRO": {"type": "object", "properties": {"source": {"description": "Error source", "$ref": "#/definitions/ErrorSourceRO"}, "code": {"type": "string", "description": "Error code"}, "detail": {"type": "string", "description": "Error details"}, "title": {"type": "string", "description": "Error title"}}}, "ColorEntryRO": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color"}, "name": {"type": "string", "description": "The name of the color"}}}, "SyncScopeRO": {"type": "object", "properties": {"name": {"items": {"type": "string"}, "type": "array", "description": "The synchronization scope name"}, "context": {"type": "string", "description": "The synchronization scope context"}}}, "Y1731AttributesRO": {"type": "object", "properties": {"count": {"type": "integer", "description": "The count of the message being transmitted", "format": "int32"}, "remoteMepMacAddress": {"type": "string", "description": "The MAC address of the remote MEP"}, "frameSize": {"type": "string", "description": "The frame size of the messages being transmitted (numeric), if applicable to this measurement"}, "interval": {"type": "string", "description": "The interval between transmitting each message (e.g.: 1)"}, "enabled": {"default": false, "type": "boolean", "description": "True when the particular measurement is enabled"}, "intervalUnit": {"type": "string", "description": "The unit of interval between transmitting each message (e.g.: seconds)"}, "priority": {"type": "string", "description": "The priority of the messages being transmitted (0-7)"}, "repeatDelay": {"type": "integer", "description": "The repeat delay of the message being transmitted", "format": "int32"}, "remoteMepId": {"type": "string", "description": "The ID of the remote MEP"}, "iterate": {"type": "integer", "description": "The iteration number of the message being transmitted", "format": "int32"}}}, "AttributeModificationRuleRO": {"type": "object", "properties": {"permittedOperation": {"enum": ["writeAtCreationTime", "readWrite", "readOnly"], "type": "string"}, "constraint": {"enum": ["writeAtFarEnd"], "type": "string"}}}, "G8032PackageRO": {"type": "object", "properties": {"guardTime": {"type": "integer", "description": "guard time in millisecond.", "format": "int32"}, "operationalChannelBlock": {"default": false, "type": "boolean", "description": "True if the port is blocked, i.e portState == Blocked"}, "forceSwitch": {"default": false, "type": "boolean", "description": "a flag indicating whether the switching is forced or not."}, "portState": {"enum": ["disabled", "forwarding", "blocked", "unknown"], "type": "string", "description": "the state of the port"}, "portDirection": {"enum": ["east", "west"], "type": "string", "description": "the direction of the port."}, "ringId": {"type": "string", "description": "The logical ring ID"}, "ringMembers": {"type": "string", "description": "a comma separated list of virtual ring members."}, "rapsVid": {"type": "string", "description": "the R-APS VID of the ring"}, "portStatus": {"enum": ["ok", "down", "CCMFailure", "localForceSwitch", "remoteForceSwitch", "remoteSignalFailure", "unknown"], "type": "string", "description": "the status of the port"}, "holdOffTimeUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "waitToRestoreUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "rplOwner": {"default": false, "type": "boolean", "description": "True if the port is configured as RPL-owner."}, "waitToBlock": {"type": "integer", "description": "wait to block time in milliseconds. ", "format": "int32"}, "revertive": {"default": false, "type": "boolean", "description": "revertive"}, "ringState": {"enum": ["initializing", "ok", "adminDisabled", "operationalDisabled", "protecting", "recovering", "unknown"], "type": "string", "description": "the state of the ring"}, "logicalRingName": {"type": "string", "description": "The logical ring name"}, "ringType": {"enum": ["majorRing", "subRing"], "type": "string", "description": "the type of ring"}, "waitToRestore": {"type": "integer", "description": "wait to restore time in minute. ", "format": "int32"}, "virtualRingName": {"type": "string", "description": "the virtual ring name"}, "ringStatus": {"enum": ["ok", "localSignalFailure", "localForceSwitch", "remoteOtherPortSignalFailure", "remoteOtherPortForceSwitch", "provisioningMismatch", "notReceivingPDUS", "noRPLOwnerDetected", "unknown"], "type": "string", "description": "the status of the ring"}, "sharedPort": {"type": "string", "description": "sharedPort information for the sub-ring (ONLY for sub-ring endNode)"}, "guardTimeUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "subRingTermination": {"default": false, "type": "boolean", "description": "flag indicating whether the subring is terminating or not"}, "holdOffTime": {"type": "integer", "description": "hold off time in milliseconds", "format": "int32"}, "waitToBlockUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}}}, "LocationRO": {"type": "object", "properties": {"mplsLabel": {"type": "string", "description": "MPLS tunnel forward/reverse in/out label"}, "interfaceIp": {"type": "string", "description": "DEPRECATED The IP address of MPLS interface"}, "baynum": {"type": "string", "description": "Bay number"}, "mcId": {"type": "string", "description": "The identifier of the media channel"}, "fiberPairTermination": {"type": "string", "description": "The terminating fiber pair id within a Branching Unit (BU)"}, "frequency": {"type": "string", "description": "The frequency of the channel"}, "subshelf": {"type": "string"}, "wavelength": {"type": "string"}, "ringId": {"type": "string", "description": "ID of the ring"}, "eqptGrp": {"type": "string", "description": "The group ID obtained from RTRV-EQPTGRP for the SAOS card on which the entity resides"}, "port": {"type": "string"}, "leg": {"enum": ["trunk", "a1", "a2"], "type": "string", "description": "Branching Unit (BU) leg e.g. Trunk, A1 or A2"}, "slot": {"type": "string"}, "index": {"type": "string"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string", "description": "MPLS tunnel role"}, "vce": {"type": "string", "description": "The VS name of the CTP entity"}, "fic": {"type": "string", "description": "Frame identification code"}, "subport": {"type": "string"}, "neName": {"type": "string", "description": "Name of the networkConstruct. For example, the OSRP node name in controlPlane."}, "logicalPortName": {"type": "string"}, "protectionRole": {"enum": ["primary", "backup"], "type": "string", "description": "Protection role"}, "lagName": {"type": "string", "description": "Name of the LAG"}, "instance": {"type": "string"}, "locationIndex": {"items": {"$ref": "#/definitions/LocationIndexesRO"}, "type": "array", "description": "List of location indexes"}, "odu2_index": {"type": "string"}, "rapsVid": {"type": "string", "description": "R-APS VID"}, "iclName": {"type": "string", "description": "Name of the ICL"}, "channel": {"type": "string"}, "nmcId": {"type": "string", "description": "OSTi CTP for the SNC"}, "direction": {"enum": ["tx", "rx"], "type": "string", "description": "The direction of the traffic flow e.g. Tx or Rx"}, "mgmtNmcId": {"type": "string", "description": "TBD"}, "peerIp": {"type": "string", "description": "Address of the BGP peer"}, "shelf": {"type": "string"}, "peerAs": {"type": "integer", "description": "Autonomous System number of the BGP peer", "format": "int64"}, "vlan": {"type": "string", "description": "The VLAN ID of the CTP entity"}, "oduCn_index": {"type": "string"}, "lspName": {"type": "string", "description": "MPLS tunnel name"}, "virtualRingName": {"type": "string", "description": "Name of the virtual ring"}, "logicalId": {"type": "string"}, "mgmtMcId": {"type": "string", "description": "TBD"}, "primaryLspName": {"type": "string", "description": "The primary MPLS tunnel name"}, "interfaceName": {"type": "string", "description": "Interface name of the IP FTP"}, "odu4_index": {"type": "string"}, "subsubslot": {"type": "string"}, "managementType": {"enum": ["tl1", "saos", "netconf", "rest", "corba", "submarineConf"], "type": "string", "description": "Management protocol type"}, "sncId": {"type": "string", "description": "Snc id number"}, "eth_index": {"type": "string"}, "pseudoWireId": {"type": "string", "description": "DEPRECATED The identifier of Pseudo-Wire CTP"}, "srcIp": {"type": "string", "description": "Source IP of the node"}, "pseudoWireName": {"type": "string", "description": "The name of the Pseudo-Wire on the CTP"}, "rack": {"type": "string"}, "subslot": {"type": "string"}}}, "TpeExpectationRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/TpeExpectationDataRO"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "TpeCfmPackageRO": {"type": "object", "properties": {"mep": {"items": {"$ref": "#/definitions/MepEntryRO"}, "type": "array", "description": "Each entry holds information about one Maintenance Endpoint configured on this TPE"}, "cfmServiceName": {"type": "string", "description": "The name of the CFM service"}}}, "LoopbackPackageRO": {"type": "object", "properties": {"loopbackWavelength": {"type": "string", "description": "Wavelength of the loopback test; taken directly from the value of the TL1 LPBKWVL field"}, "loopbackStatus": {"type": "string", "description": "Status of the test; taken directly from the value of the TL1 LPBKSTATUS field."}}}, "MplsFbProtectedTunnelRO": {"type": "object", "properties": {"srcIp": {"type": "string", "description": "Source IP address of the tunnel protected by this FB tunnel"}, "destIp": {"type": "string", "description": "Destination IP address of the tunnel protected by this FB tunnel"}, "role": {"enum": ["ingress", "transit"], "type": "string", "description": "The role at this point of the MPLS tunnel protected by this FB tunnel"}, "name": {"type": "string", "description": "Name of the tunnel protected by this FB tunnel"}}}, "TrafficProfileParamRO": {"type": "object", "properties": {"selectFrom": {"items": {"type": "string"}, "type": "array", "description": "Alternate form of value attribute that permits a comma separated list of the choices available for selection."}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "name": {"type": "string", "description": "Name of attribute."}, "value": {"type": "string", "description": "Value of attribute."}, "location": {"enum": ["self", "intent", "farEnd", "immediateClientTpe"], "type": "string", "description": "If an input, where to find the attribute. If an output, where to set the attribute."}}}, "TunnelPathRO": {"type": "object", "properties": {"hops": {"items": {"$ref": "#/definitions/HopEntryRO"}, "type": "array"}, "pathName": {"type": "string", "description": "The name of this explicit tunnel path"}}}, "NameToCapacityMappingRulesRO": {"type": "object", "properties": {"capacityUnit": {"type": "string", "description": "Unit of the capacity."}, "mapperRule": {"items": {"$ref": "#/definitions/MapperRuleRO"}, "type": "array"}, "mapping": {"enum": ["FIXED", "FLEXIBLE", "FLEXIBLE_GROUPED", "ALL"], "type": "string", "description": "Identifies namespace to capacity mapping."}, "noOfUnits": {"type": "integer", "description": "Number 1-80 in switching and broadband case", "format": "int32"}, "namingUnit": {"type": "string", "description": "Unit of namespace."}, "relationType": {"enum": ["ONE_TO_ONE", "ONE_TO_MANY"], "type": "string", "description": "Relation type"}}}, "VirtualTpeBWConstraintsRO": {"type": "object", "properties": {"isFre": {"default": false, "type": "boolean"}, "owningPoolAdapterType": {"type": "string"}, "unitsToConsume": {"type": "string"}, "id": {"type": "string"}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}}}, "MsgsLastErrorRO": {"type": "object", "properties": {"errorCode": {"type": "string", "description": "Error code for last error"}, "errorSubCode": {"type": "string", "description": "Sub error code for last error"}}}, "BgpAfiSafiRO": {"type": "object", "properties": {"grCapability": {"enum": ["enabled", "disabled"], "type": "string", "description": "GR capability"}, "name": {"enum": ["IPV4_UNICAST", "IPV4_LABELED_UNICAST"], "type": "string", "description": "Supported afi-safi names."}, "nextHopSelf": {"description": "This stores BGP Afi Safi NextHopSelf related information.", "$ref": "#/definitions/AfiSafiNextHopSelfRO"}, "activated": {"default": false, "type": "boolean", "description": "true if activated otherwise false"}, "rrEnabled": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}, "prefixList": {"description": "This stores BGP Afi Safi Prefix List related information.", "$ref": "#/definitions/AfiSafiPrefixListRO"}, "orf": {"description": "This stores BGP Afi Safi Orf related information.", "$ref": "#/definitions/AfiSafiOrfRO"}}}, "UserDataRO": {"type": "object"}, "AttributeMatchingRuleRO": {"type": "object", "properties": {"impact": {"enum": ["trafficImpactingWithNoMatch", "noTrafficImpactWithNoMatch"], "type": "string"}, "matchRequired": {"default": false, "type": "boolean"}, "matchingScope": {"enum": ["e2e", "local"], "type": "string"}}}, "BwRO": {"type": "object", "properties": {"available": {"type": "string", "description": "The available bandwidth left to be"}, "requested": {"type": "string", "description": "The requested bandwidth from the supporting layer, e.g. a dynamic tunnel requesting bandwidth from IP interface"}, "autoSize": {"enum": ["enable", "disable"], "type": "string", "description": "If true, the MPLS tunnel will be auto-sized by the NE"}, "used": {"type": "string", "description": "The current used bandwidth by all supported clients"}, "autoSizeLastResizeStartTime": {"type": "string", "description": "Start time of the last auto resize happened"}, "autoSizeIntervalMinutes": {"type": "string", "description": "The configured interval between auto-sizing attempts"}, "autoSizeLastResizeEndTime": {"type": "string", "description": "End time of the last auto resize happened"}, "maximum": {"type": "string", "description": "The maximum bandwidth configured for supported clients"}, "operational": {"type": "string", "description": "The current bandwidth being allocated from the supporting layer"}, "autoSizeLastResizeReason": {"type": "string", "description": "Reason of the last auto resize happened"}, "bookingFactor": {"type": "string", "description": "The booking factor of how much the bandwidth can be oversubscribed, e.g. on an IP interface"}, "minimum": {"type": "string", "description": "The minimum bandwidth configured for supported clients"}, "autoSizeLastResizeState": {"enum": ["success", "failure", "in_progress"], "type": "string", "description": "The state of the last auto-sizing attempt"}, "increment": {"type": "string", "description": "The configured bandwidth increment for auto-sizing of an MPLS tunnel"}, "autoSizeFailureAction": {"enum": ["none", "alarm", "mbb"], "type": "string", "description": "The action to be taken when auto-sizing fails: raise alarm, or make-before-break"}, "maxReservable": {"type": "string", "description": "The maximum reservable bandwidth allowed to be allocated to supported clients and it's calculated as bwBookingFactor x bwTotal"}, "profileName": {"type": "string", "description": "The name of the bandwidth profile associated with the dynamic tunnel endpoint"}, "total": {"type": "string", "description": "The total bandwidth allocated or allowed, e.g. the capacity of an IP interface"}, "autoSizingMode": {"enum": ["none", "cac", "utilization"], "type": "string", "description": "The configured auto-sizing mode"}, "unit": {"type": "string", "description": "The bandwidth unit that applies to all bandwidth attributes in this package. Available values: bps, kbps, mbps, gbps"}}}, "TpeDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/TpeRelationshipsRO"}, "attributes": {"$ref": "#/definitions/TpeAttributesRO"}, "type": {"enum": ["tpes"], "type": "string", "description": "The TPE resource type"}, "id": {"type": "string", "description": "The unique identifier for the TPE resource"}}}, "LinkAttributesRO": {"type": "object", "properties": {"userLabel": {"type": "string", "description": "The user label (not necessarily unique) of the topology to be created."}, "note": {"$ref": "#/definitions/NoteRO"}, "description": {"type": "string", "description": "Short description of the topology to be created."}, "tags": {"items": {"type": "string"}, "type": "array", "description": "Reference to 3rd Party Network involved in this topology, can be re-used for other purposes in future."}}}, "MappingInteractionRuleRO": {"type": "object", "properties": {"segmentBoundaryRule": {"enum": ["mustNotOverlap"], "type": "string", "description": "The default is mustNotOverlap."}}}, "OneToOneRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipDataRO"}}}, "ValidateParametersRO": {"type": "object", "properties": {"include": {"type": "string", "description": "The list of comma separated parameters (if any) to be validated against the expectation"}}}, "IndexesRO": {"type": "object"}, "TpeExpectationAttributesRO": {"type": "object", "properties": {"validateParameters": {"description": "Attribute containing the list of parameters (if any) to be validated against the expectation", "$ref": "#/definitions/ValidateParametersRO"}, "startDate": {"type": "string", "description": "The scheduled start date and time of the expectation, with RFC 3339 date-time format"}, "displayAlias": {"type": "string", "description": "The displayAlias of the TPE"}, "endDate": {"type": "string", "description": "The scheduled end date and time of the expectation, with RFC 3339 date-time format"}, "lifeCycleOwner": {"type": "string", "description": "Specifies who owns the lifecycle of a TPE"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array"}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "customerCode": {"type": "string", "description": "Customer code"}, "parentEBBWConstraintList": {"items": {"$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "type": "array", "description": "A list of Virtual TPEs as BW constraint."}, "cardMode": {"enum": ["maxReach", "maxCapacity", "undetermined"], "type": "string", "description": "Provides a means to differentiate different configurations of the card setup. For example, WLAi 400G OTR has several configuration options for 400G line service rate."}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "category": {"enum": ["CHANNEL_TX", "CHANNEL_RX", "OTN_ACCESS"], "type": "string"}, "resiliencyHandlingPackage": {"items": {"$ref": "#/definitions/ResiliencyHandlingPackageRO"}, "type": "array", "description": " triggers stitcher building resiliency view and NSI updating layerRate in resiliency view"}, "structureType": {"enum": ["PTP", "FTP", "CTP_SERVER_TO_CLIENT", "CTP_CLIENT_TO_SERVER", "CTP_CLIENT_TO_CLIENT", "CTP_SERVER_TO_DOMAIN"], "type": "string"}, "fgiSpecificationRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance.  E.g 'May_Comment:1.0.0:1234'"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the TPE"}, "parentEBFREBWConstraintList": {"items": {"$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "type": "array", "description": "A list of Virtual TPEs as FRE constraint."}, "userLabel": {"type": "string", "description": "The label given to the TPE by an user"}, "availableCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "dynamicFgiSpecificationRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of dynamic Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance.  E.g 'May_Comment:1.0.0:1234'"}, "roadmLine": {"type": "string"}, "layerTerminations": {"items": {"$ref": "#/definitions/LayerTerminationRO"}, "type": "array"}, "tpeGroupSpecs": {"items": {"type": "string"}, "type": "array", "description": "Names of TPEGSpec-s this TPE belongs to. FUTURE: enumerated value, part of TPEGSpec catalog."}, "resiliencyPackage": {"description": "The resiliency package contains attributes only appear in resiliency view.", "$ref": "#/definitions/TpeResiliencyPackageRO"}, "capabilitySpecification": {"description": "Defines a capability specification; normally for a TPE but can be utilized elsewhere in the future.", "$ref": "#/definitions/CapabilitySpecRO"}, "cardType": {"type": "string"}, "gneSubnetName": {"type": "string", "description": "The GNE Subnet Name of the TPE"}, "capacityReservations": {"items": {"$ref": "#/definitions/CapacityReservationRO"}, "type": "array"}, "plannedEndpointRole": {"enum": ["drop", "source"], "type": "string", "description": "The role that this end point plays for multicast FRE."}, "parentEBFREBWConstraint": {"description": "Virtual TPe reference for constraints update", "$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "active": {"default": false, "type": "boolean", "description": "An indicator to flag when a TPE is active, or simply a potential."}, "nativeName": {"type": "string", "description": "The name of the TPE that is native to the network element"}, "stackDirection": {"enum": ["client_to_server", "server_to_client", "bidirectional", "horizontal_unidirectional", "unknown"], "type": "string"}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "stitchingTriggers": {"$ref": "#/definitions/StitchingTriggersRO"}, "parentEBBWConstraint": {"description": "Virtual TPe reference for constraints update", "$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "tpeSpec": {"type": "string", "description": "Name of TPESpec describing this TPE instance. FUTURE: enumerated value, part of TPESpec catalog."}, "structureSubType": {"enum": ["osrpLink", "osrpLine", "regen"], "type": "string"}, "provisioningAttributes": {"description": "Indicates attributes that are used solely in the provisioning workflow. These attributes would not be reported on discovery, but aid in the provisioning workflow.", "$ref": "#/definitions/ProvisioningAttributesRO"}, "owningServerTpeListType": {"enum": ["uniDecomposed", "inverseMux", "none"], "type": "string", "description": "Owning server tpe list type."}}}, "CapacityReservationRO": {"type": "object", "properties": {"endTime": {"type": "string", "format": "date-time"}, "startTime": {"type": "string", "format": "date-time"}, "usedCapacity": {"description": "Resource to track total and used capacity per client type for a TPE", "$ref": "#/definitions/CapacityRO"}}}, "ResiliencyHandlingPackageRO": {"type": "object", "properties": {"direction": {"enum": ["Tx", "Rx"], "type": "string", "description": "the direction of the resiliency service"}, "edges": {"items": {"$ref": "#/definitions/ResiliencyHandlingEdgeRO"}, "type": "array", "description": "hold the pairs of ID of the CTPs from the physical view and its client PTP ID, for the eFRE endpoints."}, "layerRateStack": {"items": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string"}, "type": "array", "description": "ordered list of layerRates"}, "commonEdgeTpeId": {"type": "string", "description": "the ID of the common CTP in the physical view"}}}, "MetaDataRO": {"type": "object", "properties": {"absoluteTotal": {"type": "integer", "description": "The unfiltered total number of entities in the data", "format": "int64"}, "total": {"type": "integer", "description": "The total number of entities in the data", "format": "int64"}, "aggregations": {"items": {"$ref": "#/definitions/AggregationRO"}, "type": "array", "description": "The aggregated data based on a requested aggregation name and criteria"}}}, "AggregationRO": {"type": "object", "properties": {"buckets": {"items": {"$ref": "#/definitions/AggregationBucketRO"}, "type": "array", "description": "Aggregation results for different criteria"}, "name": {"type": "string", "description": "The name of the aggregation"}}}, "HopEntryRO": {"type": "object", "properties": {"hopType": {"enum": ["strict", "loose"], "type": "string", "description": "The type of this hop"}, "hopAddress": {"type": "string", "description": "The IP-data interface address for this hop"}}}, "PhotonicSpectrumPackageRO": {"type": "object", "properties": {"minFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the previous NMC."}, "signalBandWidth10DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 10 dBm less than peak power."}, "maxFreqDeadBand": {"type": "string", "description": "Upper dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "targetMinFreq": {"type": "string", "description": "Allows the automatic adjustment of the MINFREQ when any associated NMCTP are deleted. Default is MINFREQ (no target lower frequency)."}, "signalBandWidth3DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 3 dBm less than peak power."}, "minFreqDeadBand": {"type": "string", "description": "Lower dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "maxFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the next NMC."}, "frequency": {"type": "string", "description": "The central signal frequency."}, "freqResolution": {"type": "string", "description": "Indicates the recurring frequency step that is allowed to be configured on the transponder."}, "maxFreq": {"type": "string", "description": "The maximum signal frequency."}, "targetMaxFreq": {"type": "string", "description": "Allows the automatic adjustment of the MAXFREQ when any associated NMCTP are deleted. Default is MAXFREQ (no target upper frequency)."}, "wavelength": {"type": "string", "description": "The central signal wavelength."}, "wavelengthGrid ": {"type": "string", "description": "A hexadecimal number representing the vector of wavelengths that can be used by this SNC. Each bit set within the number indicates which wavelength is currently configured"}, "minFreq": {"type": "string", "description": "The minimum signal frequency."}}}, "SignalIndexRO": {"type": "object", "properties": {"index": {"type": "string", "description": "The signal index. Indicates a time slot."}, "wavelengthMax": {"type": "string", "description": "The maximum signal wavelength."}, "phy_index": {"type": "string", "description": "The physical index. Indicates a time slot."}, "width": {"type": "string", "description": "The signal width."}, "maxFreq": {"type": "string", "description": "The maximum signal frequency."}, "odu4_index": {"type": "string", "description": "The odu4 index. Indicates a time slot or tributary port number."}, "oduCn_index": {"type": "string", "description": "The oduCn index. Indicates a time slot or tributary port number."}, "channels": {"items": {"type": "string"}, "type": "array", "description": "Indicates the list of discrete channels utilized e.g. tributary slots on broadband cards. Plans are to utilize this generically for any list of discrete list of signals."}, "eth_index": {"type": "string", "description": "The eth index."}, "odu3_index": {"type": "string", "description": "The odu3 index. Indicates a time slot or tributary port number."}, "odu2_index": {"type": "string", "description": "The odu2 index. Indicates a time slot or tributary port number."}, "frequency": {"type": "string", "description": "The central signal frequency."}, "minFreq": {"type": "string", "description": "The minimum signal frequency."}, "ots_index": {"type": "string", "description": "The ots index. Indicates a time slot."}, "wavelength": {"type": "string", "description": "The signal wavelength (nm)."}, "mappingTable": {"items": {"$ref": "#/definitions/MappingTableEntryRO"}, "type": "array"}, "indexes": {"description": "Map of index attributes to represent more than one indexes per LT. Plan is to remove above odu2_index, odu4_index & oduCn_index signal attributes in future and use this one", "$ref": "#/definitions/IndexesRO"}, "wavelengthMin": {"type": "string", "description": "The minimum signal wavelength."}, "mgmtMcId": {"type": "string", "description": "The management identifier of the media channel"}}}, "TpeListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Referenced sub-resources"}, "meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "data": {"items": {"$ref": "#/definitions/TpeDataRO"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "RelationshipMetaDataRO": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean", "description": "Flags whether the included relationship object is partially populated or not"}}}, "TpePlannedDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/TpePlannedRelationshipsRO"}, "attributes": {"description": "These attributes are set by REST API to be used to validate the expectation.", "$ref": "#/definitions/TpePlannedAttributesRO"}, "type": {"enum": ["tpePlanned"], "type": "string", "description": "The tpe planned type"}, "id": {"type": "string", "description": "The unique identifier of the planned tpe"}}}, "LinksRO": {"type": "object", "properties": {"last": {"type": "string", "description": "The last page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "next": {"type": "string", "description": "The next page of data", "format": "uri"}, "current": {"type": "string", "description": "The current page of data", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "MplsFrrRO": {"type": "object", "properties": {"frrProtected": {"default": false, "type": "boolean", "description": "If true, the tunnel is protected by fast re-route (FRR) on the headend TX MPLS CTP"}, "profileName": {"type": "string", "description": "The FRR profile name on the headend TX MPLS CTP"}, "localProtection": {"description": "Holds MPLS FRR local protection attributes for TX MPLS CTP", "$ref": "#/definitions/MplsFrrLocalProtectionRO"}, "actualProtectionRoute": {"items": {"$ref": "#/definitions/MplsFrrProtectionRouteHopRO"}, "type": "array", "description": "Actual FRR protection route on the headend TX MPLS CTP"}}}, "BfdRO": {"type": "object", "properties": {"transmitInterval": {"type": "string", "description": "The interval between transmitting BFD messages"}, "configured": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "receiveInterval": {"type": "string", "description": "The interval between receiving BFD messages"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of BFD for this endpoint"}, "role": {"enum": ["passive", "active", "any"], "type": "string", "description": "The role of BFD for this endpoint"}, "profileName": {"type": "string", "description": "The profile name associated with this set of BFD attributes"}, "operationalState": {"enum": ["up", "down"], "type": "string", "description": "The operational state of BFD for this endpoint"}}}, "MplsFrrProtectionRouteHopRO": {"type": "object", "properties": {"ip": {"type": "string", "description": "IP interface address or node loopback IP address of the current hop"}, "bwProtected": {"default": false, "type": "boolean", "description": "True when the bandwidth is protected on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}, "protectionType": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "The FB protection type on this hop for this unidirectional tunnel"}}}, "LayeredAttributeRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "layer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "loopbackPackage": {"description": "This package stores loopback information", "$ref": "#/definitions/LoopbackPackageRO"}}}, "AttributePoliciesRO": {"type": "object", "properties": {"defaultAttributeSourcePolicy": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string", "description": "Source of attribute."}, "overrides": {"items": {"$ref": "#/definitions/AttributePolicyOverrideRO"}, "type": "array"}}}, "LayerTerminationRO": {"type": "object", "properties": {"adminWt": {"type": "number", "description": "Administrative weight which specifies the level of importance given to the OSRP link", "format": "double"}, "resiliencyTopologyPackage": {"description": "This package stores resiliency topology information.", "$ref": "#/definitions/ResiliencyTopologyPackageRO"}, "ttiPackage": {"description": "This package stores Tti information.", "$ref": "#/definitions/TtiPackageRO"}, "powerPackage": {"description": "This package stores power related information.", "$ref": "#/definitions/PowerPackageRO"}, "structureType": {"enum": ["dual_port", "dual_port_client_mapping", "exposed_lone_cp", "lone_adapter", "full_layer_optional_exposed_cp", "full_layer_optional_exposed_cp_and_tcp", "full_layer_fixed", "exposed_tcp", "concatenating_adapter", "concatenatable_exposed_tcp", "layer_termination_structure_type_unknown", "concatenatable_fixed", "exposed_TCP_and_CP"], "type": "string", "description": "Identifies the internal structure of the layer termination."}, "mplsPackage": {"description": "This package stores MPLS tunnel information.", "$ref": "#/definitions/MplsPackageRO"}, "layerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "boundaries": {"items": {"type": "string"}, "type": "array", "description": "Array of strings to track boundaries of Layer Termination"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of the layer termination."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "cfmPackages": {"items": {"$ref": "#/definitions/TpeCfmPackageRO"}, "type": "array", "description": "Holds data related to CFM services configured on an Ethernet service"}, "terminationState": {"enum": ["layer_termination_cannot_terminate", "layer_termination_not_terminated", "terminated_server_to_client_flow", "terminated_client_to_server_flow", "terminated_bidirectional", "layer_termination_permanently_terminated", "termination_state_unknown"], "type": "string", "description": "Whether and how this LayerTermination is terminated."}, "signalIndex": {"description": "Attribute representing a signal index (e.g. channel information, wavelength, etc).", "$ref": "#/definitions/SignalIndexRO"}, "controlPlanePackage": {"description": "The northbound model of Control Plane Package.", "$ref": "#/definitions/ControlPlanePackageRO"}, "latency": {"type": "number", "description": "Indicates the delay in microseconds.", "format": "double"}, "dynamicLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "layerProtocol": {"description": "A LayerProtocol instance is used for controlling termination and monitoring functionality. Also, it is used for controlling the adaptation (i.e. encapsulation and/or multiplexing of client signal), tandem connection monitoring, traffic conditioning and/or shaping functionality at an intermediate point along a connection.", "$ref": "#/definitions/LayerProtocolRO"}, "adjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackageRO"}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "trafficProfiles": {"items": {"$ref": "#/definitions/TrafficProfileRO"}, "type": "array", "description": "Traffic profile characteristics used to data-drive provisioning workflows."}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/BgpPackageRO"}, "active": {"default": false, "type": "boolean", "description": "Whether or not an inactive layer appears to be absent from the layer stack."}, "nativeName": {"type": "string", "description": "The name of the TPE that is native to the network element."}, "g8032Package": {"description": "This package stores information about the G8032 ring", "$ref": "#/definitions/G8032PackageRO"}, "retainedAdjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackageRO"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "serviceLabel": {"type": "string", "description": "The service-identifiying label"}, "manualAdjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackageRO"}, "operationalState": {"enum": ["up", "down", "link_flapping", "abnormal"], "type": "string", "description": "The operational (actual) state of the layer termination."}, "nativeLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "bundleIds": {"items": {"type": "string"}, "type": "array", "description": "List of up to 20 protection bundles to which the OSRP link belongs"}}}, "ContinuousAdapterRulesPackageRO": {"type": "object", "properties": {"lowerBoundaryRule": {"enum": ["mustSnapTo6_25GHzGrid_0_768", "mustSnapTo37_5GHzGrid_0_96", "snapTo6_25GHzGrid", "snapTo50GHzGrid", "snapTo100GHzGrid", "snapTo75GHzGrid"], "type": "string", "description": "Rule that the boundary of the range must follow. Can point to a specific algorithm to be executed."}, "centerFrequencyRule": {"enum": ["transponderResolution"], "type": "string", "description": "Rule that the centerFrequency of the range must follow. Can point to a specific algorithm to be executed."}, "segmentationRule": {"enum": ["oneSegementInGroup"], "type": "string", "description": "Whether the segment can be fragmented."}, "upperBoundaryRule": {"enum": ["mustSnapTo6_25GHzGrid_0_768", "mustSnapTo37_5GHzGrid_0_96", "snapTo6_25GHzGrid", "snapTo50GHzGrid", "snapTo100GHzGrid", "snapTo75GHzGrid"], "type": "string", "description": "Rule that the boundary of the range must follow. Can point to a specific algorithm to be executed."}, "widthRule": {"enum": ["mediaChannelWidthRule", "nmcWidthRule"], "type": "string", "description": "How wide the range can be. Can point to a specific algorithm to be executed."}}}, "MplsFbRO": {"type": "object", "properties": {"excludeIp": {"type": "string", "description": "IP address excluded from the FB tunnel path"}, "protectedTunnels": {"items": {"$ref": "#/definitions/MplsFbProtectedTunnelRO"}, "type": "array"}, "frrAutoCreated": {"default": false, "type": "boolean", "description": "The flag indicating whether the FB tunnel is auto created by FRR"}, "protectedInterface": {"type": "string", "description": "Name of the interface being protected by the FB tunnel"}}}, "StitchingTriggersRO": {"type": "object", "properties": {"partitioningFreConcreteIds": {"items": {"type": "string"}, "type": "array", "description": "List of physical FRE IDs for which stitcher should add a concrete relationship to on the stitched FRE"}, "protectingFreConcreteIds": {"items": {"type": "string"}, "type": "array", "description": "List of physical FRE IDs for which stitcher should add a concrete relationship to on the stitched resiliency FRE, where there is an EncapsulatedResiliency with a protectionScheme defined."}, "backpropagateTpeId": {"type": "string", "description": "Stitcher uses backpropagte TPE id while creating FRE in physical view"}}}, "TpeRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Referenced sub-resources"}, "data": {"$ref": "#/definitions/TpeDataRO"}}}, "MplsFrrLocalProtectionRO": {"type": "object", "properties": {"protectionFbName": {"type": "string", "description": "Protection FB tunnel name"}, "protectionAvailable": {"default": false, "type": "boolean", "description": "True when the protection is available on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_project_management.json b/tapi/resources/MCP_4.0.0_project_management.json
deleted file mode 100644
index 92dd73f13969950b820357e9b8826441c3e29d1f..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_project_management.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "v1", "description": "Project Management REST API", "title": "Project Management"}, "paths": {"/projectmanagement/api/v1/ProjectLists/{id}": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ProjectListV1"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}}, "parameters": [{"description": "The project list ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["ProjectListsV1"], "summary": "Get a project list by ID.", "consumes": [], "operationId": "Get"}}, "/projectmanagement/api/v1/PlanningProjects/{id}/commitOperation": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PlanningProject"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "NOTE: This operation will be removed in MCP 17.06.\r\nPlease use the commit operation instead to commit the project\r\n\r\nCommitting a project is an asynchronous operation that creates equipment intent. A project can only be committed\r\nwhen the state is InProcess. Query the project's status for the result of the commit and the intent ID, if successful.", "parameters": [{"description": "The planning project ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "deprecated": true, "tags": ["PlanningProjects"], "summary": "Commits the planning project.", "consumes": [], "operationId": "CommitOperation"}}, "/projectmanagement/api/v2/ProjectLists/{id}": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ProjectList"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}}, "parameters": [{"description": "The project list ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["ProjectLists"], "summary": "Get a project list by ID.", "consumes": [], "operationId": "Get"}}, "/projectmanagement/api/v1/PlanningProjects/commitOperation": {"post": {"responses": {"200": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "NOTE: This operation will be removed in MCP 17.06.\r\nPlease use the commit operation instead to commit the project\r\n\r\nCommitting a project is an asynchronous operation that creates equipment intent. A project can only be committed\r\nwhen the state is InProcess. Query the project's status for the result of the commit and the intent ID, if successful.", "parameters": [{"description": "The planning project name.", "required": false, "type": "string", "name": "name", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["PlanningProjects"], "summary": "Commits planning projects.", "consumes": [], "operationId": "CommitOperation"}}, "/projectmanagement/api/v1/PlanningProjects": {"post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/PlanningProject"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Create a new planning project. The initial state of the new project will always be New.", "parameters": [{"schema": {"$ref": "#/definitions/PlanningProject"}, "description": "The planning project.", "required": false, "name": "planningProject", "in": "body"}], "produces": ["application/json"], "tags": ["PlanningProjects"], "summary": "Create a planning project.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "Create"}, "delete": {"responses": {"202": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "204": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Deleting a project is only allowed if the project is not in the Committing state. Deleting a project\r\ndeletes all associated data, including intent.", "parameters": [{"description": "The planning project name.", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "If set to true, then validate if other projects depend on project being deleted.", "required": false, "type": "boolean", "name": "checkDependencies", "in": "query"}], "produces": ["application/json"], "tags": ["PlanningProjects"], "summary": "Deletes planning projects.", "consumes": [], "operationId": "Delete"}, "get": {"responses": {"200": {"description": "Success", "schema": {"uniqueItems": false, "items": {"$ref": "#/definitions/PlanningProject"}, "type": "array"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Can filter on the list of planning projects using one of the following:\r\n- name: filter on projects with specified name\r\n- projectType and/or projectState: filter on projects with the specified projectType and/or projectState\r\n- projects with completion date within specified dates", "parameters": [{"description": "The project name.", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "List of comma separated project states to filter on.", "required": false, "type": "string", "name": "projectState", "in": "query"}, {"description": "List of comma separated project types to filter on.", "required": false, "type": "string", "name": "projectType", "in": "query"}, {"description": "The RFC 3339 date specifying the beginning of the interval (e.g. 2017-10-02T10:00:00-05:00).", "default": "", "required": false, "in": "query", "type": "string", "name": "completionDateStart"}, {"description": "The RFC 3339 date specifying the end of the interval (e.g. 2017-10-02T10:00:00-05:00).", "default": "", "required": false, "in": "query", "type": "string", "name": "completionDateEnd"}], "produces": ["application/json"], "tags": ["PlanningProjects"], "summary": "Gets planning projects.", "consumes": [], "operationId": "GetAll"}}, "/projectmanagement/api/v1/ProjectLists/{projectListId}/addProject": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ProjectListV1"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "parameters": [{"description": "The project list ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectListId"}, {"schema": {"$ref": "#/definitions/AddProjectRequest"}, "description": "The identifier of the project to append to the list.", "required": false, "name": "request", "in": "body"}], "produces": ["application/json"], "tags": ["ProjectListsV1"], "summary": "Append a project to the list and validate the project list.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "AddProject"}}, "/projectmanagement/api/v2/ProjectLists/name/{projectListName}": {"delete": {"responses": {"404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "204": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Delete a project list by name. This operation will first remove all projects from the list.", "parameters": [{"description": "The project list name.", "required": true, "type": "string", "name": "projectListName", "in": "path"}], "produces": ["application/json"], "tags": ["ProjectLists"], "summary": "Delete a project list by name.", "consumes": [], "operationId": "Delete"}}, "/projectmanagement/api/v1/PlanningProjects/name/{projectName}": {"patch": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PlanningProject"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "204": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "parameters": [{"description": "Name of the project.", "required": true, "type": "string", "name": "projectName", "in": "path"}, {"schema": {"$ref": "#/definitions/PlanningProject"}, "description": "The planning project.", "required": false, "name": "planningProject", "in": "body"}], "produces": ["application/json"], "tags": ["PlanningProjects"], "summary": "Partially updates the project.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "PartiallyUpdatesUsingPatch"}}, "/projectmanagement/api/v1/PlanningProjects/cancelOperation": {"post": {"responses": {"200": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "NOTE: This operation will be removed in MCP 17.06.\r\nPlease use the cancel operation instead to cancel the project\r\n\r\nCancels a project asynchronously. Query the project status to get the result of the commit. A planning project can only be canceled\r\nwhen the state is Committed. In the former state, the project will go directly to When a project has been committed,\r\na request to Delete the Intent is issued (Canceling) and if successful, the project state will be Canceled.\r\nIf the intent Delete cannot be completed, the project state will be either CancelFailed or Error.\r\n\r\nIf the project is New, Error or InProcess, use the Planning Project Delete operation instead.", "parameters": [{"description": "The planning project name.", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "Optional parameter. If set to true provisioned equipment will be deleted. False by default.", "required": false, "type": "boolean", "name": "ignoreEquipmentProvisioning", "in": "query"}, {"description": "If set to true, then validate if other projects depend on project being cancelled.", "required": false, "type": "boolean", "name": "checkDependencies", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["PlanningProjects"], "summary": "Cancels planning project.", "consumes": [], "operationId": "CancelOperation"}}, "/projectmanagement/api/v2/ProjectLists/{projectListId}": {"delete": {"responses": {"404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "204": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Delete a project list by ID. This operation will first remove all projects from the list.", "parameters": [{"description": "The project list ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectListId"}], "produces": ["application/json"], "tags": ["ProjectLists"], "summary": "Delete a project list by ID.", "consumes": [], "operationId": "Delete"}}, "/projectmanagement/api/v1/PlanningProjects/cancel": {"post": {"responses": {"200": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Cancels a project asynchronously. Query the project status to get the result of the commit. A planning project can only be canceled\r\nwhen the state is Committed. In the former state, the project will go directly to When a project has been committed,\r\na request to Delete the Intent is issued (Canceling) and if successful, the project state will be Canceled.\r\nIf the intent Delete cannot be completed, the project state will be either CancelFailed or Error.\r\n\r\nIf the project is New, Error or InProcess, use the Planning Project Delete operation instead.", "parameters": [{"description": "The planning project name.", "required": false, "type": "string", "name": "name", "in": "query"}, {"description": "Optional parameter. If set to true provisioned equipment will be deleted. False by default.", "required": false, "type": "boolean", "name": "ignoreEquipmentProvisioning", "in": "query"}, {"description": "If set to true, then validate if other projects depend on project being cancelled.", "required": false, "type": "boolean", "name": "checkDependencies", "in": "query"}], "produces": ["application/json"], "tags": ["PlanningProjects"], "summary": "Cancels planning project.", "consumes": [], "operationId": "Cancel"}}, "/projectmanagement/api/v1/PlanningProjects/{id}/cancel": {"post": {"responses": {"200": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Cancels a project asynchronously. Query the project status to get the result of the commit. A planning project can only be canceled\r\nwhen the state is Committed. In the former state, the project will go directly to When a project has been committed,\r\na request to Delete the Intent is issued (Canceling) and if successful, the project state will be Canceled.\r\nIf the intent Delete cannot be completed, the project state will be either CancelFailed or Error.\r\n\r\nIf the project is New, Error or InProcess, use the Planning Project Delete operation instead.", "parameters": [{"description": "The planning project ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}, {"description": "Optional parameter. If set to true provisioned equipment will be deleted. False by default.", "required": false, "type": "boolean", "name": "ignoreEquipmentProvisioning", "in": "query"}, {"description": "If set to true, then validate if other projects depend on project being cancelled.", "required": false, "type": "boolean", "name": "checkDependencies", "in": "query"}], "produces": ["application/json"], "tags": ["PlanningProjects"], "summary": "Cancels a planning project.", "consumes": [], "operationId": "Cancel"}}, "/projectmanagement/api/v1/PlanningProjects/commit": {"post": {"responses": {"200": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Committing a project is an asynchronous operation that creates equipment intent. A project can only be committed\r\nwhen the state is InProcess. Query the project's status for the result of the commit and the intent ID, if successful.", "parameters": [{"description": "The planning project name.", "required": false, "type": "string", "name": "name", "in": "query"}], "produces": ["application/json"], "tags": ["PlanningProjects"], "summary": "Commits planning projects.", "consumes": [], "operationId": "Commit"}}, "/projectmanagement/api/v1/PlanningProjects/{id}/commit": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PlanningProject"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Committing a project is an asynchronous operation that creates equipment intent. A project can only be committed\r\nwhen the state is InProcess. Query the project's status for the result of the commit and the intent ID, if successful.", "parameters": [{"description": "The planning project ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["PlanningProjects"], "summary": "Commits the planning project.", "consumes": [], "operationId": "Commit"}}, "/projectmanagement/api/v1/ProjectLists/name/{projectListName}": {"delete": {"responses": {"404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "204": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Delete a project list by name. This operation will first remove all projects from the list.", "parameters": [{"description": "The project list name.", "required": true, "type": "string", "name": "projectListName", "in": "path"}], "produces": ["application/json"], "tags": ["ProjectListsV1"], "summary": "Delete a project list by name.", "consumes": [], "operationId": "Delete"}}, "/projectmanagement/api/v2/ProjectLists/name/{projectListName}/addProject": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ProjectList"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "This REST API is intended to be used during pre load to validate project dependencies. Please note that conflicts do not get resolved currently.\r\nThe following assumptions are made:\r\n* A Project can only be added to one Project List\r\n* Each time a project is added, it will be validated against the list\r\n* A project cannot be removed from a list (the list must be deleted)\r\n* Equipment projects must be created against a list to account for planned equipment or nodes in the project list.", "parameters": [{"description": "The project list name.", "required": true, "type": "string", "name": "projectListName", "in": "path"}, {"schema": {"$ref": "#/definitions/AddProjectRequest"}, "description": "The identifier of the project to append to the list.", "required": false, "name": "request", "in": "body"}], "produces": ["application/json"], "tags": ["ProjectLists"], "summary": "Append a project to the list and validate the project list.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "AddProject"}}, "/projectmanagement/api/v1/ProjectLists": {"post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/ProjectListV1"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/ErrorList"}}}, "description": "Create a project list. Project lists can only be created empty. Use the addProject REST API to add projects to the project list.\r\nThe initial state of the new project list will always be New.", "parameters": [{"schema": {"$ref": "#/definitions/ProjectListV1"}, "description": "Project list to create.", "required": false, "name": "projectList", "in": "body"}], "produces": ["application/json"], "tags": ["ProjectListsV1"], "summary": "Create a project list.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "Create"}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ProjectListV1"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}}, "parameters": [{"required": false, "type": "string", "name": "name", "in": "query"}], "produces": ["application/json"], "tags": ["ProjectListsV1"], "summary": "Get all project lists.", "consumes": [], "operationId": "GetAll"}}, "/projectmanagement/api/v1/ProjectLists/{projectListId}": {"delete": {"responses": {"404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "204": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Delete a project list by ID. This operation will first remove all projects from the list.", "parameters": [{"description": "The project list ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectListId"}], "produces": ["application/json"], "tags": ["ProjectListsV1"], "summary": "Delete a project list by ID.", "consumes": [], "operationId": "Delete"}}, "/projectmanagement/api/v2/ProjectLists/{projectListId}/addProject": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ProjectList"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "This REST API is intended to be used during pre load to validate project dependencies. Please note that conflicts do not get resolved currently.\r\nThe following assumptions are made:\r\n* A Project can only be added to one Project List\r\n* Each time a project is added, it will be validated against the list\r\n* A project cannot be removed from a list (the list must be deleted)\r\n* Equipment projects must be created against a list to account for planned equipment or nodes in the project list.", "parameters": [{"description": "The project list ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "projectListId"}, {"schema": {"$ref": "#/definitions/AddProjectRequest"}, "description": "The identifier of the project to append to the list.", "required": false, "name": "request", "in": "body"}], "produces": ["application/json"], "tags": ["ProjectLists"], "summary": "Append a project to the list and validate the project list.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "AddProject"}}, "/projectmanagement/api/v1/PlanningProjects/{id}": {"put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PlanningProject"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "parameters": [{"description": "The planning project ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}, {"schema": {"$ref": "#/definitions/PlanningProject"}, "description": "The planning project.", "required": false, "name": "planningProject", "in": "body"}], "produces": ["application/json"], "tags": ["PlanningProjects"], "summary": "Updates the specified planning project.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "Update"}, "delete": {"responses": {"202": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "204": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "Deleting a project is only allowed if the project is not in the Committing state. Deleting a project\r\ndeletes all associated data, including intent.", "parameters": [{"description": "The planning project ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}, {"description": "If set to true, then validate if other projects depend on project being deleted.", "required": false, "type": "boolean", "name": "checkDependencies", "in": "query"}], "produces": ["application/json"], "tags": ["PlanningProjects"], "summary": "Deletes a planning project.", "consumes": [], "operationId": "Delete"}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PlanningProject"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}}, "parameters": [{"description": "The planning project ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["PlanningProjects"], "summary": "Get a planning project by ID.", "consumes": [], "operationId": "GetByGuid"}}, "/projectmanagement/api/v2/ProjectLists": {"post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/ProjectList"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/ErrorList"}}}, "description": "Create a project list. Project lists can only be created empty. Use the addProject REST API to add projects to the project list.\r\nThe initial state of the new project list will always be New.", "parameters": [{"schema": {"$ref": "#/definitions/ProjectList"}, "description": "Project list to create.", "required": false, "name": "projectList", "in": "body"}], "produces": ["application/json"], "tags": ["ProjectLists"], "summary": "Create a project list.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "Create"}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ProjectList"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}}, "parameters": [{"required": false, "type": "string", "name": "name", "in": "query"}], "produces": ["application/json"], "tags": ["ProjectLists"], "summary": "Get all project lists.", "consumes": [], "operationId": "GetAll"}}, "/projectmanagement/api/v1/ProjectLists/name/{projectListName}/addProject": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ProjectListV1"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "parameters": [{"description": "The project list name.", "required": true, "type": "string", "name": "projectListName", "in": "path"}, {"schema": {"$ref": "#/definitions/AddProjectRequest"}, "description": "The identifier of the project to append to the list.", "required": false, "name": "request", "in": "body"}], "produces": ["application/json"], "tags": ["ProjectListsV1"], "summary": "Append a project to the list and validate the project list.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "AddProject"}}, "/projectmanagement/api/v1/PlanningProjects/nameChangeOperation": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PlanningProject"}}, "404": {"description": "Not Found", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "NOTE: This operation will be removed in MCP 17.06.\r\nPlease use the PATCH operation instead to modify the name", "parameters": [{"description": "The planning project name.", "required": false, "type": "string", "name": "name", "in": "query"}, {"schema": {"type": "string"}, "description": "The new name of the planning project.", "required": false, "name": "newname", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["PlanningProjects"], "summary": "Changes the name of a planning project.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "NameChange"}}, "/projectmanagement/api/v1/PlanningProjects/{id}/cancelOperation": {"post": {"responses": {"200": {"description": "Success", "schema": {"type": "integer", "format": "int32"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "description": "NOTE: This operation will be removed in MCP 17.06.\r\nPlease use the cancel operation instead to cancel the project\r\n\r\nCancels a project asynchronously. Query the project status to get the result of the commit. A planning project can only be canceled\r\nwhen the state is Committed. In the former state, the project will go directly to When a project has been committed,\r\na request to Delete the Intent is issued (Canceling) and if successful, the project state will be Canceled.\r\nIf the intent Delete cannot be completed, the project state will be either CancelFailed or Error.\r\n\r\nIf the project is New, Error or InProcess, use the Planning Project Delete operation instead.", "parameters": [{"description": "The planning project ID.", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}, {"description": "Optional parameter. If set to true provisioned equipment will be deleted. False by default.", "required": false, "type": "boolean", "name": "ignoreEquipmentProvisioning", "in": "query"}, {"description": "If set to true, then validate if other projects depend on project being cancelled.", "required": false, "type": "boolean", "name": "checkDependencies", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["PlanningProjects"], "summary": "Cancels a planning project.", "consumes": [], "operationId": "CancelOperation"}}}, "swagger": "2.0", "definitions": {"PlanningProject": {"required": ["Name", "CompletionDate"], "type": "object", "properties": {"CompletionDate": {"type": "string", "format": "date-time"}, "ProjectListId": {"type": "string", "format": "uuid"}, "ProjectType": {"enum": ["unknown", "equipment", "fiberRoute", "networkChange", "empty"], "type": "string"}, "Description": {"type": "string"}, "IntentId": {"type": "string"}, "State": {"enum": ["New", "InProcess", "Validating", "Validated", "Committing", "Committed", "Cancelling", "NotInUse", "CancelFailed", "Error", "ToDelete"], "type": "string"}, "ExpirationDate": {"type": "string", "format": "date-time"}, "Id": {"type": "string", "format": "uuid"}, "StatusMessage": {"type": "string"}, "Name": {"pattern": "[a-zA-Z0-9]+", "type": "string", "maxLength": 16}}}, "ErrorSource": {"type": "object", "properties": {"parameter": {"type": "string"}, "pointer": {"type": "string"}}}, "ProjectListFailure": {"type": "object", "properties": {"project": {"$ref": "#/definitions/Identifier"}, "failureReasons": {"uniqueItems": false, "items": {"type": "string"}, "type": "array"}}}, "ProjectListV1": {"type": "object", "properties": {"name": {"type": "string"}, "committedDate": {"type": "string", "format": "date-time"}, "failureReasons": {"additionalProperties": {"type": "string"}, "type": "object"}, "syncState": {"enum": ["New", "Synchronizing", "LastProjectAddSynchronized", "LastProjectAddFailed"], "type": "string"}, "state": {"enum": ["New", "Valid", "Invalid", "PartiallyValid", "Committing", "Committed", "PartialCommitted", "Error"], "type": "string"}, "validatedDate": {"type": "string", "format": "date-time"}, "id": {"type": "string", "format": "uuid"}, "projects": {"uniqueItems": false, "items": {"type": "string", "format": "uuid"}, "type": "array"}}}, "ErrorList": {"type": "object", "properties": {"errors": {"uniqueItems": false, "items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "ProjectList": {"type": "object", "properties": {"name": {"type": "string"}, "committedDate": {"type": "string", "format": "date-time"}, "failureReasons": {"uniqueItems": false, "items": {"$ref": "#/definitions/ProjectListFailure"}, "type": "array"}, "syncState": {"enum": ["New", "Synchronizing", "LastProjectAddSynchronized", "LastProjectAddFailed"], "type": "string"}, "state": {"enum": ["New", "Valid", "Invalid", "PartiallyValid", "Committing", "Committed", "PartialCommitted", "Error"], "type": "string"}, "validatedDate": {"type": "string", "format": "date-time"}, "id": {"type": "string", "format": "uuid"}, "projects": {"uniqueItems": false, "items": {"$ref": "#/definitions/Identifier"}, "type": "array"}}}, "Error": {"type": "object", "properties": {"source": {"$ref": "#/definitions/ErrorSource"}, "code": {"type": "string"}, "detail": {"type": "string"}, "title": {"type": "string"}}}, "AddProjectRequest": {"type": "object", "properties": {"projectId": {"type": "string", "format": "uuid"}, "projectName": {"type": "string"}}}, "Identifier": {"type": "object", "properties": {"id": {"type": "string"}, "name": {"type": "string"}}}}}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_reporting.json b/tapi/resources/MCP_4.0.0_reporting.json
deleted file mode 100644
index 1a6c18629be3c0110287f35d294e99dc0468a06a..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_reporting.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Generate different reports", "title": "Reporting"}, "paths": {"/reporting/api/v1/report/reportinfo/{resourceId}": {"get": {"responses": {"200": {"description": "Report's meta data information fetched successfully.", "schema": {"$ref": "#/definitions/ReportMetaDataModel"}}, "404": {"description": "No record found for resource id", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of report meta data information failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API fetch report's meta data information against the user provided resource id.", "parameters": [{"description": "Resource id is required for fetching a specific report meta data information", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["000 - reportingapiv1report"], "summary": "Fetch report's meta data information against a resource id", "consumes": ["application/json"], "operationId": "getReportDetailsOnResourceId"}}, "/reporting/api/v1/report": {"post": {"responses": {"201": {"description": "On demand report generated successfully", "schema": {"$ref": "#/definitions/ReportMetaDataModel"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/ReportMetaDataModel"}}, "500": {"description": "Report generation failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API generates an on demand report of specific report type provided by user.\n<p>Prerequisite: The following attributes should be specified in the post request:<ul><li>reportType - Type of report user wants to generate </ul>", "parameters": [{"schema": {"$ref": "#/definitions/OnDemandReportRequestModel"}, "description": "Provide report type to generate a report.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["000 - reportingapiv1report"], "summary": "API to generate an on demand report", "consumes": ["application/json"], "operationId": "getOnDemandReport"}}, "/reporting/api/v2/report/onetouch": {"post": {"responses": {"200": {"description": "Successfully generated and fetched report data associated with resource id. Encoded as zip octet-stream.", "schema": {"$ref": "#/definitions/Response"}}, "404": {"description": "No record found for resource id", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of report data failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API generates and fetches report of specific type and format provided by user in a single operation. The data is encoded as zip octet-stream.\n<p>Prerequisite: The following attributes should be specified in the post request:<ul><li>reportFormat - Format of report user wants to generate. Values can be JSON or CSV <li>reportType - Type of report user wants to generate <li>utcOffset - Timezone offset e.g. 'GMT-5:00'(for Eastern Time) or 'GMT+5:30'(for IST). \nThis offset will be used in report's meta-information to show times in the provided timezone. Default value is <i>GMT+0:00</i></ul>", "parameters": [{"schema": {"$ref": "#/definitions/OneTouchReportRequestPayloadV2"}, "description": "Provide report format and type to generate a report.", "required": true, "name": "body", "in": "body"}], "produces": ["application/octet-stream"], "tags": ["000 - reportingapiv2report"], "summary": "API to generate and return report in one-touch.", "consumes": ["application/vnd.api+json"], "operationId": "getOneTouchReport"}}, "/reporting/api/v2/report/reportinfo/{resourceId}": {"get": {"responses": {"200": {"description": "Report's meta data information fetched successfully.", "schema": {"$ref": "#/definitions/ReportMetaDataResponseModelV2"}}, "500": {"description": "Retrieval of report meta data information failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API fetch report's meta data information against the user provided resource id.", "parameters": [{"description": "Resource id is required for fetching a specific report meta data information", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2report"], "summary": "Fetch report's meta data information against a resource id", "consumes": ["application/vnd.api+json"], "operationId": "getReportDetailsOnResourceId"}}, "/reporting/api/v1/schedule/{resourceId}": {"get": {"responses": {"200": {"description": "Schedule fetched successfully for a resource id", "schema": {"$ref": "#/definitions/QueryReportScheduleROV1"}}, "500": {"description": "Retrieval of report schedule failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API is used to fetch a schedule associated with a report on resource id basis.", "parameters": [{"description": "Resource id is required for fetching a report's schedule associated with resource id", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["000 - reportingapiv1schedule"], "summary": "Fetch a specific schedule associated with resource id.", "operationId": "getReportScheduleOnResourceId"}}, "/reporting/api/v2/report/{resourceId}": {"get": {"responses": {"200": {"description": "Successfully fetched report data associated with resource id. Encoded as zip octet-stream.", "schema": {"$ref": "#/definitions/Response"}}, "404": {"description": "No record found for resource id", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of report data failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API is used to fetch report data using resource id which is uniquely associated with a report.", "parameters": [{"description": "Resource id is required for fetching a specific report data.", "required": true, "type": "string", "name": "resourceId", "in": "path"}, {"description": "Report format i.e. JSON or CSV.", "default": "CSV", "required": true, "in": "query", "type": "string", "name": "reportFormat"}, {"description": "<p>Timezone offset e.g. 'GMT-5:00'(for Eastern Time) or 'GMT+5:30'(for IST).<p> This offset will be used in report's meta-information to show times in the provided timezone.", "default": "GMT+0:00", "required": false, "in": "query", "type": "string", "name": "utcOffset"}], "produces": ["application/octet-stream"], "tags": ["000 - reportingapiv2report"], "summary": "Fetch report data for a report which is associated with user provided resource id. The data is encoded as zip octet-stream.", "consumes": ["application/vnd.api+json"], "operationId": "getReportForResourceId"}}, "/reporting/api/v2/report/reportsinfo": {"get": {"responses": {"200": {"description": "Report on resource id", "schema": {"$ref": "#/definitions/OnDemandReportMetaDataResponseModelV2"}}, "500": {"description": "Retrieval of reports info failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API fetch report's meta data for multiple reports on the basis of parameter values provided by user.", "parameters": [{"description": "Start date to query reports meta data. Format required: [yyyy-MM-dd'T'HH:mm:ss.SSS'Z]", "required": false, "type": "string", "name": "fromDate", "in": "query"}, {"description": "End date to query reports meta data. Format required: [yyyy-MM-dd'T'HH:mm:ss.SSS'Z]", "required": false, "type": "string", "name": "toDate", "in": "query"}, {"description": "Type of report user interested to see meta data for.", "required": false, "type": "string", "name": "reportType", "in": "query"}, {"description": "Status of report, used for filtering report meta data.Valid values are : Requested,Processing,Success,Failed", "required": false, "type": "string", "name": "reportStatus", "in": "query"}, {"description": "Report generation mode, used for filtering report meta data.Valid values are : On demand,Scheduled", "required": false, "type": "string", "name": "reportGenerationMode", "in": "query"}, {"description": "Sort output data.Valid values are : reportGenerationMode,-reportGenerationMode,reportStatus,-reportStatus,reportType,-reportType,reportGenerationTime,-reportGenerationTime", "required": false, "type": "string", "name": "sortBy", "in": "query"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2report"], "summary": "Fetch meta data information for all/specific report type.", "consumes": ["application/vnd.api+json"], "operationId": "getReportsMetaInfo"}}, "/reporting/api/v2/report/delete/reporttype/{reportType}": {"delete": {"responses": {"404": {"description": "No record found for report type", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "User created report type deleted successfully"}, "500": {"description": "Deletion of report type failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API helps to delete a specific user created report type.", "parameters": [{"description": "Report Type is required to delete a specific report type", "required": true, "type": "string", "name": "reportType", "in": "path"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2report"], "summary": "Delete a report type.", "consumes": ["application/vnd.api+json"], "operationId": "deleteReportType"}}, "/reporting/api/v2/report/insertCircleTypeForLldpLinks": {"post": {"responses": {"201": {"description": "Addition/updation done successfully"}, "200": {"description": "successful operation", "schema": {"type": "string"}}, "500": {"description": "Addition/Updation failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API helps to Add/Update circle, type, ring type corresponding to a Ring Name defined in  LLDP Links Report.", "parameters": [{"required": true, "type": "file", "name": "uploadPropertyFile", "in": "formData"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2report"], "summary": "Add/Update circle, type, ring type corresponding to a Ring Name.", "consumes": ["multipart/form-data"], "operationId": "insertCircleTypeForRingName"}}, "/reporting/api/v2/report": {"post": {"responses": {"201": {"description": "On demand report generated successfully", "schema": {"$ref": "#/definitions/OnDemandReportMetaDataResponseModelV2"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/OnDemandReportMetaDataResponseModelV2"}}, "500": {"description": "Report generation failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API generates an on demand report of specific report type provided by user.\n<p>Prerequisite: The following attributes should be specified in the post request:<ul><li>reportType - Type of report user wants to generate </ul>", "parameters": [{"schema": {"$ref": "#/definitions/OnDemandReportRequestPayloadV2"}, "description": "Provide report type to generate a report.", "required": true, "name": "body", "in": "body"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2report"], "summary": "API to generate an on demand report", "consumes": ["application/vnd.api+json"], "operationId": "getOnDemandReport"}}, "/reporting/api/v1/report/delete/{resourceId}": {"delete": {"responses": {"204": {"description": "Report deleted successfully for user provided resource id"}, "500": {"description": "Deletion of report failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API helps to delete a specific report, which is associated with resource id provided by user.", "parameters": [{"description": "Resource id is required to delete a specific report", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["000 - reportingapiv1report"], "summary": "Delete a report associated with resource id.", "consumes": ["application/json"], "operationId": "deleteReportForResourceId"}}, "/reporting/api/v1/schedule": {"get": {"responses": {"200": {"description": "Report's schedule fetched successfully for a report type", "schema": {"items": {"$ref": "#/definitions/QueryAllReportsScheduleROV1"}, "type": "array"}}, "500": {"description": "Retrieval of report schedules failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API is used to fetch schedules associated with a single or multiple report types. Report types will be provided in comma separated values", "parameters": [{"description": "Report type is required to fetch all schedules associated with report type", "required": false, "type": "string", "name": "reportType", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["000 - reportingapiv1schedule"], "summary": "Fetch all schedules for a single/list of report types.", "operationId": "getReportScheduleForReportType"}}, "/reporting/api/v2/report/supported/reporttype": {"get": {"responses": {"200": {"description": "List of supported report types", "schema": {"$ref": "#/definitions/SupportedReportTypesV2"}}, "500": {"description": "Retrieval of supported report types failed.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API is used to fetch list of all report types supported by reporting feature", "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2report"], "summary": "Fetch list of report types supported.", "consumes": ["application/vnd.api+json"], "operationId": "getAllSupportedReportTypes"}}, "/reporting/api/v2/schedule/create": {"post": {"responses": {"201": {"description": "Report's schedule successfully created", "schema": {"$ref": "#/definitions/QueryReportsScheduleROV2"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/QueryReportsScheduleROV2"}}, "500": {"description": "Creation of report's schedule failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API is used to create a new report schedule for a report type.\n<p>Prerequisite: The following attributes should be specified in the post request:<ul><li>cronExpression - cron expression  Example: \"00 00 19 23 May ? 2018\" (at 19:00:00 at 23rd day at May month at 2018 year)<li>cronExpressionFormat - cron expression format i.e. QUARTZ or UNIX<li>reportType - Type of report user wants to create schedule for </ul>", "parameters": [{"schema": {"$ref": "#/definitions/ReportsScheduleRequestPayloadV2"}, "description": "JSON request to create a report schedule.", "required": true, "name": "body", "in": "body"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2schedule"], "summary": "Create a new schedule for a report type.", "consumes": ["application/vnd.api+json"], "operationId": "createReportSchedule"}}, "/reporting/api/v2/schedule": {"get": {"responses": {"200": {"description": "Report's schedule fetched successfully for a report type", "schema": {"$ref": "#/definitions/QueryAllReportsScheduleROV2"}}, "500": {"description": "Retrieval of report schedules failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API is used to fetch schedules associated with a single or multiple report types. Report types will be provided in comma separated values", "parameters": [{"description": "Report type is required to fetch all schedules associated with report type", "required": false, "type": "string", "name": "reportType", "in": "query"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2schedule"], "summary": "Fetch all schedules for report types.", "consumes": ["application/vnd.api+json"], "operationId": "getReportScheduleForReportType"}}, "/reporting/api/v2/schedule/{resourceId}": {"get": {"responses": {"200": {"description": "Schedule fetched successfully for a resource id", "schema": {"$ref": "#/definitions/QueryReportsScheduleROV2"}}, "404": {"description": "No record found for resource id", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of report schedule failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API is used to fetch a schedule associated with a report on resource id basis.", "parameters": [{"description": "Resource id is required for fetching a report's schedule associated with resource id", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2schedule"], "summary": "Fetch a specific schedule associated with resource id.", "consumes": ["application/vnd.api+json"], "operationId": "getReportScheduleOnResourceId"}}, "/reporting/api/v2/report/createreporttype": {"post": {"responses": {"201": {"description": "On demand report generated successfully"}, "200": {"description": "successful operation", "schema": {"type": "string"}}, "500": {"description": "Report generation failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Type of report user interested to create.", "required": true, "type": "string", "name": "reportType", "in": "query"}, {"description": "Description of new report type.", "required": true, "type": "string", "name": "Description", "in": "query"}, {"required": true, "type": "file", "name": "uploadWorkflow", "in": "formData"}, {"required": true, "type": "file", "name": "joltFile", "in": "formData"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2report"], "summary": "creates user-defined custom report-type", "consumes": ["multipart/form-data"], "operationId": "uploadFile"}}, "/reporting/api/v2/schedule/delete/{resourceId}": {"delete": {"responses": {"404": {"description": "No record found for resource id.", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Report's schedule deleted successfully for resource id.", "schema": {"$ref": "#/definitions/Response"}}, "500": {"description": "Deletion of report's schedule failed.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API is used to delete a report's schedule uniquely assigned to a resource id.", "parameters": [{"description": "Resource id used for deleting a specific report's schedule", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2schedule"], "summary": "Delete a specific report's schedule associated with a resource id.", "consumes": ["application/vnd.api+json"], "operationId": "deleteReportScheduleForResourceId"}}, "/reporting/api/v1/schedule/create": {"post": {"responses": {"201": {"description": "Report's schedule successfully created", "schema": {"$ref": "#/definitions/QueryReportScheduleROV1"}}, "200": {"description": "successful operation", "schema": {"$ref": "#/definitions/QueryReportScheduleROV1"}}, "500": {"description": "Creation of report's schedule failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This QPI is used to create a new report schedule for a report type.\n<p>Prerequiste: The following attributes should be specified in the post request:<ul><li>startTime - Start time represents start time of report generation. Required format [yyyy-MM-ddTHH:mm:ss.SSSZ] <li>reportType - Type of report user wants to create schedule for </ul>", "parameters": [{"schema": {"$ref": "#/definitions/CreateAndUpdateReportScheduleModelV1"}, "description": "Request to create a report schedule provided with userData.Date format [yyyy-MM-ddTHH:mm:ss.SSSZ]", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["000 - reportingapiv1schedule"], "summary": "Create a new schedule for a report type.", "consumes": ["application/json"], "operationId": "createReportSchedule"}}, "/reporting/api/v2/report/delete": {"delete": {"responses": {"204": {"description": "Reports deleted successfully"}, "500": {"description": "Reports deletion failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API deletes reports as per parameter values provided by user.", "parameters": [{"description": "Start date required for deleting reports starting from From_Date. Format required: [yyyy-MM-dd'T'HH:mm:ss.SSS'Z]", "required": true, "type": "string", "name": "fromDate", "in": "query"}, {"description": "End date required for deleting reports up to end date. Format required: [yyyy-MM-dd'T'HH:mm:ss.SSS'Z]", "required": true, "type": "string", "name": "toDate", "in": "query"}, {"description": "Type of report user interested to delete.", "required": true, "type": "string", "name": "reportType", "in": "query"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2report"], "summary": "Delete reports on date range and report type basis.", "consumes": ["application/vnd.api+json"], "operationId": "deleteReports"}}, "/reporting/api/v1/schedule/delete/{resourceId}": {"delete": {"responses": {"204": {"description": "Report's schedule deleted successfully for resource id", "schema": {"$ref": "#/definitions/Response"}}, "500": {"description": "Deletion of report's schedule failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API is used to delete a report's schedule uniquely assigned to a resource id.", "parameters": [{"description": "Resource id used for deleting a specific report's schedule", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "produces": ["application/json"], "deprecated": true, "tags": ["000 - reportingapiv1schedule"], "summary": "Delete a specific report's schedule associated with resource id.", "operationId": "deleteReportScheduleForResourceId"}}, "/reporting/api/v2/report/delete/{resourceId}": {"delete": {"responses": {"404": {"description": "No record found for resource id", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Report deleted successfully for user provided resource id"}, "500": {"description": "Deletion of report failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API helps to delete a specific report, which is associated with resource id provided by user.", "parameters": [{"description": "Resource id is required to delete a specific report", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "produces": ["application/vnd.api+json"], "tags": ["000 - reportingapiv2report"], "summary": "Delete a report associated with resource id.", "consumes": ["application/vnd.api+json"], "operationId": "deleteReportForResourceId"}}, "/reporting/api/v1/report/reportsinfo": {"get": {"responses": {"200": {"description": "Report on resource id", "schema": {"items": {"$ref": "#/definitions/AllReportMetaDataModelRO"}, "type": "array"}}, "500": {"description": "Retrieval of reports info failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API fetch report's meta data for mutiple reports on the basis of parameter values provided by user.", "parameters": [{"description": "Start date to query reports meta data. Format required: [yyyy-MM-dd'T'HH:mm:ss.SSS'Z]", "required": false, "type": "string", "name": "fromDate", "in": "query"}, {"description": "End date to query reports meta data. Format required: [yyyy-MM-dd'T'HH:mm:ss.SSS'Z]", "required": false, "type": "string", "name": "toDate", "in": "query"}, {"description": "Type of report user interested to see meta data for.", "required": false, "type": "string", "name": "reportType", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["000 - reportingapiv1report"], "summary": "Fetch meta data information for all/specific report type.", "consumes": ["application/json"], "operationId": "getReportDetails"}}, "/reporting/api/v1/report/delete": {"delete": {"responses": {"204": {"description": "Reports deleted successfully"}, "500": {"description": "Reports deletion failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API deletes reports as per parameter values provided by user.", "parameters": [{"description": "Start date required for delete reports starting from From_Date. Format required: [yyyy-MM-dd'T'HH:mm:ss.SSS'Z]", "required": true, "type": "string", "name": "fromDate", "in": "query"}, {"description": "End date required for deleting reports up to end date. Format required: [yyyy-MM-dd'T'HH:mm:ss.SSS'Z]", "required": true, "type": "string", "name": "toDate", "in": "query"}, {"description": "Type of report user interested to delete.", "required": true, "type": "string", "name": "reportType", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["000 - reportingapiv1report"], "summary": "Delete reports on date range and report type basis.", "consumes": ["application/json"], "operationId": "deleteReports"}}, "/reporting/api/v1/report/{resourceId}": {"get": {"responses": {"200": {"description": "Report on resource id", "schema": {"$ref": "#/definitions/Response"}}, "203": {"description": "Report generation in progress for resource id"}, "404": {"description": "No record found for resource id", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Retrieval of report failed.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API is used to fetch report data using resource id which is uniquely associated with a report.", "parameters": [{"description": "Resource id is required for fetching a specific report data", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "produces": ["application/json", "text/plain"], "deprecated": true, "tags": ["000 - reportingapiv1report"], "summary": "Fetch report data for a report which is associated with user provided resource id.", "consumes": ["application/json"], "operationId": "getReportForResourceId"}}}, "schemes": ["http", "https"], "tags": [{"name": "000 - reportingapiv1report", "description": "Create/Delete/Fetch, different reports."}, {"name": "000 - reportingapiv1schedule", "description": "Create/Delete/Fetch a schedule for different report type, So that report can be generated at a specific schedule."}, {"name": "000 - reportingapiv2report", "description": "Create/Delete/Fetch, different reports."}, {"name": "000 - reportingapiv2schedule", "description": "Create/Delete/Fetch schedules for report generation. Supports both one time and recurring schedules."}], "definitions": {"Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "Response": {"type": "object", "properties": {"status": {"type": "integer", "format": "int32"}, "entity": {"type": "object"}, "metadata": {"additionalProperties": {"items": {"type": "object"}, "type": "array"}, "type": "object"}}}, "OneTouchReportRequestPayloadV2": {"type": "object", "properties": {"data": {"$ref": "#/definitions/OneTouchOnDemandRequestModelV2"}}}, "ReportMetaDataModel": {"type": "object", "properties": {"reportContentType": {"type": "string"}, "resourceId": {"type": "string"}, "reportStatus": {"type": "string"}, "reportGenerationTime": {"type": "string"}, "reportType": {"type": "string"}, "reportGenerationMode": {"type": "string"}}}, "ReportScheduleAttributes": {"type": "object", "properties": {"cronExpression": {"type": "string"}, "resourceId": {"type": "string"}, "cronExpressionFormat": {"type": "string"}, "reportType": {"type": "string"}, "cronDescription": {"type": "string"}}}, "ReportMetaDataModelV2": {"type": "object", "properties": {"reportContentType": {"type": "string"}, "resourceId": {"type": "string"}, "reportStatus": {"type": "string"}, "reportGenerationTime": {"type": "string"}, "reportType": {"type": "string"}, "reportGenerationMode": {"type": "string"}}}, "ReportScheduleRequestDataModelV2": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/CreateAndUpdateReportScheduleModelV2"}, "type": {"enum": ["reportSchedule"], "type": "string"}}}, "QueryReportScheduleROV1": {"type": "object", "properties": {"resourceId": {"type": "string"}, "reportType": {"type": "string"}, "startDateTime": {"type": "string"}}}, "QueryReportScheduleROV2": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/ReportScheduleAttributes"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "ReportsScheduleRequestPayloadV2": {"type": "object", "properties": {"data": {"$ref": "#/definitions/ReportScheduleRequestDataModelV2"}}}, "ReportMetaDataResponseModelV2": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/MetaData"}, "data": {"$ref": "#/definitions/OnDemandResponseModelV2"}, "links": {"$ref": "#/definitions/Links"}}}, "QueryAllReportsScheduleROV1": {"type": "object", "properties": {"scheduleMetaData": {"items": {"$ref": "#/definitions/QueryReportScheduleROV1"}, "type": "array"}, "reportType": {"type": "string"}}}, "Aggregation": {"type": "object", "properties": {"buckets": {"items": {"$ref": "#/definitions/AggregationBucket"}, "type": "array"}, "name": {"type": "string"}}}, "QueryAllReportsScheduleROV2": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/MetaData"}, "data": {"items": {"$ref": "#/definitions/QueryReportScheduleROV2"}, "type": "array"}, "links": {"$ref": "#/definitions/Links"}}}, "AllReportMetaDataModelRO": {"type": "object", "properties": {"reportMetaData": {"items": {"$ref": "#/definitions/ReportMetaDataModel"}, "type": "array"}, "reportType": {"type": "string"}}}, "SupportedReportTypeV2": {"type": "object", "properties": {"reportType": {"type": "string"}, "id": {"type": "string"}, "description": {"type": "string"}}}, "AggregationBucket": {"type": "object", "properties": {"subAggregations": {"$ref": "#/definitions/Aggregation"}, "bucketValue": {"type": "string"}, "bucketKey": {"type": "string"}}}, "MetaData": {"type": "object", "properties": {"total": {"type": "integer", "format": "int64"}, "aggregations": {"items": {"$ref": "#/definitions/Aggregation"}, "type": "array"}}}, "SupportedReportTypesV2": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/MetaData"}, "data": {"items": {"$ref": "#/definitions/SupportedReportTypeModelV2"}, "type": "array"}, "links": {"$ref": "#/definitions/Links"}}}, "OnDemandResponseModelV2": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/ReportMetaDataModelV2"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "OneTouchReportRequestModel": {"type": "object", "properties": {"reportType": {"type": "string"}, "reportFormat": {"type": "string"}}}, "OnDemandRequestModelV2": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/OnDemandReportRequestModelV2"}, "type": {"enum": ["report"], "type": "string"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "OnDemandReportMetaDataResponseModelV2": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/MetaData"}, "data": {"items": {"$ref": "#/definitions/OnDemandResponseModelV2"}, "type": "array"}, "links": {"$ref": "#/definitions/Links"}}}, "CreateAndUpdateReportScheduleModelV2": {"type": "object", "properties": {"reportType": {"type": "string"}, "cronExpressionFormat": {"type": "string"}, "cronExpression": {"type": "string"}}}, "Links": {"type": "object", "properties": {"last": {"type": "string", "format": "uri"}, "self": {"type": "string", "format": "uri"}, "next": {"type": "string", "format": "uri"}, "current": {"type": "string", "format": "uri"}, "prev": {"type": "string", "format": "uri"}, "first": {"type": "string", "format": "uri"}}}, "CreateAndUpdateReportScheduleModelV1": {"type": "object", "properties": {"reportType": {"type": "string"}, "StartTime": {"type": "string"}}}, "OneTouchOnDemandRequestModelV2": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/OneTouchReportRequestModel"}, "utcOffset": {"type": "string"}, "type": {"enum": ["report"], "type": "string"}}}, "SupportedReportTypeModelV2": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/SupportedReportTypeV2"}, "type": {"type": "string"}, "id": {"type": "string"}}}, "OnDemandReportRequestModel": {"type": "object", "properties": {"reportType": {"type": "string"}}}, "OnDemandReportRequestPayloadV2": {"type": "object", "properties": {"data": {"$ref": "#/definitions/OnDemandRequestModelV2"}}}, "QueryReportsScheduleROV2": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/MetaData"}, "data": {"$ref": "#/definitions/QueryReportScheduleROV2"}, "links": {"$ref": "#/definitions/Links"}}}, "OnDemandReportRequestModelV2": {"type": "object", "properties": {"reportType": {"type": "string"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_resiliency_controller.json b/tapi/resources/MCP_4.0.0_resiliency_controller.json
deleted file mode 100644
index 3850505dde35405b2dede0e694e55ef21b4267ed..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_resiliency_controller.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Retrieve, plan and modify controller resources", "title": "Resiliency Controller"}, "paths": {"/nsi/api/controllers": {"post": {"responses": {"201": {"description": "Successfully created the controller.", "schema": {"$ref": "#/definitions/ControllerRO"}}, "500": {"description": "Failed to create the controller", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/ControllerRO"}, "description": "Controller to create or update", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapicontrollers"], "summary": "Creates a controller", "consumes": ["application/json"], "operationId": "postController"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested controller.", "schema": {"$ref": "#/definitions/ControllerListRO"}}, "500": {"description": "Failed to retrieve the requested controllers.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Network Construct identifier", "required": true, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, controllerPlanned, controllerDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapicontrollers"], "summary": "Retrieve a list of controllers provided with the satisfying parameters", "operationId": "getControllers"}}, "/nsi/api/controllers/{controllerId}/controllerExpectations": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ControllerExpectationRO"}}, "404": {"description": "Cannot find the Controller with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve Controller with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the Controller to be retrieved", "required": true, "type": "string", "name": "controllerId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapicontrollers"], "summary": "Retrieves the expectations from Controller with specific ID", "operationId": "getControllerExpectationsById"}}, "/nsi/api/controllers/{controllerId}/expectations": {"post": {"responses": {"201": {"description": "Controller expectation has been created on the server", "schema": {"$ref": "#/definitions/ControllerRO"}}, "200": {"description": "An existing Controller expectation have been updated on the server", "schema": {"$ref": "#/definitions/ControllerRO"}}, "404": {"description": "The specified Controller does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Controller identifier", "required": true, "type": "string", "name": "controllerId", "in": "path"}, {"schema": {"$ref": "#/definitions/ControllerExpectationRO"}, "description": "ControllerExpectation to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapicontrollers"], "summary": "Create an Controller expectation given the Controller id", "consumes": ["application/json"], "operationId": "postExpectation"}}, "/nsi/api/v1/controllers/{controllerId}/controllerExpectations/{controllerExpectationId}": {"delete": {"responses": {"200": {"description": "Delete Controller Expectations with given id successfully."}, "404": {"description": "Controller does not exist."}, "403": {"description": "Forbidden to access specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Controller Expectation does not exist."}, "500": {"description": "Failed to delete Controller Expectation with id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Controller identifier", "required": true, "type": "string", "name": "controllerId", "in": "path"}, {"description": "Controller expectation identifier", "required": true, "type": "string", "name": "controllerExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["996 - nsiapiv1controllers"], "summary": "Delete Controller Expectation given controllerId and expectationId", "operationId": "deleteControllerExpectation"}}, "/nsi/api/controllers/{controllerId}/controllerExpectations/{controllerExpectationId}": {"delete": {"responses": {"200": {"description": "Delete Controller Expectations with given id successfully."}, "404": {"description": "Controller does not exist."}, "403": {"description": "Forbidden to access specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Controller Expectation does not exist."}, "500": {"description": "Failed to delete Controller Expectation with id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Controller identifier", "required": true, "type": "string", "name": "controllerId", "in": "path"}, {"description": "Controller expectation identifier", "required": true, "type": "string", "name": "controllerExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapicontrollers"], "summary": "Delete Controller Expectation given controllerId and expectationId", "operationId": "deleteControllerExpectation"}}, "/nsi/api/v2/controllers/{controllerId}": {"get": {"responses": {"200": {"description": "Successfully retrieved the requested controller.", "schema": {"$ref": "#/definitions/ControllerRO"}}, "404": {"description": "The specified Controller does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested controllers.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the Controller to retrieve", "required": true, "type": "string", "name": "controllerId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, controllerPlanned, controllerDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["995 - nsiapiv2controllers"], "summary": "Retrieves a specific controller", "operationId": "getController"}}, "/nsi/api/v1/controllers/{controllerId}/expectations": {"post": {"responses": {"201": {"description": "Controller expectation has been created on the server", "schema": {"$ref": "#/definitions/ControllerRO"}}, "200": {"description": "An existing Controller expectation have been updated on the server", "schema": {"$ref": "#/definitions/ControllerRO"}}, "404": {"description": "The specified Controller does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Controller identifier", "required": true, "type": "string", "name": "controllerId", "in": "path"}, {"schema": {"$ref": "#/definitions/ControllerExpectationRO"}, "description": "ControllerExpectation to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv1controllers"], "summary": "Create an Controller expectation given the Controller id", "consumes": ["application/json"], "operationId": "postExpectation"}}, "/nsi/api/v1/controllers/{controllerId}": {"delete": {"responses": {"200": {"description": "The Controller is deleted successfully."}, "403": {"description": "Forbidden to delete specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Controller does not exist."}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request, input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This operation is allowed for a root or actual Controller entity.", "parameters": [{"description": "Controller identifier", "required": true, "type": "string", "name": "controllerId", "in": "path"}], "produces": ["application/json"], "tags": ["996 - nsiapiv1controllers"], "summary": "Delete a root Controller.", "operationId": "deleteControllerById"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested controller.", "schema": {"$ref": "#/definitions/ControllerRO"}}, "403": {"description": "Forbidden to access specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested controllers.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Identifier of the Controller to retrieve", "required": true, "type": "string", "name": "controllerId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, controllerPlanned, controllerDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["996 - nsiapiv1controllers"], "summary": "Retrieves a specific controller", "operationId": "getController"}}, "/nsi/api/controllers/{controllerId}/controllerPlanned": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ControllerPlannedDataRO"}}, "404": {"description": "Cannot find the Controller with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve Controller with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the Controller Planned to be retrieved", "required": true, "type": "string", "name": "controllerId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapicontrollers"], "summary": "Retrieves the planned Controller by specific Controller ID", "operationId": "getControllerPlannedById"}}, "/nsi/api/v1/controllers/{controllerId}/controllerExpectations": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ControllerExpectationRO"}}, "404": {"description": "Cannot find the Controller with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve Controller with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the Controller to be retrieved", "required": true, "type": "string", "name": "controllerId", "in": "path"}], "produces": ["application/json"], "tags": ["996 - nsiapiv1controllers"], "summary": "Retrieves the expectations from Controller with specific ID", "operationId": "getControllerExpectations"}}, "/nsi/api/controllers/{controllerId}": {"delete": {"responses": {"200": {"description": "The Controller is deleted successfully."}, "403": {"description": "Forbidden to delete specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Controller does not exist."}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request, input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This operation is allowed for a root or actual Controller entity.", "parameters": [{"description": "Controller identifier", "required": true, "type": "string", "name": "controllerId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapicontrollers"], "summary": "Delete a root Controller.", "operationId": "deleteControllerById"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested controller.", "schema": {"$ref": "#/definitions/ControllerRO"}}, "404": {"description": "The specified Controller does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve the requested controllers.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the Controller to retrieve", "required": true, "type": "string", "name": "controllerId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, controllerPlanned, controllerDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapicontrollers"], "summary": "Retrieves a specific controller", "operationId": "getController"}}, "/nsi/api/v1/controllers": {"post": {"responses": {"201": {"description": "Successfully created the controller.", "schema": {"$ref": "#/definitions/ControllerRO"}}, "500": {"description": "Failed to create the controller", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": " Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/ControllerRO"}, "description": "Controller to create or update", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv1controllers"], "summary": "Creates a controller", "consumes": ["application/json"], "operationId": "postController"}, "get": {"responses": {"200": {"description": "Successfully retrieved the requested controller.", "schema": {"$ref": "#/definitions/ControllerListRO"}}, "500": {"description": "Failed to retrieve the requested controllers.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "Network Construct identifier", "required": true, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "20", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: expectations, controllerPlanned, controllerDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["996 - nsiapiv1controllers"], "summary": "Retrieve a list of controllers provided with the satisfying parameters", "operationId": "getControllers"}}, "/nsi/api/v1/controllers/{controllerId}/controllerPlanned": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/ControllerPlannedDataRO"}}, "404": {"description": "Cannot find the Controller with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified Controller", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve Controller with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the Controller Planned to be retrieved", "required": true, "type": "string", "name": "controllerId", "in": "path"}], "produces": ["application/json"], "tags": ["996 - nsiapiv1controllers"], "summary": "Retrieves the planned Controller by specific Controller ID", "operationId": "getControllerPlannedById"}}}, "schemes": ["http", "https"], "tags": [{"name": "000 - nsiapicontrollers", "description": "Retrieve, plan, and manage the controller resources<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "995 - nsiapiv2controllers", "description": "Retrieve, plan, and manage the controller resources (version 2)."}, {"name": "996 - nsiapiv1controllers", "description": "Retrieve, plan, and manage the controller resources (version 1)."}], "definitions": {"Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "ValidateParametersRO": {"type": "object", "properties": {"include": {"type": "string", "description": "The list of comma separated parameters (if any) to be validated against the expectation"}}}, "ControllerPlannedRelationshipsRO": {"type": "object", "properties": {"subordinateSwitches": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "selectableTPEs": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "AdditionalAttributesRO": {"type": "object"}, "OneToOneRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipDataRO"}}}, "ControllerExpectationAttributesRO": {"type": "object", "properties": {"validateParameters": {"description": "Attribute containing the list of parameters (if any) to be validated against the expectation", "$ref": "#/definitions/ValidateParametersRO"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "resiliencyFlowsPackage": {"items": {"$ref": "#/definitions/ResiliencyFlowsPackageRO"}, "type": "array", "description": "Resiliency flow"}, "controllerDataPackage": {"description": "These are the base Controller attributes that actual controller and expectation can extend.", "$ref": "#/definitions/ControllerDataPackageRO"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the NE belongs to."}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "recoveryCharacteristics": {"$ref": "#/definitions/RecoveryCharacteristicsRO"}}}, "ControllerPlannedAttributesRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "resiliencyFlowsPackage": {"items": {"$ref": "#/definitions/ResiliencyFlowsPackageRO"}, "type": "array", "description": "Resiliency flow"}, "controllerDataPackage": {"description": "These are the base Controller attributes that actual controller and expectation can extend.", "$ref": "#/definitions/ControllerDataPackageRO"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the NE belongs to."}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "recoveryCharacteristics": {"$ref": "#/definitions/RecoveryCharacteristicsRO"}}}, "ControllerDataPackageRO": {"type": "object", "properties": {"profile": {"enum": ["TPT_Port_6500", "TPT_Eqpt_6500", "OPS_6500", "CP_SNCP", "NCP_SNCP"], "type": "string", "description": "The Group resource type"}, "isCoordinatingBothEnds": {"default": false, "type": "boolean", "description": "if TRUE, the Controller is operating such that switching at both ends of each flow across the FC is coordinated at both ingress and egress ends "}, "lossPower": {"type": "string", "description": "If Yes, there is power loss. No means there is no power loss."}, "controllerType": {"enum": ["switchController", "configurationController"], "type": "string", "description": "controller type"}, "protectionScheme": {"enum": ["ONE_PLUS_ONE", "ONE_FOR_ONE", "LAG", "TPT", "OPS", "CP_SNCP", "NCP_SNCP", "NONE"], "type": "string", "description": "protectionScheme"}, "protectionSchemeQualifier": {"enum": ["ptpt", "eqtpt", "cp_sncp", "ncp_sncp"], "type": "string", "description": "protectionScheme"}, "isFrozen": {"default": false, "type": "boolean", "description": "Temporarily prevents any switch action to be taken and, as such, freezes the current state"}, "transponderTriggeredOps": {"type": "string", "description": "If Yes, the transponder triggered OPS feature is on. No means it's off."}, "nativeName": {"type": "string", "description": "Native name of the controller"}, "switchRule": {"enum": ["nodalClientTPT"], "type": "string", "description": "switch (eg TPT) vs configuration (eg SNC)"}}}, "IdentifierRO": {"type": "object"}, "ErrorRO": {"type": "object", "properties": {"source": {"description": "Error source", "$ref": "#/definitions/ErrorSourceRO"}, "code": {"type": "string", "description": "Error code"}, "detail": {"type": "string", "description": "Error details"}, "title": {"type": "string", "description": "Error title"}}}, "ControllerListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to a Controller, such as ControllerData, TPEData, FreData, SwitchData, ControllerExpectationData"}, "data": {"items": {"$ref": "#/definitions/ControllerDataRO"}, "type": "array"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "ControllerExpectationRelationshipsRO": {"type": "object", "properties": {"subordinateSwitches": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "selectableTPEs": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "ControllerExpectationDataRO": {"type": "object", "properties": {"relationships": {"description": "These are the Controller Relationships.", "$ref": "#/definitions/ControllerExpectationRelationshipsRO"}, "attributes": {"description": "Expectation attributes to be kept by NSI.", "$ref": "#/definitions/ControllerExpectationAttributesRO"}, "type": {"enum": ["controllerExpectations"], "type": "string", "description": "The controller expectation type"}, "id": {"type": "string", "description": "The unique identifier of the controller expectation"}}}, "ControllerRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to a Controller, such as ControllerData, TPEData, FreData, SwitchData, ControllerExpectationData"}, "data": {"$ref": "#/definitions/ControllerDataRO"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "FreDisplayPhotonicSpectrumDataRO": {"type": "object", "properties": {"wavelength": {"type": "string", "description": "The corresponding wavelength value for the frequency attribute"}, "frequency": {"type": "string", "description": "The frequency value for one of the underlying Endpoints"}, "channel": {"type": "string", "description": "The corresponding channel number for the frequency attribute"}}}, "ControllerAttributesRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the NE belongs to."}, "resiliencyFlowsPackage": {"items": {"$ref": "#/definitions/ResiliencyFlowsPackageRO"}, "type": "array", "description": "Resiliency flow"}, "controllerDataPackage": {"description": "These are the base Controller attributes that actual controller and expectation can extend.", "$ref": "#/definitions/ControllerDataPackageRO"}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "displayData": {"$ref": "#/definitions/FreDisplayDataRO"}, "recoveryCharacteristics": {"$ref": "#/definitions/RecoveryCharacteristicsRO"}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}}}, "RelationshipMetaDataRO": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean", "description": "Flags whether the included relationship object is partially populated or not"}}}, "LinksRO": {"type": "object", "properties": {"last": {"type": "string", "description": "The last page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "next": {"type": "string", "description": "The next page of data", "format": "uri"}, "current": {"type": "string", "description": "The current page of data", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "RecoveryCharacteristicsRO": {"type": "object", "properties": {"switchingProtocol": {"enum": ["SNC_I", "SNC_N", "SNC_S"], "type": "string", "description": "Indicates whether the switching criteria applied to the protection group is SNC-I (Subnetwork Connection protection with Inherent monitoring), SNC-N (Subnetwork Connection protection with Non-intrusive monitoring), SNC-S (Subnetwork Connection protection with Sublayer monitoring)."}, "dataPathFaultAlarmTime": {"type": "string", "description": "Specifies in minutes how long to wait before raising the SNC datapath fault alarm."}, "reversionTimeUnit": {"type": "string", "description": "Unit of delay time for revert, default is seconds"}, "todrTimePeriod": {"type": "integer", "description": "Specifies the time period (in minutes) over which it is acceptable to do the TODR", "format": "int32"}, "todrTimePeriodUnit": {"type": "string", "description": "Unit of time period"}, "timerRecoveryGuardTimeUnit": {"type": "string", "description": "Unit of recovery guard time, default is seconds"}, "holdOffTimeUnit": {"type": "string", "description": "Unit of hold off time"}, "timerDetectionGuardTimeUnit": {"type": "string", "description": "Unit of detection guard time, default is seconds"}, "todrTime": {"type": "string", "description": "Specifies the time of day to do reversion to the home path"}, "recoveryPriority": {"enum": ["high", "low"], "type": "string", "description": "Indicates the priority level"}, "autoReversionPossible": {"default": false, "type": "boolean", "description": "Auto reversion enabled value. "}, "todrProfileList": {"type": "string", "description": "List of time of day reversion profiles that are associated with this PROTGRP"}, "dataPathFaultAction": {"type": "string", "description": "Indicates whether an ALARM will be raised or MR will be done on SNC Datapath Fault.Default is ALARM"}, "timerRecoveryGuard": {"type": "integer", "description": "This timer is triggered when both members of a protection pair are in an Signal Fail (SF) state due to a common upstream client side defect and one of them detects the clearing of the SF", "format": "int32"}, "isArdEnabled": {"default": false, "type": "boolean", "description": "Absolute route diversity"}, "onHome": {"default": false, "type": "boolean", "description": "Flag indicating if currently on the home path"}, "todrHoldbackEnabled": {"default": false, "type": "boolean", "description": "Specifies if time of day reversion holdback is enabled"}, "waitToRevertDelay": {"type": "integer", "description": "The time delay for auto-reversion", "format": "int32"}, "timerGuard": {"type": "integer", "description": "Timer Guard is an evaluation guardtimer. It works both on the raising and clearing of a defect by inhibiting the evaluation of the conditions by the A/SNCP engine for the specified time.", "format": "int32"}, "holdbackThreshold": {"type": "integer", "description": "Holdback signal degrade threshold", "format": "int32"}, "waitToSwitchDelay": {"type": "integer", "description": "The time delay before switching off the active path when problem is detected", "format": "int32"}, "timerGuardTimeUnit": {"type": "string", "description": "Unit of timer guard."}, "switchTimeUnit": {"type": "string", "description": "Unit of delay time before switching, default is seconds"}, "timerDetectionGuard": {"type": "integer", "description": "This timer is triggered when both members of a protection pair are in a clear state and one of the members detects a Signal Fail due to a likely upstream client side fault", "format": "int32"}, "holdOffTime": {"type": "integer", "description": "Specifies the holdOffTime.", "format": "int32"}, "todrHoldbackPeriod": {"type": "string", "description": "Specifies the time of day reversion holdback period"}, "homeAvailable": {"default": false, "type": "boolean", "description": "Flag indicating if home path is currently available"}, "autoReversionType": {"enum": ["delay", "timeOfDay"], "type": "string", "description": "If autoReversionPossible, this type is the behaviour of that reversion, currently only delay is supported."}, "signalingType": {"enum": ["PM", "TCMLEVEL1", "TCMLEVEL2", "TCMLEVEL3", "TCMLEVEL4", "TCMLEVEL5", "TCMLEVEL6"], "type": "string", "description": "Signaling type for the automatic protection switching."}}}, "FreDisplayDataRO": {"type": "object", "properties": {"sncgUserlabel": {"type": "string", "description": "For ControlPlane SNCs only, the userlabel of the parent SNC group"}, "displayPhotonicSpectrumData": {"items": {"$ref": "#/definitions/FreDisplayPhotonicSpectrumDataRO"}, "type": "array"}, "displayTopologySource": {"type": "string", "description": "The source of the FRE"}, "intentDeploymentStateString": {"enum": ["NOT_APPLICABLE", "IN_PROGRESS", "FAILED", "IN_THE_NETWORK", "NETWORK_MISMATCH_DETECTED", "PROPERTY_MISMATCH"], "type": "string", "description": "Represents the deployment state of the service intent through its life cycle"}, "operationState": {"type": "string", "description": "Represents the total traffic carrying capability of the FRE. Relates to flow of traffic across the FRE between endpoints."}, "adminState": {"type": "string", "description": "Indicates the administrative state of the FRE, including whether traffic has been enabled and whether the FRE should be used by clients. It is derived from the state(s) of terminating TPE(s). Disabled means that FRE is prevented from carrying traffic. Enabled means that FRE is allowed to carry traffic."}, "frequency": {"type": "string", "description": "The frequency value for one of the underlying Endpoints"}, "displayDeploymentState": {"enum": ["SCHEDULED", "NETWORK_MISMATCH_DETECTED", "PROPERTY_MISMATCH", "DEPLOYED", "DISCOVERED", "DEPLOYING", "MONITORING", "DEPLOYMENT_FAILED", "DELETING", "DELETE_FAILED"], "type": "string", "description": "Represents the stage that the FRE is at in the construction/deployment/discovery life cycle"}, "intentLifeCyclePhaseString": {"enum": ["SCHEDULED", "DEPLOYING", "DEPLOYED", "DELETING", "DISCOVERED"], "type": "string", "description": "Represents the different phases of the service intent through its life cycle"}, "wavelength": {"type": "string", "description": "The corresponding wavelength value for the frequency attribute"}, "channel": {"type": "string", "description": "The corresponding channel number for the frequency attribute"}}}, "ControllerDataRO": {"type": "object", "properties": {"relationships": {"description": "These are the Controller Relationships.", "$ref": "#/definitions/ControllerRelationshipsRO"}, "attributes": {"description": "These are the Controller attributes.", "$ref": "#/definitions/ControllerAttributesRO"}, "type": {"enum": ["controllers", "resiliencyController"], "type": "string", "description": "The Controller resource type"}, "id": {"type": "string", "description": "The unique identifier for the Controller resource"}}}, "ErrorsRO": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/ErrorRO"}, "type": "array", "description": "A list of errors"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "ResiliencyFlowsPackageRO": {"type": "object", "properties": {"flowType": {"enum": ["CommonIngress"], "type": "string"}, "selectionReason": {"enum": ["normal", "manual", "protection"], "type": "string"}, "flowSelection": {"enum": ["working", "protecting"], "type": "string", "description": "flowSelect"}}}, "ControllerPlannedDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/ControllerPlannedRelationshipsRO"}, "attributes": {"$ref": "#/definitions/ControllerPlannedAttributesRO"}, "type": {"enum": ["controllerPlanned"], "type": "string", "description": "The controller planned type"}, "id": {"type": "string", "description": "The unique identifier of the planned controller"}}}, "OneToManyRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array", "description": "The one-to-many relationship"}}}, "ControllerExpectationRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to a Controller, such as ControllerData, TPEData, FreData, SwitchData, ControllerExpectationData"}, "data": {"$ref": "#/definitions/ControllerExpectationDataRO"}}}, "ControllerRelationshipsRO": {"type": "object", "properties": {"subordinateSwitches": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "subordinateControllers": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "controllerDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "selectableTPEs": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "controllerExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "controllerPlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "ErrorSourceRO": {"type": "object", "properties": {"parameter": {"type": "string", "description": "URI query parameter that caused the error"}, "pointer": {"type": "string", "description": "JSON Pointer to the associated entity in the request document"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_resource_adapter_controller_interfaces_(ractrl).json b/tapi/resources/MCP_4.0.0_resource_adapter_controller_interfaces_(ractrl).json
deleted file mode 100644
index e664071419f89298708a119403468a0c2b49bad0..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_resource_adapter_controller_interfaces_(ractrl).json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "The Resource adapter controller manages RAs and coordinates provisioning of network elements across multiple RA instances.  These interfaces were originally provided by the ractrl micro-service.", "title": "Resource Adapter Controller Interfaces (ractrl)"}, "paths": {"/ractrl/api/v1/resourceTypes": {"get": {"responses": {"200": {"description": "List of resourceTypes.", "schema": {"$ref": "#/definitions/RaCtrlListRO"}}}, "produces": ["application/json"], "description": "Retrieves a list of resourceTypes provided by the managed RAs.", "tags": ["RaController V1"], "summary": "Retrieve resourceTypes provided by the managed RAs.", "operationId": "getAllResourceTypes"}}, "/ractrl/api/v1/rebalanceSessions": {"post": {"responses": {"102": {"description": "A rebalancing operation is already in progress.", "schema": {"$ref": "#/definitions/Errors"}}, "201": {"description": "A rebalancing operation has been initiated."}}, "description": "", "produces": ["application/json"], "tags": ["RaController V1"], "summary": "Rebalance sessions across all RA instances.", "consumes": ["application/json"], "operationId": "rebalanceSessionsPost"}}, "/ractrl/api/v1/jsonSchemas": {"get": {"responses": {"200": {"description": "List of JSON schemas", "schema": {"$ref": "#/definitions/RaCtrlListRO"}}}, "produces": ["application/json"], "description": "Retrieves a list of JSON Schemas provided by the RA instances currently under management.", "tags": ["RaController V1"], "summary": "Retrieve JSON Schemas provided by managed RAs", "operationId": "getAllJsonSchemas"}}, "/ractrl/api/v1/typeGroups/{typeGroupId}": {"get": {"responses": {"200": {"description": "List with typeGroup information.", "schema": {"$ref": "#/definitions/RaCtrlListRO"}}, "404": {"description": "Not found, no typeGroup with the supplied typeGroupId.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request, usually caused by invalid values provided for a parameter", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Retrieves a list containing information for one typeGroup.", "parameters": [{"description": "Id for the typeGroup", "required": true, "type": "string", "name": "typeGroupId", "in": "path"}], "produces": ["application/json"], "tags": ["RaController V1"], "summary": "Retrieve information for one typeGroup provided by the managed RAs.", "operationId": "getTypeGroupById"}}, "/ractrl/api/v1/ras/{raId}": {"get": {"responses": {"200": {"description": "List of RA information", "schema": {"$ref": "#/definitions/RaCtrlListRO"}}, "404": {"description": "Not found, no RA with the supplied ID.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request, usually caused by invalid values provided for a parameter.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Retrieves raInfo, resourceTypes, resourceProviders, jsonSchemas, sessions, typeGroups, uri and id for one RA managed by discovery.", "parameters": [{"description": "Id for the RA", "required": true, "type": "string", "name": "raId", "in": "path"}], "produces": ["application/json"], "tags": ["RaController V1"], "summary": "Get information for one RA.", "operationId": "getRaById"}}, "/ractrl/api/v1/resourceTypes/{resourceTypeId}": {"get": {"responses": {"200": {"description": "List with resourceType information.", "schema": {"$ref": "#/definitions/RaCtrlListRO"}}, "404": {"description": "Not found, no resourceType with the supplied resourceTypeId.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request, usually caused by invalid values provided for a parameter", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Retrieves a list containing information for one resourceType.", "parameters": [{"description": "Id for the ResourceType", "required": true, "type": "string", "name": "resourceTypeId", "in": "path"}], "produces": ["application/json"], "tags": ["RaController V1"], "summary": "Get information for one resourceType.", "operationId": "getResourceTypeById"}}, "/ractrl/api/v1/typeGroups": {"get": {"responses": {"200": {"description": "List of typeGroups.", "schema": {"$ref": "#/definitions/RaCtrlListRO"}}}, "produces": ["application/json"], "description": "Retrieves a list of typeGroups provided by the managed RAs.", "tags": ["RaController V1"], "summary": "Retrieve information for typeGroups provided by the managed RAs.", "operationId": "getAllTypeGroups"}}, "/ractrl/api/v1/sessions": {"get": {"responses": {"200": {"description": "List of RA sessions.", "schema": {"$ref": "#/definitions/RaCtrlListRO"}}}, "produces": ["application/json"], "description": "Retrieves a list of sessions present on the managed RA instances.", "tags": ["RaController V1"], "summary": "Retrieve sessions on managed RAs.", "operationId": "getAllSessions"}}, "/ractrl/api/v1/sessions/{sessionId}": {"get": {"responses": {"200": {"description": "List with RA session information.", "schema": {"$ref": "#/definitions/RaCtrlListRO"}}, "404": {"description": "Not found, no RA session with the supplied sessionId.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request, usually caused by invalid values provided for a parameter", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Retrieves a list with information for one RA session.", "parameters": [{"description": "Id for the Session", "required": true, "type": "string", "name": "sessionId", "in": "path"}], "produces": ["application/json"], "tags": ["RaController V1"], "summary": "Get information for one RA session.", "operationId": "getSessionById"}}, "/ractrl/api/v1/jsonSchemas/{title}": {"get": {"responses": {"200": {"description": "List with the referenced JSON Schema", "schema": {"$ref": "#/definitions/RaCtrlListRO"}}, "404": {"description": "Not found, no schema with the supplied title.", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request, usually caused by invalid values provided for a parameter.", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Retrieve information for the JSON Schema identified.", "parameters": [{"description": "Title for the json schema", "required": true, "type": "string", "name": "title", "in": "path"}], "produces": ["application/json"], "tags": ["RaController V1"], "summary": "Get information for one JSON Schema.", "operationId": "getJsonSchemaByTitle"}}, "/ractrl/api/v1/ras": {"get": {"responses": {"200": {"description": "List of RA information", "schema": {"$ref": "#/definitions/RaCtrlListRO"}}}, "produces": ["application/json"], "description": "Retrieves raInfo, resourceTypes, resourceProviders, jsonSchemas, sessions, typeGroups, uri and id for each RA managed by discovery.", "tags": ["RaController V1"], "summary": "Retrieve information about RAs managed by discovery.", "operationId": "getAllRas"}}}, "schemes": ["http", "https"], "tags": [{"name": "RaController V1", "description": "Provides data about managed RA instances."}], "definitions": {"RaCtrlListRO": {"type": "object", "properties": {"nextPageToken": {"type": "string"}, "items": {"items": {"type": "object"}, "type": "array"}, "kind": {"type": "string"}, "itemsAvailable": {"type": "integer", "format": "int32"}}}, "Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_service_provisioning_(cd_fixed).json b/tapi/resources/MCP_4.0.0_service_provisioning_(cd_fixed).json
deleted file mode 100644
index cde9cf79fbf9c5bfc1108c2aa3a731c0adf0ca47..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_service_provisioning_(cd_fixed).json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Provisioning and deletion of services (CD fixed)", "title": "Service provisioning (CD fixed)"}, "paths": {"/ifd/api/v1/serviceIntents/{id}/resourceTrackers": {"get": {"responses": {"200": {"description": "ServiceIntent ResourceTrackers retrieved", "schema": {"$ref": "#/definitions/ServiceIntentRoute"}}, "404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves all resource trackers based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["Service Intents v1"], "summary": "Get Service Intent Resource Trackers based on its identifier", "consumes": ["application/json"], "operationId": "getServiceResourceTrackers"}}, "/ifd/api/serviceIntents/{id}": {"delete": {"responses": {"404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Intent deleted"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "tags": ["Service Intents"], "description": "This API deletes an Intent based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "summary": "Delete a Service Intent based on its identifier", "operationId": "deleteIntent"}, "get": {"responses": {"200": {"description": "Intent retrieved", "schema": {"$ref": "#/definitions/ServiceIntentResponse"}}, "404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves an Intent based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["Service Intents"], "summary": "Get a Service Intent based on its identifier", "consumes": ["application/json"], "operationId": "getIntent"}}, "/ifd/api/serviceIntents": {"post": {"responses": {"201": {"description": "Intent is created, realized and scheduled", "schema": {"$ref": "#/definitions/ServiceIntentResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API validates intent attributes, computes a path and schedules intent realization for deployment.<p>Prerequisite: The entered Service Intent is valid.</p>", "parameters": [{"schema": {"$ref": "#/definitions/ServiceIntentRequest"}, "description": "Intent as a JSON Profile wrapper object", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Service Intents"], "summary": "Create Service Intents", "consumes": ["application/json"], "operationId": "createIntent"}, "get": {"responses": {"200": {"description": "Intents retrieved", "schema": {"$ref": "#/definitions/ServiceIntentResponseArray"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Gets all Service Intents currently stored in the database.<p>Prerequisite: At least one Service Intent must exist.</p>", "parameters": [{"description": "(Optional) Retrieve service intents with the specified service user label", "required": false, "type": "string", "name": "label", "in": "query"}, {"description": "(Optional) Retrieve service intents that operate at the given layer rate(s)", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "layerRates"}, {"description": "(Optional) Retrieve service intents that utilize the named ROADM Line", "required": false, "type": "string", "name": "roadmLineName", "in": "query"}, {"description": "(Optional) Retrieve all client service intents for the specified supporting (infrastructure) service name", "required": false, "type": "string", "name": "supportingServiceName", "in": "query"}], "produces": ["application/json"], "tags": ["Service Intents"], "summary": "Get all Service Intents", "operationId": "getAllIntents"}}, "/ifd/api/v1/serviceIntents/deleteIntent/{id}": {"delete": {"responses": {"404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Intent deleted"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "tags": ["Service Intents v1"], "description": "This API deletes service Intent based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "summary": "For INTERNAL USE ONLY: Deletes a Service Intent based on its identifier from IFD DB only", "operationId": "deleteServiceIntent"}}, "/ifd/api/serviceIntents/deleteIntent/{id}": {"delete": {"responses": {"404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Intent deleted"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "tags": ["Service Intents"], "description": "This API deletes service Intent based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "summary": "For INTERNAL USE ONLY: Deletes a Service Intent based on its identifier from IFD DB only", "operationId": "deleteServiceIntent"}}, "/ifd/api/v1/serviceIntents": {"post": {"responses": {"201": {"description": "Intent is created, realized and scheduled", "schema": {"$ref": "#/definitions/ServiceIntentResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API validates intent attributes, computes a path and schedules intent realization for deployment.<p>Prerequisite: The entered Service Intent is valid.</p>", "parameters": [{"schema": {"$ref": "#/definitions/ServiceIntentRequest"}, "description": "Intent as a JSON Profile wrapper object", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Service Intents v1"], "summary": "Create Service Intents", "consumes": ["application/json"], "operationId": "createIntent"}, "get": {"responses": {"200": {"description": "Intents retrieved", "schema": {"$ref": "#/definitions/ServiceIntentResponseArray"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "Gets all Service Intents currently stored in the database.<p>Prerequisite: At least one Service Intent must exist.</p>", "parameters": [{"description": "(Optional) Retrieve service intents with the specified service user label", "required": false, "type": "string", "name": "label", "in": "query"}, {"description": "(Optional) Retrieve service intents that operate at the given layer rate(s)", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "layerRates"}, {"description": "(Optional) Retrieve service intents that utilize the named ROADM Line", "required": false, "type": "string", "name": "roadmLineName", "in": "query"}, {"description": "(Optional) Retrieve all client service intents for the specified supporting (infrastructure) service name", "required": false, "type": "string", "name": "supportingServiceName", "in": "query"}], "produces": ["application/json"], "tags": ["Service Intents v1"], "summary": "Get all Service Intents", "operationId": "getAllIntents"}}, "/ifd/api/serviceIntents/{id}/promote": {"post": {"responses": {"201": {"description": "FRE found and Service Intent created"}, "404": {"description": "FRE not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This promotes an FRE to a Service Intent.<p>Prerequisite: An FRE must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the FRE", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["Service Intents"], "summary": "Promote an FRE based on its identifier to a Service Intent", "operationId": "promoteFre"}}, "/ifd/api/v1/serviceIntents/{id}/update": {"put": {"responses": {"200": {"description": "Update successful", "schema": {"$ref": "#/definitions/ServiceIntentResponse"}}, "404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input"}}, "description": "This API modifies an existing service intent based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}, {"schema": {"$ref": "#/definitions/ServiceIntentRequest"}, "description": "Intent with the fields to be updated", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Service Intents v1"], "summary": "Updates a Service Intent based on its identifier", "consumes": ["application/json"], "operationId": "updateIntent"}}, "/ifd/api/v1/serviceIntents/{id}": {"delete": {"responses": {"404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Intent deleted"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "tags": ["Service Intents v1"], "description": "This API deletes an Intent based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "summary": "Delete a Service Intent based on its identifier", "operationId": "deleteIntent"}, "get": {"responses": {"200": {"description": "Intent retrieved", "schema": {"$ref": "#/definitions/ServiceIntentResponse"}}, "404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves an Intent based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["Service Intents v1"], "summary": "Get a Service Intent based on its identifier", "consumes": ["application/json"], "operationId": "getIntent"}}, "/ifd/api/serviceIntents/{id}/resourceTrackers": {"get": {"responses": {"200": {"description": "ServiceIntent ResourceTrackers retrieved", "schema": {"$ref": "#/definitions/ServiceIntentRoutes"}}, "404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves all resource trackers based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["Service Intents"], "summary": "Get Service Intent Resource Trackers based on its identifier", "consumes": ["application/json"], "operationId": "getServiceResourceTrackers"}}, "/ifd/api/serviceIntents/{id}/undeploy": {"post": {"responses": {"404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Intent found and undeployment will begin"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "412": {"description": "Intent not in correct state", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API undeploys a service based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}, {"description": "(Optional. Demo Only - not officially supported) Bypasses service provisioning client service validation if set to true", "default": false, "required": false, "in": "query", "type": "boolean", "name": "ignoreClientServiceDependencies"}], "produces": ["application/json"], "tags": ["Service Intents"], "summary": "Begins undeployment of a service intent based on its identifier", "operationId": "undeployIntent"}}, "/ifd/api/serviceIntents/{id}/route": {"get": {"responses": {"200": {"description": "Route retrieved", "schema": {"$ref": "#/definitions/ServiceIntentRoutes"}}, "404": {"description": "Route id not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves a Route based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["Service Intents"], "summary": "Get Service Intent Route based on its identifier", "consumes": ["application/json"], "operationId": "getServiceRoute"}}, "/ifd/api/v1/serviceIntents/{id}/promote": {"post": {"responses": {"201": {"description": "FRE found and Service Intent created"}, "404": {"description": "FRE not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This promotes an FRE to a Service Intent.<p>Prerequisite: An FRE must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the FRE", "required": true, "type": "string", "name": "id", "in": "path"}], "produces": ["application/json"], "tags": ["Service Intents v1"], "summary": "Promote an FRE based on its identifier to a Service Intent", "operationId": "promoteFre"}}, "/ifd/api/v1/serviceIntents/{id}/forceFailState": {"post": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/ServiceIntentResponse"}}, "404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API switches the service intent to FAILED_ACTIVATING/FAILED_DEACTIVATING from ACTIVATING/DEACTIVATING respectively based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["Service Intents v1"], "summary": "Force State the Service Intent based on its identifier", "operationId": "forceState"}}, "/ifd/api/v1/serviceIntents/getFeasibleRoute": {"post": {"responses": {"200": {"description": "Feasibility check has completed without error", "schema": {"$ref": "#/definitions/ServiceIntentRoute"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API returns a feasible route based on provided input parameters, but does not persist the route.<p>Prerequisite: The entered input is valid (including checks such as that the label must be unique).</p>", "parameters": [{"schema": {"$ref": "#/definitions/ServiceIntentRequest"}, "description": "Inputs as a JSON Profile wrapper object", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Service Intents v1"], "summary": "Get Feasible Route", "consumes": ["application/json"], "operationId": "getFeasibleRoute"}}, "/ifd/api/serviceIntents/{id}/update": {"put": {"responses": {"200": {"description": "Update successful", "schema": {"$ref": "#/definitions/ServiceIntentResponse"}}, "404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input"}}, "description": "This API modifies an existing service intent based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}, {"schema": {"$ref": "#/definitions/ServiceIntentRequest"}, "description": "Intent with the fields to be updated", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["Service Intents"], "summary": "Updates a Service Intent based on its identifier", "consumes": ["application/json"], "operationId": "updateIntent"}}, "/ifd/api/v1/serviceIntents/{id}/deploy": {"post": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/ServiceIntentResponse"}}, "404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API deploys a created service intent based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["Service Intents v1"], "summary": "Deploy a Service Intent based on its identifier", "operationId": "deployIntent"}}, "/ifd/api/v1/serviceIntents/{id}/route": {"get": {"responses": {"200": {"description": "Route retrieved", "schema": {"$ref": "#/definitions/ServiceIntentRoute"}}, "404": {"description": "Route id not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves a Route based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "deprecated": true, "tags": ["Service Intents v1"], "summary": "Get Service Intent Route based on its identifier", "consumes": ["application/json"], "operationId": "getServiceRoute"}}, "/ifd/api/v1/serviceIntents/{id}/undeploy": {"post": {"responses": {"404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Intent found and undeployment will begin"}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "412": {"description": "Intent not in correct state", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API undeploys a service based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}, {"description": "(Optional. Demo Only - not officially supported) Bypasses service provisioning client service validation if set to true", "default": false, "required": false, "in": "query", "type": "boolean", "name": "ignoreClientServiceDependencies"}], "produces": ["application/json"], "tags": ["Service Intents v1"], "summary": "Begins undeployment of a service intent based on its identifier", "operationId": "undeployIntent"}}, "/ifd/api/serviceIntents/{id}/forceFailState": {"post": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/ServiceIntentResponse"}}, "404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API switches the service intent to FAILED_ACTIVATING/FAILED_DEACTIVATING from ACTIVATING/DEACTIVATING respectively based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["Service Intents"], "summary": "Force State the Service Intent based on its identifier", "operationId": "forceState"}}, "/ifd/api/serviceIntents/{id}/deploy": {"post": {"responses": {"200": {"description": "Ok", "schema": {"$ref": "#/definitions/ServiceIntentResponse"}}, "404": {"description": "Intent not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API deploys a created service intent based on ID.<p>Prerequisite: A Service Intent must exist with the given ID.</p>", "parameters": [{"description": "The unique identifier of the service intent", "format": "uuid", "required": true, "in": "path", "type": "string", "name": "id"}], "produces": ["application/json"], "tags": ["Service Intents"], "summary": "Deploy a Service Intent based on its identifier", "operationId": "deployIntent"}}}, "schemes": ["http", "https"], "tags": [{"name": "Service Intents", "description": "Creation, deletion and retrieval of intended L0 (CD Fixed) services<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version"}, {"name": "Service Intents v1", "description": "Creation, deletion and retrieval of intended L0 (CD Fixed) services (version 1)"}], "basePath": "/", "definitions": {"Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "CustomerCodeObject": {"type": "object", "properties": {"unorderedList": {"default": false, "type": "boolean", "description": "Attribute to specify that code list is unordered."}, "codes": {"items": {"type": "string"}, "type": "array", "description": "List of CustomerCode in decreasing order of priority"}}}, "Bfd": {"type": "object", "properties": {"transmitInterval": {"type": "string", "description": "The interval between transmitting BFD messages"}, "configured": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "receiveInterval": {"type": "string", "description": "The interval between receiving BFD messages"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of BFD for this endpoint"}, "role": {"enum": ["passive", "active", "any"], "type": "string", "description": "The role of BFD for this endpoint"}, "profileName": {"type": "string", "description": "The profile name associated with this set of BFD attributes"}, "operationalState": {"enum": ["up", "down"], "type": "string", "description": "The operational state of BFD for this endpoint"}}}, "MapperRule": {"type": "object", "properties": {"groupedTribSlots": {"items": {"items": {"type": "string"}, "type": "array"}, "type": "array"}, "tribPort": {"type": "string", "description": "Tributary port"}, "tribSlots": {"items": {"type": "string"}, "type": "array", "description": "Mapped tributary slots corresponding to tributary port"}}}, "ServiceIntentRoute": {"type": "object", "properties": {"data": {"description": "The Service Intent Route Data Resource.", "$ref": "#/definitions/ServiceIntentRouteData"}}}, "AdaptationPool": {"type": "object", "properties": {"poolAdapters": {"items": {"$ref": "#/definitions/Adapter"}, "type": "array"}, "memberAdaptationPools": {"items": {"type": "string"}, "type": "array", "description": "Reference(s) to 0 or more member AdaptationPool-s. Allows for nesting of AdaptationPools."}, "logicalRule": {"enum": ["xOR", "OR"], "type": "string", "description": "Restrict the number of active poolAdapters could be xOR or OR - default is OR"}, "name": {"type": "string", "description": "Name of the AdaptationPool. Unique in the scope of this TPE."}, "namingRules": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributes"}}}, "MsgsLastError": {"type": "object", "properties": {"errorCode": {"type": "string", "description": "Error code for last error"}, "errorSubCode": {"type": "string", "description": "Sub error code for last error"}}}, "ControlPlanePackage": {"type": "object", "properties": {"isMaster": {"default": false, "type": "boolean", "description": "Specifies if this end of the OSRP link is the master."}, "configuredLatencyType": {"enum": ["disc", "manual"], "type": "string", "description": "Describe whether the latency is discovered or  manual."}, "holdBackSdThresholds": {"type": "string", "description": "Holdback signal degrade threshold"}, "bwThresholdMode": {"enum": ["ADV_ALL", "AUTO", "MANUAL"], "type": "string", "description": "The default setting of OSRP link bandwidth threshold mode"}, "applicableRates": {"type": "string", "description": "Applicable Rates list"}, "commState": {"type": "string", "description": "State of the Hello protocol finite state machine."}, "bwThreshold": {"$ref": "#/definitions/BandwidthThreshold"}, "osrpCommChannel": {"enum": ["GCC0", "GCC1", "GCC2", "GCC12"], "type": "string", "description": "communication carrier."}, "bwLockOut": {"enum": ["NO", "YES"], "type": "string", "description": "Specifies if bandwidth lockout is enabled locally for the OSRP line."}, "commonId": {"type": "integer", "description": "Common identifier of the OSRP line", "format": "int32"}, "holdOffTimer": {"type": "integer", "description": "Line-Level hold-off timer ", "format": "int32"}, "ovpnIds": {"items": {"type": "string"}, "type": "array", "description": "The optical virtual private network ID list"}}}, "Diagnostic": {"type": "object", "properties": {"failThreshold": {"type": "number", "description": "(Optional) The pre-FEC BER higher threshold", "format": "double"}, "pmType": {"enum": ["PREFEC_BER", "PM_RESET_UNTIMED", "PM_RESET_BASELINE"], "type": "string"}, "diagnosticType": {"enum": ["PM_TEST"], "type": "string"}, "degradeThreshold": {"type": "number", "description": "(Optional) The pre-FEC BER lower threshold", "format": "double"}}}, "Bw": {"type": "object", "properties": {"available": {"type": "string", "description": "The available bandwidth left to be"}, "requested": {"type": "string", "description": "The requested bandwidth from the supporting layer, e.g. a dynamic tunnel requesting bandwidth from IP interface"}, "autoSize": {"enum": ["enable", "disable"], "type": "string", "description": "If true, the MPLS tunnel will be auto-sized by the NE"}, "used": {"type": "string", "description": "The current used bandwidth by all supported clients"}, "autoSizeLastResizeStartTime": {"type": "string", "description": "Start time of the last auto resize happened"}, "autoSizeIntervalMinutes": {"type": "string", "description": "The configured interval between auto-sizing attempts"}, "autoSizeLastResizeEndTime": {"type": "string", "description": "End time of the last auto resize happened"}, "maximum": {"type": "string", "description": "The maximum bandwidth configured for supported clients"}, "operational": {"type": "string", "description": "The current bandwidth being allocated from the supporting layer"}, "autoSizeLastResizeReason": {"type": "string", "description": "Reason of the last auto resize happened"}, "bookingFactor": {"type": "string", "description": "The booking factor of how much the bandwidth can be oversubscribed, e.g. on an IP interface"}, "minimum": {"type": "string", "description": "The minimum bandwidth configured for supported clients"}, "autoSizeLastResizeState": {"enum": ["success", "failure", "in_progress"], "type": "string", "description": "The state of the last auto-sizing attempt"}, "increment": {"type": "string", "description": "The configured bandwidth increment for auto-sizing of an MPLS tunnel"}, "autoSizeFailureAction": {"enum": ["none", "alarm", "mbb"], "type": "string", "description": "The action to be taken when auto-sizing fails: raise alarm, or make-before-break"}, "maxReservable": {"type": "string", "description": "The maximum reservable bandwidth allowed to be allocated to supported clients and it's calculated as bwBookingFactor x bwTotal"}, "profileName": {"type": "string", "description": "The name of the bandwidth profile associated with the dynamic tunnel endpoint"}, "total": {"type": "string", "description": "The total bandwidth allocated or allowed, e.g. the capacity of an IP interface"}, "autoSizingMode": {"enum": ["none", "cac", "utilization"], "type": "string", "description": "The configured auto-sizing mode"}, "unit": {"type": "string", "description": "The bandwidth unit that applies to all bandwidth attributes in this package. Available values: bps, kbps, mbps, gbps"}}}, "ProtocolVersion": {"type": "object", "properties": {"major": {"type": "integer", "format": "int32"}, "protocol": {"type": "string"}, "minor": {"type": "integer", "format": "int32"}}}, "HopEntry": {"type": "object", "properties": {"hopType": {"enum": ["strict", "loose"], "type": "string", "description": "The type of this hop"}, "hopAddress": {"type": "string", "description": "The IP-data interface address for this hop"}}}, "HttpEntity": {"type": "object", "properties": {"contentType": {"$ref": "#/definitions/Header"}, "contentLength": {"type": "integer", "format": "int64"}, "contentEncoding": {"$ref": "#/definitions/Header"}, "content": {"$ref": "#/definitions/InputStream"}, "streaming": {"default": false, "type": "boolean"}, "repeatable": {"default": false, "type": "boolean"}, "chunked": {"default": false, "type": "boolean"}}}, "NameValuePair": {"type": "object", "properties": {"name": {"type": "string"}, "value": {"type": "string"}}}, "ServiceIntentRequestData": {"type": "object", "properties": {"attributes": {"description": "Attributes of the Service Intent Request. All supported services are PointToPoint at this time.", "$ref": "#/definitions/ServiceIntentRequestAttributes"}}}, "LifeCycleRule": {"type": "object", "properties": {"autoDeletedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto deleted by the network and/or device (true) or must it explicitly be created (false)."}, "autoCreatedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto created by the network and/or device (true) or must it explicitly be created (false)."}}}, "MappingTableEntry": {"type": "object", "properties": {"ip": {"type": "string", "description": "The ip address."}, "direction": {"enum": ["RX", "TX", "RXTX"], "type": "string", "description": "The directionality defined in terms of RX/TX."}, "cos": {"type": "string", "description": "The class of service."}, "label": {"type": "string", "description": "The user label."}}}, "Note": {"type": "object", "properties": {"noteMsg": {"type": "string", "description": "The message left on the note left by the user"}, "lastUpdatedBy": {"type": "string", "description": "The name of the user that last edited the note"}, "lastUpdatedTime": {"type": "string", "description": "The time the note was last updated"}}}, "ServiceIntentResponseArray": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/ServiceIntentResponseData"}, "type": "array", "description": "Array containing all Service Intent Response Data obtained from the request."}}}, "DiversityObject": {"type": "object", "properties": {"siteDiverse": {"default": false, "type": "boolean", "description": "Attribute to specify site diversity."}, "existingService": {"items": {"type": "string"}, "type": "array", "description": "The existing service user label list."}, "nodeDiverse": {"default": false, "type": "boolean", "description": "Attribute to specify node diversity."}, "srlgDiverse": {"default": false, "type": "boolean", "description": "Attribute to specify SRLG diversity."}}}, "MplsPackage": {"type": "object", "properties": {"prevHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the previous hop of this MPLS tunnel"}, "subType": {"enum": ["TP", "TE"], "type": "string", "description": "TP refers to Transport Profile; TE refers to Traffic Engineering"}, "aisSessionAdminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of the AIS session for this MPLS tunnel"}, "mbbHistory": {"items": {"$ref": "#/definitions/MbbHistoryEntry"}, "type": "array"}, "shareSrlg": {"items": {"type": "string"}, "type": "array", "description": "A list of share SRLG values used by dynamic tunnel during provisioning."}, "TxTag": {"type": "string", "description": "The label used for traffic egressing from this endpoint"}, "facilityBypass": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is facility-bypass (FB) tunnel"}, "nextHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the next hop of this MPLS tunnel"}, "stickyLsp": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating a dynamic tunnel stays on the same path after change in required resources. Applicable to dynamic coRouted tunnels only."}, "tunnelType": {"enum": ["rsvp_ingress_corout", "rsvp_egress_corout", "rsvp_transit_corout", "static_ingress_corout", "static_egress_corout", "static_transit_corout", "static_ingress_unidir", "static_egress_unidir", "static_transit_unidir", "rsvp_ingress_unidir", "rsvp_transit_unidir", "static_ingress_assoc", "rsvp_ingress", "rsvp_transit", "rsvp_egress"], "type": "string", "description": "Tunnel type (static/dynamic, ingress/egress, corouted/unidrectional)"}, "bfd": {"description": "Holds BFD attributes for one LER TPE endpoint", "$ref": "#/definitions/Bfd"}, "optimization": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating if tunnel optimization should be attempted by the control-plane"}, "destTunnelId": {"type": "string", "description": "The ID of the far end of this MPLS tunnel"}, "fb": {"description": "MPLS FB tunnel attributes", "$ref": "#/definitions/MplsFb"}, "destIp": {"type": "string", "description": "The IP-data interface address of the far end of this MPLS tunnel"}, "fwdIn": {"type": "string", "description": "The inward ID in the forward direction (transit)"}, "localIfNamePrevHop": {"type": "string", "description": "The local interface name of the previous hop of this MPLS tunnel (6200 only)"}, "localIfNameNextHop": {"type": "string", "description": "The local interface name of the next hop of this MPLS tunnel (6200 only)"}, "frrSignaling": {"enum": ["on", "off"], "type": "string", "description": "Deprecated by frr package and will be removed later. Flag for fast re-route capability"}, "colorGroup": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "direction": {"enum": ["bidirectional", "ingress", "egress", "unidirectional"], "type": "string", "description": "Tunnel direction. Use value bidirectional or unidirectional only and TPE attribute stackDirection since ingress and egress are ambiguous"}, "lspId": {"type": "string", "description": "The numeric ID of this MPLS tunnel"}, "srcTunnelId": {"type": "string", "description": "The ID of the near end of this MPLS tunnel"}, "aisProfileName": {"type": "string", "description": "The name of the Alarm Indication Signal profile for this MPLS tunnel"}, "optimizationInterval": {"type": "integer", "description": "The interval between tunnel optimization attempts", "format": "int32"}, "excludeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "signaled": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is dynamic; otherwise it is static"}, "diversityResource": {"enum": ["unknown", "none", "link", "srlg", "node", "srlg_and_node", "srlg_and_link", "link_and_node", "srlg_or_node", "srlg_and_link_and_node"], "type": "string", "description": "The object upon which to base diversity for the backup tunnel"}, "aisRefreshTimerUnit": {"type": "string", "description": "The units for aisRefreshTimer field"}, "fixedTtl": {"type": "string", "description": "The time-to-live for tunnel hops (1-255)"}, "lspName": {"type": "string", "description": "The name of this MPLS tunnel"}, "autoBackup": {"enum": ["on", "off"], "type": "string", "description": "A flag to signal if auto-backup tunnel creation is on or off"}, "aisRefreshTimer": {"type": "integer", "description": "The interval between each AIS refresh for this MPLS tunnel", "format": "int32"}, "nextHopIfNum": {"type": "string", "description": "The interface number of the next hop of this MPLS tunnel"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string", "description": "The role at this point in the MPLS tunnel"}, "includeAll": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "prevHopIfNum": {"type": "string", "description": "The interface number of the previous hop of this MPLS tunnel"}, "explicitTunnel": {"description": "Holds data for the explicit tunnel path", "$ref": "#/definitions/TunnelPath"}, "includeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "diversityLevel": {"enum": ["strict", "maximal"], "type": "string", "description": "The diversity level of backup tunnel creation (maximal meaning best-effort)"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "A list of shared-risk link-group values assigned to this interface"}, "setupPriority": {"type": "string", "description": "The priority of the dynamic tunnel setup (0-7)"}, "revIn": {"type": "string", "description": "The inward ID in the reverse direction (transit)"}, "explicitRouteObject": {"items": {"type": "string"}, "type": "array", "description": "An ordered list of hop-by-hop IP-data interface addresses traversed by this dynamic MPLS tunnel"}, "revOut": {"type": "string", "description": "The outward ID in the reverse direction (transit)"}, "frr": {"description": "MPLS FRR details attributes", "$ref": "#/definitions/MplsFrr"}, "fwdOut": {"type": "string", "description": "The outward ID in the forward direction (transit)"}, "softPreemption": {"enum": ["enable", "disable"], "type": "string", "description": "If true, soft preemption is enabled. Applicable to dynamic TE unidirectional tunnels only."}, "optimizationIntervalUnit": {"type": "string", "description": "The unit for optimizationInterval"}, "RxTag": {"type": "string", "description": "The label used for traffic ingressing to this endpoint"}, "bw": {"description": "Holds bandwidth attributes for a dynamic tunnel endpoint or an IP interface", "$ref": "#/definitions/Bw"}, "holdPriority": {"type": "string", "description": "The priority of the dynamic tunnel steady-state (0-7)"}, "srcIp": {"type": "string", "description": "The IP-data interface address of the near end of this MPLS tunnel"}, "coRouted": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is co-routed; otherwise it is associated"}, "frrProfile": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "Deprecated by frr package and will be removed later. The fast re-route profile for this MPLS tunnel"}, "ctrlPlaneId": {"type": "string", "description": "A generated value to uniquely identify a particular tunnel instance"}}}, "BgpTransport": {"type": "object", "properties": {"peerPort": {"type": "string", "description": "Peer port reported in OPENCONFIRM and ESTABLISHED states."}, "localIp": {"type": "string", "description": "If update-source is configured then IP address of the interface. Rely on learned localIp if it is reported. Reported in OPENCONFIRM and ESTABLISHED states."}, "localPort": {"type": "string", "description": "Local port reported in OPENCONFIRM and ESTABLISHED states."}, "peerIp": {"type": "string", "description": "Peer Ip configured as part of BGP peer configuration."}}}, "ServiceIntentResponse": {"type": "object", "properties": {"data": {"description": "The Service Intent Response data resource.", "$ref": "#/definitions/ServiceIntentResponseData"}}}, "TrafficProfileParam": {"type": "object", "properties": {"selectFrom": {"items": {"type": "string"}, "type": "array", "description": "Alternate form of value attribute that permits a comma separated list of the choices available for selection."}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "name": {"type": "string", "description": "Name of attribute."}, "value": {"type": "string", "description": "Value of attribute."}, "location": {"enum": ["self", "intent", "farEnd", "immediateClientTpe"], "type": "string", "description": "If an input, where to find the attribute. If an output, where to set the attribute."}}}, "ServiceIntentRoutesData": {"type": "object", "properties": {"attributes": {"description": "Resource containing information pertaining to the routes of the Service Intent.", "$ref": "#/definitions/ServiceIntentRoutesAttributes"}, "type": {"type": "string", "description": "The object type: serviceIntentRoutes."}, "id": {"type": "string", "description": "Service Intent ID."}}}, "ServiceIntentRequestAttributes": {"type": "object", "properties": {"turnUpDateTime": {"type": "string", "description": "The optional time when the service is to be activated. If omitted the service shall be activated immediately (now).", "format": "date-time"}, "directionality": {"enum": ["bidirectional", "unidirectional"], "type": "string", "description": "Indicates if the FRE is unidirectional or bidirectional."}, "label": {"type": "string", "description": "The user label (not necessarily unique) of the service to be created and activated."}, "evcPortType": {"enum": ["MAPPED", "TRANSPARENT"], "type": "string", "description": "Convenient instruction about handling endpoint data (e.g. ETHERNET differentiates EPL from EVPL via CVID)."}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "aliasNames": {"items": {"$ref": "#/definitions/ServiceAlias"}, "type": "array", "description": "One or more alias names that identify the service to be created and activated."}, "turnDownDateTime": {"type": "string", "description": "The optional time when the service is to be de-activated. If omitted the service shall remain activated until explicit deletion.", "format": "date-time"}, "endPoints": {"items": {"$ref": "#/definitions/ServiceIntentEndPoint"}, "type": "array", "description": "All the endpoints involved in the definition of the service. Two instances must always be defined based on supported service type."}, "postActivationTests": {"$ref": "#/definitions/Diagnostics"}, "constraints": {"description": "Set of various constraints used to configure the service intent.", "$ref": "#/definitions/Constraints"}}}, "MbbHistoryEntry": {"type": "object", "properties": {"reason": {"type": "string", "description": "Reason of the make-before-break"}, "endTime": {"type": "string", "description": "End time of the make-before-break happened"}, "result": {"type": "string", "description": "Result of the make-before-break"}, "startTime": {"type": "string", "description": "Start time of the make-before-break happened"}}}, "MplsFrr": {"type": "object", "properties": {"frrProtected": {"default": false, "type": "boolean", "description": "If true, the tunnel is protected by fast re-route (FRR) on the headend TX MPLS CTP"}, "profileName": {"type": "string", "description": "The FRR profile name on the headend TX MPLS CTP"}, "localProtection": {"description": "Holds MPLS FRR local protection attributes for TX MPLS CTP", "$ref": "#/definitions/MplsFrrLocalProtection"}, "actualProtectionRoute": {"items": {"$ref": "#/definitions/MplsFrrProtectionRouteHop"}, "type": "array", "description": "Actual FRR protection route on the headend TX MPLS CTP"}}}, "Indexes": {"type": "object"}, "Location": {"type": "object", "properties": {"address": {"items": {"$ref": "#/definitions/LocationAddress"}, "type": "array", "description": "The location is comprised of one or more address datums. For example, many cards are identified with with both a shelf and a slot address."}, "mgmtAccess": {"enum": ["tl1", "saos"], "type": "string", "description": "The management access used to specify or discover the location."}}}, "TpeCfmPackage": {"type": "object", "properties": {"mep": {"items": {"$ref": "#/definitions/MepEntry"}, "type": "array", "description": "Each entry holds information about one Maintenance Endpoint configured on this TPE"}, "cfmServiceName": {"type": "string", "description": "The name of the CFM service"}}}, "ServiceIntentRouteAttributes": {"type": "object", "properties": {"aToZRoute": {"items": {"$ref": "#/definitions/ServiceIntentRouteLink"}, "type": "array"}, "supportingRoadmLines": {"items": {"type": "string"}, "type": "array"}, "zToARoute": {"items": {"$ref": "#/definitions/ServiceIntentRouteLink"}, "type": "array"}, "sharedRiskLinkGroupNames": {"items": {"type": "string"}, "type": "array"}}}, "ServiceIntentRoutesAttributes": {"type": "object", "properties": {"routes": {"description": "Service Intent Route.", "$ref": "#/definitions/ServiceIntentRoute"}}}, "DeviceAlias": {"type": "object", "properties": {"aliasType": {"enum": ["TID", "IP_ADDRESS", "MAC_ADDRESS", "PLANNING_ID", "CUSTOM"], "type": "string", "description": "The type of this device alias instance."}, "patternFormat": {"type": "string", "description": "An optional regex pattern for custom alias."}, "name": {"type": "string", "description": "The text representation of this device alias."}}}, "StatusLine": {"type": "object", "properties": {"reasonPhrase": {"type": "string"}, "protocolVersion": {"$ref": "#/definitions/ProtocolVersion"}, "statusCode": {"type": "integer", "format": "int32"}}}, "TtiPackage": {"type": "object", "properties": {"ttiTx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttribute"}, "traceFailedMode": {"enum": ["NULL", "ALARM", "ALARM_FAIL_LINE"], "type": "string"}, "ttiExpectedRx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttribute"}, "ttiRx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttribute"}}}, "DiagnosticStatus": {"type": "object", "properties": {"pmType": {"enum": ["PREFEC_BER", "PM_RESET_UNTIMED", "PM_RESET_BASELINE"], "type": "string"}, "diagnosticType": {"enum": ["PM_TEST"], "type": "string"}, "state": {"enum": ["WAITING_FOR_ACTIVATED_SERVICE", "WAITING_FOR_SERVICE_TRAFFIC", "IN_PROGRESS", "ERROR", "PASS", "FAIL", "MARGINAL"], "type": "string", "description": "State of the Diagnostic Test"}}}, "NetworkElement": {"type": "object", "properties": {"siteName": {"type": "string", "description": "The site name of the NE. May be a CLLI or some other customer defined format."}, "name": {"type": "string", "description": "The name/tid of the Network Element (e.g. OTTAWA_001)."}, "planningId": {"type": "string", "description": "The opaque id provided by a planning tool interacting with IFD."}}}, "TerminationPointName": {"type": "object", "properties": {"deviceAlias": {"$ref": "#/definitions/DeviceAlias"}, "location": {"description": "A location object describes the location an entity in the network (Equipment, FRE, TPE, etc.). The amount of address data required to precisely reflect the position of an entity in the network is dependent on the entity in question (i.e. TPEs typically require more information then equipment). Location is typically used in conjunction with a network element identifier to uniquely identify position within a network.", "$ref": "#/definitions/Location"}}}, "AdjacencyPackage": {"type": "object", "properties": {"adjacencyMechanism": {"type": "string", "description": "The attribute defining the adjacency mechanism used."}, "provisionedRemoteTagFormat": {"type": "string", "description": "The format of the remote provisioning adjacency tag."}, "remoteTagFormat": {"type": "string", "description": "The format of the remote adjacency tag."}, "remoteTag": {"type": "string", "description": "The actual remote tag as discovered by the network element."}, "linkAttributes": {"description": "This package stores information of Link.", "$ref": "#/definitions/LinkAttributes"}, "provisionedRemoteTag": {"type": "string", "description": "The provisioned remote tag is the expected destination defined by the user that adheres to the remoteTagFormat."}, "topologySourceTag": {"type": "string", "description": "The tag representing the topological state. This could be 'DISCOVERED', for example."}, "localTag": {"type": "string", "description": "The actual tag of the originating network element."}, "localTagFormat": {"type": "string", "description": "The format of the local adjacency tag."}, "adjacencyType": {"type": "string", "description": "This field delimits the adjacency type between two network elements (Ex: LIM, LINE, etc...)."}}}, "LinkAttributes": {"type": "object", "properties": {"userLabel": {"type": "string", "description": "The user label (not necessarily unique) of the topology to be created."}, "note": {"$ref": "#/definitions/Note"}, "description": {"type": "string", "description": "Short description of the topology to be created."}, "tags": {"items": {"type": "string"}, "type": "array", "description": "Reference to 3rd Party Network involved in this topology, can be re-used for other purposes in future."}}}, "NamingRules": {"type": "object", "properties": {"potentialGrowth": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "total": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "used": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}}}, "Termination": {"type": "object", "properties": {"connectionRulesInOwnLayer": {"items": {"$ref": "#/definitions/ConnectionRule"}, "type": "array"}}}, "ColorGroup": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color group"}, "colors": {"items": {"$ref": "#/definitions/ColorEntry"}, "type": "array"}, "name": {"type": "string", "description": "The name of the color group"}}}, "BgpAfiSafi": {"type": "object", "properties": {"grCapability": {"enum": ["enabled", "disabled"], "type": "string", "description": "GR capability"}, "name": {"enum": ["IPV4_UNICAST", "IPV4_LABELED_UNICAST"], "type": "string", "description": "Supported afi-safi names."}, "nextHopSelf": {"description": "This stores BGP Afi Safi NextHopSelf related information.", "$ref": "#/definitions/AfiSafiNextHopSelf"}, "activated": {"default": false, "type": "boolean", "description": "true if activated otherwise false"}, "rrEnabled": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}, "prefixList": {"description": "This stores BGP Afi Safi Prefix List related information.", "$ref": "#/definitions/AfiSafiPrefixList"}, "orf": {"description": "This stores BGP Afi Safi Orf related information.", "$ref": "#/definitions/AfiSafiOrf"}}}, "ResiliencyTopologyPackage": {"type": "object", "properties": {"switchTpeId": {"type": "string", "description": "Switch port client TPE"}, "resilientFreId": {"type": "string", "description": "Resilient nodal fre id"}}}, "ServiceIntentRouteData": {"type": "object", "properties": {"attributes": {"description": "Attributes of the Service Intent Route.", "$ref": "#/definitions/ServiceIntentRouteAttributes"}, "type": {"type": "string", "description": "The object type: serviceIntentRoute."}, "id": {"type": "string", "description": "Service Intent ID."}}}, "BgpPackage": {"type": "object", "properties": {"peerFsmEstablishedTransitions": {"type": "string", "description": "Peer Fsm established transitions."}, "peerBgpIdentifier": {"type": "string", "description": "BGP identifier of the peer. Learned only in OPEN CONFIRM and ESTABLISHED states."}, "peerNegotiatedBGPVersion": {"type": "string", "description": "Learned only in OPENCONFIRM and ESTABLISHED states."}, "rr": {"description": "This package stores BGP route reflector related information.", "$ref": "#/definitions/BgpRr"}, "bfd": {"description": "Holds BFD attributes for BGP TPE endpoint", "$ref": "#/definitions/BgpBfd"}, "peerAs": {"type": "integer", "description": "Autonomous System number configured for the peer.", "format": "int64"}, "afiSafi": {"items": {"$ref": "#/definitions/BgpAfiSafi"}, "type": "array"}, "peerFsmEstablishedTime": {"type": "string", "description": "Peer Fsm established time in seconds."}, "msgs": {"description": "This package stores BGP message related information.", "$ref": "#/definitions/BgpMsgs"}, "timers": {"description": "This package stores BGP time related information.", "$ref": "#/definitions/BgpTimers"}, "peerState": {"enum": ["idle", "connect", "active", "opensent", "openconfirm", "established"], "type": "string", "description": "BGP states"}, "peerType": {"enum": ["internal", "external"], "type": "string", "description": "internal/external depending on peerAs number is same as local or different."}, "transport": {"description": "This package stores BGP transport related information.", "$ref": "#/definitions/BgpTransport"}}}, "AfiSafiPrefixList": {"type": "object", "properties": {"direction": {"enum": ["in", "out"], "type": "string", "description": "Direction to filter BGP advertisements."}, "name": {"type": "string", "description": "Name to filter BGP advertisements."}}}, "AdditionalAttributes": {"type": "object"}, "Capacity": {"type": "object", "properties": {"layer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "capacity": {"type": "integer", "description": "Number of potential client instances or usage instances", "format": "int32"}, "capacityCalculationRule": {"type": "string", "description": "Core logic that will be used on capacity calculation"}, "source": {"type": "string", "description": "Source of the capacity"}, "capacitySize": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacitySize"}, "maxLimit": {"type": "integer", "description": "Maximum potential client instances", "format": "int32"}, "capacityClass": {"enum": ["discrete", "continuous"], "type": "string", "description": "Discrete \u2013 b/w space is treated as a list of discrete values; this is default. Continuous \u2013 b/w space is treated as continuous segment, in the range of low/upper."}}}, "DiagnosticStatuses": {"type": "object", "properties": {"diagnosticStatuses": {"items": {"$ref": "#/definitions/DiagnosticStatus"}, "type": "array", "description": "A status list of performance monitoring (PM) and diagnostic tests"}}}, "ServiceIntentRouteLink": {"type": "object", "properties": {"layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "directionality": {"enum": ["UNIDIRECTIONAL", "BIDIRECTIONAL"], "type": "string", "description": "Describes the directionality of the routes traffic flow."}, "zPoint": {"description": "Specifies the location of a link endpoint.", "$ref": "#/definitions/ServiceIntentRouteLinkEndPoint"}, "aPoint": {"description": "Specifies the location of a link endpoint.", "$ref": "#/definitions/ServiceIntentRouteLinkEndPoint"}}}, "InputStream": {"type": "object"}, "HeaderElement": {"type": "object", "properties": {"parameters": {"items": {"$ref": "#/definitions/NameValuePair"}, "type": "array"}, "parameterCount": {"type": "integer", "format": "int32"}, "name": {"type": "string"}, "value": {"type": "string"}}}, "MappingInteractionRule": {"type": "object", "properties": {"segmentBoundaryRule": {"enum": ["mustNotOverlap"], "type": "string", "description": "The default is mustNotOverlap."}}}, "CapacitySize": {"type": "object", "properties": {"pattern": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacityPattern"}, "unit": {"type": "string", "description": "unit for size string value"}, "size": {"items": {"type": "string"}, "type": "array", "description": "Capacity size to be interpreted with CapacityPattern"}}}, "ServiceIntentRequest": {"type": "object", "properties": {"data": {"description": "Resource to specify intent to design and fulfill one service.", "$ref": "#/definitions/ServiceIntentRequestData"}}}, "LayerTermination": {"type": "object", "properties": {"adminWt": {"type": "number", "description": "Administrative weight which specifies the level of importance given to the OSRP link", "format": "double"}, "resiliencyTopologyPackage": {"description": "This package stores resiliency topology information.", "$ref": "#/definitions/ResiliencyTopologyPackage"}, "ttiPackage": {"description": "This package stores Tti information.", "$ref": "#/definitions/TtiPackage"}, "powerPackage": {"description": "This package stores power related information.", "$ref": "#/definitions/PowerPackage"}, "structureType": {"enum": ["dual_port", "dual_port_client_mapping", "exposed_lone_cp", "lone_adapter", "full_layer_optional_exposed_cp", "full_layer_optional_exposed_cp_and_tcp", "full_layer_fixed", "exposed_tcp", "concatenating_adapter", "concatenatable_exposed_tcp", "layer_termination_structure_type_unknown", "concatenatable_fixed", "exposed_TCP_and_CP"], "type": "string", "description": "Identifies the internal structure of the layer termination."}, "mplsPackage": {"description": "This package stores MPLS tunnel information.", "$ref": "#/definitions/MplsPackage"}, "layerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "boundaries": {"items": {"type": "string"}, "type": "array", "description": "Array of strings to track boundaries of Layer Termination"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of the layer termination."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackage"}, "cfmPackages": {"items": {"$ref": "#/definitions/TpeCfmPackage"}, "type": "array", "description": "Holds data related to CFM services configured on an Ethernet service"}, "terminationState": {"enum": ["layer_termination_cannot_terminate", "layer_termination_not_terminated", "terminated_server_to_client_flow", "terminated_client_to_server_flow", "terminated_bidirectional", "layer_termination_permanently_terminated", "termination_state_unknown"], "type": "string", "description": "Whether and how this LayerTermination is terminated."}, "signalIndex": {"description": "Attribute representing a signal index (e.g. channel information, wavelength, etc).", "$ref": "#/definitions/SignalIndex"}, "controlPlanePackage": {"description": "The northbound model of Control Plane Package.", "$ref": "#/definitions/ControlPlanePackage"}, "latency": {"type": "number", "description": "Indicates the delay in microseconds.", "format": "double"}, "dynamicLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "layerProtocol": {"description": "A LayerProtocol instance is used for controlling termination and monitoring functionality. Also, it is used for controlling the adaptation (i.e. encapsulation and/or multiplexing of client signal), tandem connection monitoring, traffic conditioning and/or shaping functionality at an intermediate point along a connection.", "$ref": "#/definitions/LayerProtocol"}, "adjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackage"}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "trafficProfiles": {"items": {"$ref": "#/definitions/TrafficProfile"}, "type": "array", "description": "Traffic profile characteristics used to data-drive provisioning workflows."}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/BgpPackage"}, "active": {"default": false, "type": "boolean", "description": "Whether or not an inactive layer appears to be absent from the layer stack."}, "nativeName": {"type": "string", "description": "The name of the TPE that is native to the network element."}, "g8032Package": {"description": "This package stores information about the G8032 ring", "$ref": "#/definitions/G8032Package"}, "retainedAdjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackage"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributes"}, "serviceLabel": {"type": "string", "description": "The service-identifiying label"}, "manualAdjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackage"}, "operationalState": {"enum": ["up", "down", "link_flapping", "abnormal"], "type": "string", "description": "The operational (actual) state of the layer termination."}, "nativeLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "bundleIds": {"items": {"type": "string"}, "type": "array", "description": "List of up to 20 protection bundles to which the OSRP link belongs"}}}, "LayeredAttribute": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributes"}, "layer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "loopbackPackage": {"description": "This package stores loopback information", "$ref": "#/definitions/LoopbackPackage"}}}, "RouteObject": {"type": "object", "properties": {"nodeName": {"type": "string", "description": "The Node/ROADM/Network Construct Name. The routeObjectType attribute must be set to NODE_NAME."}, "siteName": {"type": "string", "description": "The Site Name. The routeObjectType attribute must be set to SITE_NAME."}, "snc": {"type": "string", "description": "SNC id. The routeObjectType attribute must be set to SNC."}, "controlPlane": {"enum": ["L_0"], "type": "string", "description": "Technology layer of the control plane."}, "sncg": {"type": "string", "description": "SNCG id. The routeObjectType attribute must be set to SNCG."}, "frequency": {"type": "string", "description": "L0 frequency. The routeObjectType attribute must be set to FREQUENCY."}, "sncgState": {"enum": ["IS", "OOS"], "type": "string", "description": "Attribute defining the SNCG State."}, "routeObjectType": {"enum": ["TERMINATION_POINT_NAME", "ROADM_LINE_NAME", "NODE_NAME", "SITE_NAME", "CONTROL_PLANE", "FREQUENCY", "SNCG", "SNC", "SNCG_STATE"], "type": "string", "description": "The attribute defining the route type."}, "terminationPointName": {"description": "Specifies the location of an endpoint.", "$ref": "#/definitions/TerminationPointName"}, "roadmLineName": {"type": "string", "description": "The ROADM Line Name. The routeObjectType attribute must be set to ROADM_LINE_NAME."}}}, "LoopbackPackage": {"type": "object", "properties": {"loopbackWavelength": {"type": "string", "description": "Wavelength of the loopback test; taken directly from the value of the TL1 LPBKWVL field"}, "loopbackStatus": {"type": "string", "description": "Status of the test; taken directly from the value of the TL1 LPBKSTATUS field."}}}, "TtiAttribute": {"type": "object", "properties": {"dapi": {"type": "string", "description": "String to hold 'dapi' attribute"}, "operator": {"type": "string", "description": "String to hold 'operator' attribute"}, "sapi": {"type": "string", "description": "String to hold 'sapi' attribute"}}}, "MplsFbProtectedTunnel": {"type": "object", "properties": {"srcIp": {"type": "string", "description": "Source IP address of the tunnel protected by this FB tunnel"}, "destIp": {"type": "string", "description": "Destination IP address of the tunnel protected by this FB tunnel"}, "role": {"enum": ["ingress", "transit"], "type": "string", "description": "The role at this point of the MPLS tunnel protected by this FB tunnel"}, "name": {"type": "string", "description": "Name of the tunnel protected by this FB tunnel"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "MplsFrrLocalProtection": {"type": "object", "properties": {"protectionFbName": {"type": "string", "description": "Protection FB tunnel name"}, "protectionAvailable": {"default": false, "type": "boolean", "description": "True when the protection is available on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}}}, "SignalIndex": {"type": "object", "properties": {"index": {"type": "string", "description": "The signal index. Indicates a time slot."}, "wavelengthMax": {"type": "string", "description": "The maximum signal wavelength."}, "phy_index": {"type": "string", "description": "The physical index. Indicates a time slot."}, "width": {"type": "string", "description": "The signal width."}, "maxFreq": {"type": "string", "description": "The maximum signal frequency."}, "odu4_index": {"type": "string", "description": "The odu4 index. Indicates a time slot or tributary port number."}, "oduCn_index": {"type": "string", "description": "The oduCn index. Indicates a time slot or tributary port number."}, "channels": {"items": {"type": "string"}, "type": "array", "description": "Indicates the list of discrete channels utilized e.g. tributary slots on broadband cards. Plans are to utilize this generically for any list of discrete list of signals."}, "eth_index": {"type": "string", "description": "The eth index."}, "odu3_index": {"type": "string", "description": "The odu3 index. Indicates a time slot or tributary port number."}, "odu2_index": {"type": "string", "description": "The odu2 index. Indicates a time slot or tributary port number."}, "frequency": {"type": "string", "description": "The central signal frequency."}, "minFreq": {"type": "string", "description": "The minimum signal frequency."}, "ots_index": {"type": "string", "description": "The ots index. Indicates a time slot."}, "wavelength": {"type": "string", "description": "The signal wavelength (nm)."}, "mappingTable": {"items": {"$ref": "#/definitions/MappingTableEntry"}, "type": "array"}, "indexes": {"description": "Map of index attributes to represent more than one indexes per LT. Plan is to remove above odu2_index, odu4_index & oduCn_index signal attributes in future and use this one", "$ref": "#/definitions/Indexes"}, "wavelengthMin": {"type": "string", "description": "The minimum signal wavelength."}, "mgmtMcId": {"type": "string", "description": "The management identifier of the media channel"}}}, "Y1731Attributes": {"type": "object", "properties": {"count": {"type": "integer", "description": "The count of the message being transmitted", "format": "int32"}, "remoteMepMacAddress": {"type": "string", "description": "The MAC address of the remote MEP"}, "frameSize": {"type": "string", "description": "The frame size of the messages being transmitted (numeric), if applicable to this measurement"}, "interval": {"type": "string", "description": "The interval between transmitting each message (e.g.: 1)"}, "enabled": {"default": false, "type": "boolean", "description": "True when the particular measurement is enabled"}, "intervalUnit": {"type": "string", "description": "The unit of interval between transmitting each message (e.g.: seconds)"}, "priority": {"type": "string", "description": "The priority of the messages being transmitted (0-7)"}, "repeatDelay": {"type": "integer", "description": "The repeat delay of the message being transmitted", "format": "int32"}, "remoteMepId": {"type": "string", "description": "The ID of the remote MEP"}, "iterate": {"type": "integer", "description": "The iteration number of the message being transmitted", "format": "int32"}}}, "Constraints": {"type": "object", "properties": {"excludeRouteObjects": {"items": {"$ref": "#/definitions/RouteObject"}, "type": "array", "description": "List of Route Objects to be excluded from the route calculation."}, "customerCode": {"description": "Customer Code constraint as applicable for Design Request", "$ref": "#/definitions/CustomerCodeObject"}, "diverseObjects": {"description": "Resource to define objects diverse from the route calculation.", "$ref": "#/definitions/DiversityObject"}, "includeRouteObjects": {"items": {"$ref": "#/definitions/RouteObject"}, "type": "array", "description": "List of Route Objects to be included in the route calculation."}, "coRoutedService": {"type": "string", "description": "Co-routes the service with an existing service."}}}, "NameToCapacityMappingRules": {"type": "object", "properties": {"capacityUnit": {"type": "string", "description": "Unit of the capacity."}, "mapperRule": {"items": {"$ref": "#/definitions/MapperRule"}, "type": "array"}, "mapping": {"enum": ["FIXED", "FLEXIBLE", "FLEXIBLE_GROUPED", "ALL"], "type": "string", "description": "Identifies namespace to capacity mapping."}, "noOfUnits": {"type": "integer", "description": "Number 1-80 in switching and broadband case", "format": "int32"}, "namingUnit": {"type": "string", "description": "Unit of namespace."}, "relationType": {"enum": ["ONE_TO_ONE", "ONE_TO_MANY"], "type": "string", "description": "Relation type"}}}, "MepEntry": {"type": "object", "properties": {"mepId": {"type": "string", "description": "The ID of the MEP"}, "mepType": {"enum": ["UP", "DOWN"], "type": "string", "description": "The type of the MEP, up or down"}, "ccmPriority": {"type": "string", "description": "Priority of the CC messages (0-7)"}, "ccmTransmitState": {"enum": ["ON", "OFF"], "type": "string", "description": "The transmission state of CCM (on/off)"}, "mepAdminState": {"enum": ["ENABLED", "DISABLED"], "type": "string", "description": "The administrative state (enabled/disabled) of the MEP"}, "mepMacAddress": {"type": "string", "description": "The MAC address of the MEP"}, "dmm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731Attributes"}, "vlanId": {"type": "string", "description": "The VLAN ID of the MEP"}, "slm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731Attributes"}, "lmm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731Attributes"}, "remoteMepId": {"type": "string", "description": "The ID of the remote MEP"}}}, "LayerProtocol": {"type": "object", "properties": {"termination": {"description": "The specification of the layer protocol termination (including framing, modulation etc). For example the specification of the function that takes a MAC frame and extracts the content (removing the MAC address in the process).", "$ref": "#/definitions/Termination"}, "accessPoint": {"$ref": "#/definitions/AccessPoint"}, "connectionPoint": {"$ref": "#/definitions/ConnectionPoint"}, "layeredAttributes": {"items": {"$ref": "#/definitions/LayeredAttribute"}, "type": "array"}, "adaptationPools": {"items": {"$ref": "#/definitions/AdaptationPool"}, "type": "array"}}}, "BandwidthThreshold": {"type": "object", "properties": {"ODUFLEXRSZ": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (in Bps) for Resizable ODU Flex advertised for a link."}, "ODU2E": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU2E) advertised for a link."}, "ODUFLEXNRSZ": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (in Bps) for Non-Resizable ODU Flex advertised for a link."}, "ODU4": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU4) advertised for a link."}, "ODU2": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU2) advertised for a link."}, "ODU3": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU3) advertised for a link."}, "ODU0": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU0) advertised for a link."}, "ODU1": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU1) advertised for a link."}}}, "Header": {"type": "object", "properties": {"elements": {"items": {"$ref": "#/definitions/HeaderElement"}, "type": "array"}, "name": {"type": "string"}, "value": {"type": "string"}}}, "AfiSafiNextHopSelf": {"type": "object", "properties": {"configured": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}, "excludeReflectedRoutes": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}}}, "BgpRr": {"type": "object", "properties": {"peerRole": {"enum": ["client", "routeReflector"], "type": "string", "description": "Role of the peer"}, "role": {"enum": ["client", "routeReflector"], "type": "string", "description": "self role"}, "peerClusterId": {"type": "string", "description": "The cluster-id to which peer belongs if it is configured as RR client."}}}, "BgpTimers": {"type": "object", "properties": {"peerNegotiatedKeepAliveTime": {"type": "string", "description": "Peer negotiation keep alive time in seconds"}, "peerMinRouteAdvertisementInterval": {"type": "string", "description": "Peer minimum advertised intervel in seconds"}, "peerConfiguredHoldTime": {"type": "string", "description": "Peer configured hold time in seconds"}, "peerConnectRetryInterval": {"type": "string", "description": "Peer connection retry intervel in seconds."}, "peerConfiguredKeepAliveTime": {"type": "string", "description": "Peer configured keep alive time in seconds"}, "peerMinASOriginationInterval": {"type": "string", "description": "Peer minimum AS origination intervel in seconds"}, "peerNegotiatedHoldTime": {"type": "string", "description": "Peer negotiation hold time in seconds"}}}, "BgpMsgs": {"type": "object", "properties": {"peerInTotalMessages": {"type": "string", "description": "Total Number of peer messages"}, "peerInUpdateElapsedTime": {"type": "string", "description": "Peer updated elapsed time in seconds"}, "peerOutUpdates": {"type": "string", "description": "Number of peer out updates"}, "peerInUpdates": {"type": "string", "description": "Number of peer in updates"}, "lastError": {"description": "This stores BGP Message Last Error related information.", "$ref": "#/definitions/MsgsLastError"}, "peerOutTotalMessages": {"type": "string", "description": "Total number of peer out messages"}}}, "ServiceAlias": {"type": "object", "properties": {"aliasType": {"enum": ["CLFI", "DISTINGUISHED_NAME", "MANAGEMENT_NAME"], "type": "string", "description": "<br/>CLFI - Common Language Facility code<br/>DISTINGUISHED_NAME - Distinguished Alias Name<br/>MANAGEMENT_NAME - the CESD VS name"}, "name": {"type": "string", "description": "The free string name value associated with selected aliasType."}}}, "TunnelPath": {"type": "object", "properties": {"hops": {"items": {"$ref": "#/definitions/HopEntry"}, "type": "array"}, "pathName": {"type": "string", "description": "The name of this explicit tunnel path"}}}, "PhotonicSpectrumPackage": {"type": "object", "properties": {"minFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the previous NMC."}, "signalBandWidth10DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 10 dBm less than peak power."}, "maxFreqDeadBand": {"type": "string", "description": "Upper dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "targetMinFreq": {"type": "string", "description": "Allows the automatic adjustment of the MINFREQ when any associated NMCTP are deleted. Default is MINFREQ (no target lower frequency)."}, "signalBandWidth3DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 3 dBm less than peak power."}, "minFreqDeadBand": {"type": "string", "description": "Lower dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "maxFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the next NMC."}, "frequency": {"type": "string", "description": "The central signal frequency."}, "freqResolution": {"type": "string", "description": "Indicates the recurring frequency step that is allowed to be configured on the transponder."}, "maxFreq": {"type": "string", "description": "The maximum signal frequency."}, "targetMaxFreq": {"type": "string", "description": "Allows the automatic adjustment of the MAXFREQ when any associated NMCTP are deleted. Default is MAXFREQ (no target upper frequency)."}, "wavelength": {"type": "string", "description": "The central signal wavelength."}, "wavelengthGrid ": {"type": "string", "description": "A hexadecimal number representing the vector of wavelengths that can be used by this SNC. Each bit set within the number indicates which wavelength is currently configured"}, "minFreq": {"type": "string", "description": "The minimum signal frequency."}}}, "HttpResponse": {"type": "object", "properties": {"locale": {"$ref": "#/definitions/Locale"}, "statusLine": {"$ref": "#/definitions/StatusLine"}, "entity": {"$ref": "#/definitions/HttpEntity"}, "params": {"$ref": "#/definitions/HttpParams"}, "protocolVersion": {"$ref": "#/definitions/ProtocolVersion"}, "allHeaders": {"items": {"$ref": "#/definitions/Header"}, "type": "array"}}}, "TrafficProfile": {"type": "object", "properties": {"trafficParams": {"items": {"$ref": "#/definitions/TrafficProfileParam"}, "type": "array", "description": "List of traffic parameters that must be used as input in the use-case."}, "routeConstraints": {"description": "Defines the traffic profile route characteristics used to data-drive provisioning workflows.", "$ref": "#/definitions/RouteConstraints"}, "inputParams": {"items": {"$ref": "#/definitions/TrafficProfileParam"}, "type": "array", "description": "List of input parameters to be matched to derive the correct trafficProfile for the use-case."}, "outputs": {"items": {"$ref": "#/definitions/TrafficProfileParam"}, "type": "array", "description": "List of outputs that are expected in the use-case."}}}, "ServiceIntentRoutes": {"type": "object", "properties": {"data": {"description": "The Service Intent Routes Data Resource.", "$ref": "#/definitions/ServiceIntentRoutesData"}}}, "BgpBfd": {"type": "object", "properties": {"transmitInterval": {"type": "string", "description": "The interval between transmitting BFD messages"}, "configured": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "mhop": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "receiveInterval": {"type": "string", "description": "The interval between receiving BFD messages"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of BFD for this endpoint"}, "role": {"enum": ["passive", "active", "any"], "type": "string", "description": "The role of BFD for this endpoint"}, "profileName": {"type": "string", "description": "The profile name associated with this set of BFD attributes"}, "operationalState": {"enum": ["up", "down"], "type": "string", "description": "The operational state of BFD for this endpoint"}}}, "CapacityPattern": {"type": "object", "properties": {"type": {"enum": ["LIST", "RANGE", "POOL", "PERCENTAGE"], "type": "string", "description": "Identifies Pattern type"}, "format": {"type": "string", "description": "An optional regex expression or format string describing how to parse the size string in case of multiple values, e.g. CIR:EIR"}}}, "ServiceIntentRouteLinkEndPoint": {"type": "object", "properties": {"slot": {"type": "string", "description": "Optional slot location identifier."}, "shelf": {"type": "string", "description": "Optional shelf location identifier."}, "wavelength": {"type": "string", "description": "The wavelength location identifier."}, "networkElementName": {"type": "string", "description": "Identification of the node using its natural name from the NE NBI protocol (e.g. TID for TL1, sysName for SAOS)."}, "port": {"type": "string", "description": "The port location identifier."}}}, "ConnectionRule": {"type": "object", "properties": {"immediateClientPotential": {"type": "string", "description": "If describing connectionRulesInAdaptationLayer: names of TPESpec of immediate client TPE. If describing connectionRulesInOwnLayer: null (not relevant). If describing mustConnectInternally: null (not relevant)."}, "immediateDualPortPeerPotential": {"type": "string", "description": "If describing connectionRulesInAdaptationLayer: names of TPESpec of dual port peer TPE. If describing connectionRulesInOwnLayer: null (not relevant). If describing mustConnectInternally: null (not relevant)."}, "targetLayer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "rule": {"enum": ["mustConnectInternally", "clientExternalFGRule", "connectsExternally", "toServerUsingClientExternalFGRule", "externalFGRule", "externalFGRuleViaImmediateClientPotential", "toDualPortPeerUsingClientExternalFGRule", "transitionalAtCreationTime"], "type": "string", "description": "toServerUsingClientExternalFGRule matchers server's clientExternalFGRule"}}}, "MplsFb": {"type": "object", "properties": {"excludeIp": {"type": "string", "description": "IP address excluded from the FB tunnel path"}, "protectedTunnels": {"items": {"$ref": "#/definitions/MplsFbProtectedTunnel"}, "type": "array"}, "frrAutoCreated": {"default": false, "type": "boolean", "description": "The flag indicating whether the FB tunnel is auto created by FRR"}, "protectedInterface": {"type": "string", "description": "Name of the interface being protected by the FB tunnel"}}}, "PowerPackage": {"type": "object", "properties": {"txMaxPower": {"type": "string", "description": "Maximum transmitter power level (dBm)."}, "rxActualPower": {"type": "string", "description": "Current receiver power (dBm)."}, "rxMinPower": {"type": "string", "description": "Minimum receiver power level (dBm)."}, "txActualPower": {"type": "string", "description": "Current transmitter power (dBm)."}, "txMinPower": {"type": "string", "description": "Minimum transmitter power level (dBm)."}, "rxMaxPower": {"type": "string", "description": "Maximum receiver power level (dBm)."}}}, "ServiceIntentResponseData": {"type": "object", "properties": {"attributes": {"description": "Attributes of the Service Intent Response.", "$ref": "#/definitions/ServiceIntentResponseAttributes"}, "type": {"type": "string", "description": "The type of the service intent."}, "id": {"type": "string", "description": "The unique identifier of the service intent."}}}, "Adapter": {"type": "object", "properties": {"nameToCapacityMappingRules": {"items": {"$ref": "#/definitions/NameToCapacityMappingRules"}, "type": "array"}, "poolAdapterType": {"type": "string", "description": "The type for the adapter."}, "plannedCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "mappingInteractionRules": {"items": {"$ref": "#/definitions/MappingInteractionRule"}, "type": "array", "description": "The specification of the interaction between the support for different client layer protocols signals."}, "usedCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "connectionRulesInAdaptationLayer": {"items": {"$ref": "#/definitions/ConnectionRule"}, "type": "array", "description": "Directions of how to instantiate client TPE(s) for this adapter, including indirect (client over client) client TPE instantiation."}, "namingRules": {"items": {"$ref": "#/definitions/NamingRules"}, "type": "array"}, "adaptsToLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackage"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRule"}, "continuousAdapterRulesPackage": {"description": "This package stores various rules to be considered when instantiating a new TPE utilizing continuous b/w.", "$ref": "#/definitions/ContinuousAdapterRulesPackage"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "potentialAdapterCapacities": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array", "description": "Total potential capacity of this Adapter."}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "cardinality": {"type": "string", "description": "Number of possible potential TPEs. Can be a numeric (eg '1', '96', '1000', ...) or can be categorical (eg 'indirect')."}, "totalCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributes"}, "name": {"type": "string", "description": "Name of the Adapter. Unique in the scope of this TPE."}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "eFreTerminationState": {"enum": ["hapFre_terminated", "hapFre_not_terminated"], "type": "string", "description": "Values to handle TPEs that have multiple poolAdapters, especially multiple poolAdapters adapting to the same layer rate"}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}}}, "ServiceIntentEndPoint": {"type": "object", "properties": {"slot": {"type": "string", "description": "Optional node slot location identifier."}, "tunnelRole": {"enum": ["headEnd", "tailEnd"], "type": "string", "description": "Role of the MPLS tunnel headEnd or tailEnd"}, "subport": {"type": "string", "description": "The node subport location identifier"}, "shelf": {"type": "string", "description": "Optional node shelf location identifier."}, "protectionRole": {"enum": ["primary", "backup"], "type": "string", "description": "Role of the MPLS protection primary or backup"}, "lspName": {"type": "string", "description": "The name of the label switch path ids(unique) of the service to be created and activated"}, "networkElement": {"description": "Data associated with a particular network element.", "$ref": "#/definitions/NetworkElement"}, "interfaceType": {"enum": ["UNI"], "type": "string", "description": "Convenient instruction to identify the endpoint role."}, "layerTerminations": {"items": {"$ref": "#/definitions/LayerTermination"}, "type": "array", "description": "Transmission parameters to be provisioned on TPE layer terminations."}, "eqptGrp": {"type": "string", "description": "The node Equipment Group location identifier"}, "port": {"type": "string", "description": "The node port location identifier."}, "pseudoWireId": {"type": "string", "description": "The name of the pseudoWireId(unique) of the MPLS service to be created and activated"}}}, "HttpParams": {"type": "object"}, "ColorEntry": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color"}, "name": {"type": "string", "description": "The name of the color"}}}, "ConnectionPoint": {"type": "object", "properties": {"mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "dynamicOwningPoolAdapterFgiRules": {"items": {"type": "string"}, "type": "array", "description": "dynamicOwningPoolAdapterFgiRules"}, "plannedCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "namingRules": {"items": {"$ref": "#/definitions/NamingRules"}, "type": "array"}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "owningPoolAdapterType": {"type": "string", "description": "Type of the owner Adapter."}, "totalCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "usedCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}}}, "Diagnostics": {"type": "object", "properties": {"diagnostics": {"items": {"$ref": "#/definitions/Diagnostic"}, "type": "array", "description": "A list of performance monitoring (PM) and diagnostic tests"}}}, "AfiSafiOrf": {"type": "object", "properties": {"direction": {"enum": ["rx", "tx", "both"], "type": "string", "description": "Outbound Route Filtering direction"}, "type": {"type": "string", "description": "Outbound Route Filtering type"}}}, "ServiceIntentResponseAttributes": {"type": "object", "properties": {"intentState": {"type": "string", "description": "The current state of the service intent."}, "postActivationTestStatus": {"$ref": "#/definitions/DiagnosticStatuses"}, "request": {"description": "Resource to specify intent to design and fulfill one service.", "$ref": "#/definitions/ServiceIntentRequestData"}, "creationTime": {"type": "string", "description": "The time at which the service intent was created.", "format": "date-time"}, "discovered": {"default": false, "type": "boolean", "description": "True if the Service Intent was discovered/promoted from the network."}, "supportingServices": {"items": {"type": "string"}, "type": "array"}}}, "ContinuousAdapterRulesPackage": {"type": "object", "properties": {"lowerBoundaryRule": {"enum": ["mustSnapTo6_25GHzGrid_0_768", "mustSnapTo37_5GHzGrid_0_96", "snapTo6_25GHzGrid", "snapTo50GHzGrid", "snapTo100GHzGrid", "snapTo75GHzGrid"], "type": "string", "description": "Rule that the boundary of the range must follow. Can point to a specific algorithm to be executed."}, "centerFrequencyRule": {"enum": ["transponderResolution"], "type": "string", "description": "Rule that the centerFrequency of the range must follow. Can point to a specific algorithm to be executed."}, "segmentationRule": {"enum": ["oneSegementInGroup"], "type": "string", "description": "Whether the segment can be fragmented."}, "upperBoundaryRule": {"enum": ["mustSnapTo6_25GHzGrid_0_768", "mustSnapTo37_5GHzGrid_0_96", "snapTo6_25GHzGrid", "snapTo50GHzGrid", "snapTo100GHzGrid", "snapTo75GHzGrid"], "type": "string", "description": "Rule that the boundary of the range must follow. Can point to a specific algorithm to be executed."}, "widthRule": {"enum": ["mediaChannelWidthRule", "nmcWidthRule"], "type": "string", "description": "How wide the range can be. Can point to a specific algorithm to be executed."}}}, "MplsFrrProtectionRouteHop": {"type": "object", "properties": {"ip": {"type": "string", "description": "IP interface address or node loopback IP address of the current hop"}, "bwProtected": {"default": false, "type": "boolean", "description": "True when the bandwidth is protected on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}, "protectionType": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "The FB protection type on this hop for this unidirectional tunnel"}}}, "AccessPoint": {"type": "object", "properties": {"mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "plannedCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "usedCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "clientTpeRulesInOwnLayer": {"items": {"$ref": "#/definitions/ConnectionRule"}, "type": "array", "description": "Directions of how to instantiate client TPE(s) for this access point, including indirect (client over client) client TPE instantiation."}, "namingRules": {"items": {"$ref": "#/definitions/NamingRules"}, "type": "array"}, "adaptsToLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "cardinality": {"type": "string", "description": "Number of possible potential TPEs. Can be a numeric (eg '1', '96', '1000', ...) or can be categorical (eg 'indirect')."}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "totalCapacity": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}}}, "Locale": {"type": "object", "properties": {"iso3Country": {"type": "string"}, "displayName": {"type": "string"}, "language": {"type": "string"}, "script": {"type": "string"}, "country": {"type": "string"}, "extensionKeys": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "unicodeLocaleAttributes": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "variant": {"type": "string"}, "unicodeLocaleKeys": {"uniqueItems": true, "items": {"type": "string"}, "type": "array"}, "displayScript": {"type": "string"}, "displayVariant": {"type": "string"}, "iso3Language": {"type": "string"}, "displayCountry": {"type": "string"}, "displayLanguage": {"type": "string"}}}, "RouteConstraints": {"type": "object", "properties": {"maxInCpGroup": {"type": "string", "description": "Maximum number of routes that can be present in a control plane group. Could be a number, or could be a number evident n the model i.e. inverseMux."}, "signalPattern": {"enum": ["adjacent"], "type": "string", "description": "If photonic route type, specifies the frequency or wavelength pattern to choose for the routes."}, "numberOfRoutes": {"type": "string", "description": "Number of routes defined by the configuration. For example, a PRIME/MEMBER configuration.  Could be a number, or could be a number evident from the model i.e. inverseMux. Generally, should only be specified if the configuration implies more than 1 route."}, "sizeOfEachRoute": {"type": "string", "description": "For each route, what is the required size of each route. For example, '200G' in the case of 400G WLAi OTR 2xOTSi."}, "routeCharacteristic": {"enum": ["coRouted", "maximumDiversity"], "type": "string", "description": "If multiple routes need to be defined, what's the relationship between the routes."}, "type": {"enum": ["photonic"], "type": "string", "description": "The route type i.e. photonic. In the future, other types may be supported."}}}, "LocationAddress": {"type": "object", "properties": {"pattern": {"type": "string", "description": "optional regex or delimiter value to parse multi-valued subslot string."}, "value": {"type": "string", "description": "int or character value as appropriate to the associated entity and field."}, "key": {"enum": ["RACK", "SHELF", "SUBSHELF", "SLOT", "SUBSLOT", "PORT"], "type": "string", "description": "The type of the address location."}}}, "G8032Package": {"type": "object", "properties": {"guardTime": {"type": "integer", "description": "guard time in millisecond.", "format": "int32"}, "operationalChannelBlock": {"default": false, "type": "boolean", "description": "True if the port is blocked, i.e portState == Blocked"}, "forceSwitch": {"default": false, "type": "boolean", "description": "a flag indicating whether the switching is forced or not."}, "portState": {"enum": ["disabled", "forwarding", "blocked", "unknown"], "type": "string", "description": "the state of the port"}, "portDirection": {"enum": ["east", "west"], "type": "string", "description": "the direction of the port."}, "ringId": {"type": "string", "description": "The logical ring ID"}, "ringMembers": {"type": "string", "description": "a comma separated list of virtual ring members."}, "rapsVid": {"type": "string", "description": "the R-APS VID of the ring"}, "portStatus": {"enum": ["ok", "down", "CCMFailure", "localForceSwitch", "remoteForceSwitch", "remoteSignalFailure", "unknown"], "type": "string", "description": "the status of the port"}, "holdOffTimeUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "waitToRestoreUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "rplOwner": {"default": false, "type": "boolean", "description": "True if the port is configured as RPL-owner."}, "waitToBlock": {"type": "integer", "description": "wait to block time in milliseconds. ", "format": "int32"}, "revertive": {"default": false, "type": "boolean", "description": "revertive"}, "ringState": {"enum": ["initializing", "ok", "adminDisabled", "operationalDisabled", "protecting", "recovering", "unknown"], "type": "string", "description": "the state of the ring"}, "logicalRingName": {"type": "string", "description": "The logical ring name"}, "ringType": {"enum": ["majorRing", "subRing"], "type": "string", "description": "the type of ring"}, "waitToRestore": {"type": "integer", "description": "wait to restore time in minute. ", "format": "int32"}, "virtualRingName": {"type": "string", "description": "the virtual ring name"}, "ringStatus": {"enum": ["ok", "localSignalFailure", "localForceSwitch", "remoteOtherPortSignalFailure", "remoteOtherPortForceSwitch", "provisioningMismatch", "notReceivingPDUS", "noRPLOwnerDetected", "unknown"], "type": "string", "description": "the status of the ring"}, "sharedPort": {"type": "string", "description": "sharedPort information for the sub-ring (ONLY for sub-ring endNode)"}, "guardTimeUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "subRingTermination": {"default": false, "type": "boolean", "description": "flag indicating whether the subring is terminating or not"}, "holdOffTime": {"type": "integer", "description": "hold off time in milliseconds", "format": "int32"}, "waitToBlockUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_service_provisioning_(flex).json b/tapi/resources/MCP_4.0.0_service_provisioning_(flex).json
deleted file mode 100644
index a3158b7f248634a0036a3fa71d427432205e789f..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_service_provisioning_(flex).json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Service deployment and undeployment", "title": "Service provisioning (flex)"}, "paths": {"/bpoifdnbi/api/v1/resourceOperations": {}, "/bpoifdnbi/api/v1/operation/resync": {}, "/bpoifdnbi/api/v1/serviceIntent/deploy": {"post": {"responses": {"200": {"description": "OK"}, "404": {"description": "Service not Found"}, "500": {"description": "Internal system error"}}, "parameters": [{"schema": {"$ref": "#/definitions/(service-operation)input"}, "required": true, "description": "Service Deploy Input", "name": "(service-operation)input", "in": "body"}], "produces": ["application/json"], "tags": ["Service Deploy"], "summary": "Deploys a Service to the network", "operationId": "deployServiceIntent", "description": ""}}, "/bpoifdnbi/.well-known/host-meta": {}, "/bpoifdnbi/api/v1/serviceIntent/undeploy": {"post": {"responses": {"200": {"description": "OK"}, "404": {"description": "Service not Found"}, "500": {"description": "Internal system error"}}, "parameters": [{"schema": {"$ref": "#/definitions/(service-operation)input"}, "required": true, "description": "Service Undeploy Input", "name": "(service-operation)input", "in": "body"}], "produces": ["application/json"], "tags": ["Service Undeploy"], "summary": "Undeploys a Service from the network", "operationId": "undeployServiceIntent", "description": ""}}}, "schemes": ["http"], "tags": [{"name": "Service provisioning (flex)"}], "basePath": "/", "definitions": {"(service-operation)input": {"type": "object", "properties": {"bp-tenant-id": {"type": "string"}, "service-intent-id": {"type": "string"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_service_topology_(servicetrails).json b/tapi/resources/MCP_4.0.0_service_topology_(servicetrails).json
deleted file mode 100644
index 3596c864ae37cb765d1cd8be55f57ac748f66d18..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_service_topology_(servicetrails).json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"termsOfService": "", "version": "1.0", "description": "Retrieve and Visualize trails of a given service", "title": "Service Topology (ServiceTrails)"}, "paths": {"/revell/api/v1/serviceTrails/{freId}": {"get": {"responses": {"200": {"description": "Return Service Trail", "schema": {"$ref": "#/definitions/ServiceTrailResponse"}}, "500": {"description": "Internal server error"}}, "description": "", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}], "produces": ["application/json"], "tags": ["mcp-view v1"], "summary": "Return Service Trail for a given FRE Id", "operationId": "serviceTrailV1"}}, "/revell/api/v2/serviceTopology/{freId}": {"get": {"responses": {"200": {"description": "Return Service Topology", "schema": {"$ref": "#/definitions/ServiceTrailResponse"}}, "500": {"description": "Internal server error"}}, "description": "", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, networkConstructs, equipment, expectations, frePlanned, freDiscovered, abstracts", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["mcp-view v2"], "summary": "Return Service Topology for a given FRE Id", "operationId": "serviceTopologyV2"}}, "/revell/api/v1/serviceTrails/": {"post": {"responses": {"200": {"description": "Return Service Trail", "schema": {"$ref": "#/definitions/ServiceTrailResponse"}}, "500": {"description": "Internal server error"}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/JValue"}, "description": "FRE to generate trail", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["mcp-view v1"], "summary": "Returns a Service Trail", "operationId": "pstServiceTrailV1"}}, "/revell/api/v2/serviceTopology/": {"post": {"responses": {"200": {"description": "Return Service Trail", "schema": {"$ref": "#/definitions/ServiceTrailResponse"}}, "500": {"description": "Internal server error"}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/JValue"}, "description": "FRE to generate trail", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["mcp-view v2"], "summary": "Returns a Service Trail", "operationId": "pstServiceTrailV2"}}, "/revell/api/v2/serviceTrails/{freId}": {"get": {"responses": {"200": {"description": "Return Service Trail", "schema": {"$ref": "#/definitions/ServiceTrailResponse"}}, "500": {"description": "Internal server error"}}, "description": "", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "Source Termination point Identifier", "required": false, "type": "string", "name": "startTpeId", "in": "query"}, {"description": "Destination Termination point Identifier", "required": false, "type": "string", "name": "endTpeId", "in": "query"}, {"description": "Traversal Scope. The allowed values are: TOPOLOGICAL, SERVICE, LAYER NAVIGATION", "required": false, "type": "string", "name": "traversalScope", "in": "query"}, {"description": "List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, networkConstructs, equipment, expectations, frePlanned, freDiscovered, abstracts", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["mcp-view v2"], "summary": "Return Service Trail for a given FRE Id", "operationId": "serviceTrailV2"}}}, "schemes": ["http", "https"], "tags": [{"name": "mcp-view v2"}, {"name": "mcp-view v1"}], "basePath": "/", "securityDefinitions": {"basicAuth": {"type": "basic"}}, "definitions": {"ServiceTrailResponse": {"type": "object"}, "JValue": {"type": "object"}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_service_topology_(tapi).json b/tapi/resources/MCP_4.0.0_service_topology_(tapi).json
deleted file mode 100644
index d626a65960c9f7fba7bf79ca150adb44db3b63a6..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_service_topology_(tapi).json
+++ /dev/null
@@ -1,3084 +0,0 @@
-{
-  "info": {
-    "version": "1.1",
-    "description": "tapi-photonic-media, tapi-connectivity,tapi-topology,tapi-common API",
-    "title": "Service Topology (TAPI)"
-  },
-  "paths": {
-    "/mcpview/api/v1/tapi/core/context/provisioning/connectivity-service/{uuid}": {
-      "delete": {
-        "responses": {
-          "204": {
-            "description": "Object deleted"
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "removes tapi.connectivity.connectivitycontext.ConnectivityService (note: operation unavailable on standby servers)",
-        "parameters": [
-          {
-            "description": "Id of connectivity-service",
-            "required": true,
-            "type": "string",
-            "name": "uuid",
-            "in": "path"
-          }
-        ],
-        "tags": [
-          "tapi-connectivity-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/topology/mcp-base-topology/link/": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.topology.Link",
-            "schema": {
-              "$ref": "#/definitions/tapi.topology.Link"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.topology.Link",
-        "parameters": [
-          {
-            "description": "(Optional) The page to return",
-            "default": "0",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[number]"
-          },
-          {
-            "description": "(Optional) The size of a returned page",
-            "default": "10",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[size]"
-          }
-        ],
-        "tags": [
-          "tapi-topology-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/topology/mcp-base-topology/link/{link-uuid}": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.topology.Link",
-            "schema": {
-              "$ref": "#/definitions/tapi.topology.Link"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.topology.Link",
-        "parameters": [
-          {
-            "description": "Id of link",
-            "required": true,
-            "type": "string",
-            "name": "link-uuid",
-            "in": "path"
-          }
-        ],
-        "tags": [
-          "tapi-topology-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/topology/mcp-base-topology/node/{node-uuid}/owned-node-edge-point/{owned-node-edge-point-uuid}": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.topology.node.OwnedNodeEdgePoint",
-            "schema": {
-              "$ref": "#/definitions/tapi.topology.node.OwnedNodeEdgePoint"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.topology.node.OwnedNodeEdgePoint",
-        "parameters": [
-          {
-            "description": "Id of node",
-            "required": true,
-            "type": "string",
-            "name": "node-uuid",
-            "in": "path"
-          },
-          {
-            "description": "Id of owned-node-edge-point",
-            "required": true,
-            "type": "string",
-            "name": "owned-node-edge-point-uuid",
-            "in": "path"
-          }
-        ],
-        "tags": [
-          "tapi-topology-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/topology/mcp-base-topology/node-edge-point/{node-edge-point-uuid}": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.topology.node.OwnedNodeEdgePoint",
-            "schema": {
-              "$ref": "#/definitions/tapi.topology.node.OwnedNodeEdgePoint"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.topology.node.OwnedNodeEdgePoint",
-        "parameters": [
-          {
-            "description": "Id of node-edge-point",
-            "required": true,
-            "type": "string",
-            "name": "node-edge-point-uuid",
-            "in": "path"
-          }
-        ],
-        "tags": [
-          "tapi-topology-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/connection/": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.connectivity.Connection",
-            "schema": {
-              "$ref": "#/definitions/tapi.connectivity.Connection"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.connectivity.Connection",
-        "parameters": [
-          {
-            "description": "(Optional) The page to return",
-            "default": "0",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[number]"
-          },
-          {
-            "description": "(Optional) The size of a returned page",
-            "default": "10",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[size]"
-          }
-        ],
-        "tags": [
-          "tapi-connectivity-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/connection/{uuid}": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.connectivity.Connection",
-            "schema": {
-              "$ref": "#/definitions/tapi.connectivity.Connection"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.connectivity.Connection",
-        "parameters": [
-          {
-            "description": "Id of connection",
-            "required": true,
-            "type": "string",
-            "name": "uuid",
-            "in": "path"
-          }
-        ],
-        "tags": [
-          "tapi-connectivity-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/connectivity-service/{uuid}": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.connectivity.connectivitycontext.ConnectivityService",
-            "schema": {
-              "$ref": "#/definitions/tapi.connectivity.connectivitycontext.ConnectivityService"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.connectivity.connectivitycontext.ConnectivityService",
-        "parameters": [
-          {
-            "description": "Id of connectivity-service",
-            "required": true,
-            "type": "string",
-            "name": "uuid",
-            "in": "path"
-          }
-        ],
-        "tags": [
-          "tapi-connectivity-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/provisioning/connectivity-service/": {
-      "post": {
-        "responses": {
-          "201": {
-            "description": "Object created"
-          },
-          "400": {
-            "description": "Internal error"
-          },
-          "409": {
-            "description": "Object already exists"
-          }
-        },
-        "description": "creates tapi.connectivity.connectivitycontext.ConnectivityService (note: operation unavailable on standby servers)",
-        "parameters": [
-          {
-            "schema": {
-              "$ref": "#/definitions/tapi.connectivity.connectivitycontext.ConnectivityService"
-            },
-            "description": "tapi.connectivity.connectivitycontext.ConnectivityService to be added to list",
-            "required": false,
-            "name": "tapi.connectivity.connectivitycontext.ConnectivityService.body-param",
-            "in": "body"
-          }
-        ],
-        "tags": [
-          "tapi-connectivity-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/topology/mcp-base-topology/connection-end-point/": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.connectivity.context.topologycontext.topology.node.ownednodeedgepoint.CepList",
-            "schema": {
-              "$ref": "#/definitions/tapi.connectivity.context.topologycontext.topology.node.ownednodeedgepoint.CepList"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.connectivity.context.topologycontext.topology.node.ownednodeedgepoint.CepList",
-        "parameters": [
-          {
-            "description": "(Optional) The page to return",
-            "default": "0",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[number]"
-          },
-          {
-            "description": "(Optional) The size of a returned page",
-            "default": "10",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[size]"
-          }
-        ],
-        "tags": [
-          "tapi-connectivity-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/service-interface-point/": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.common.context.ServiceInterfacePoint",
-            "schema": {
-              "$ref": "#/definitions/tapi.common.context.ServiceInterfacePoint"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.common.context.ServiceInterfacePoint",
-        "parameters": [
-          {
-            "description": "(Optional) The page to return",
-            "default": "0",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[number]"
-          },
-          {
-            "description": "(Optional) The size of a returned page",
-            "default": "10",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[size]"
-          }
-        ],
-        "tags": [
-          "tapi-common-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/service-interface-point/{uuid}": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.common.context.ServiceInterfacePoint",
-            "schema": {
-              "$ref": "#/definitions/tapi.common.context.ServiceInterfacePoint"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.common.context.ServiceInterfacePoint",
-        "parameters": [
-          {
-            "description": "Id of service-interface-point",
-            "required": true,
-            "type": "string",
-            "name": "uuid",
-            "in": "path"
-          }
-        ],
-        "tags": [
-          "tapi-common-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/topology/mcp-base-topology/node-edge-point/": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.topology.node.OwnedNodeEdgePoint",
-            "schema": {
-              "$ref": "#/definitions/tapi.topology.node.OwnedNodeEdgePoint"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.connectivity.context.topologycontext.topology.node.ownednodeedgepoint.CepList",
-        "parameters": [
-          {
-            "description": "(Optional) The page to return",
-            "default": "0",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[number]"
-          },
-          {
-            "description": "(Optional) The size of a returned page",
-            "default": "10",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[size]"
-          }
-        ],
-        "tags": [
-          "tapi-topology-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/topology/mcp-base-topology/node/{node-uuid}": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.topology.topology.Node",
-            "schema": {
-              "$ref": "#/definitions/tapi.topology.topology.Node"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.topology.topology.Node",
-        "parameters": [
-          {
-            "description": "Id of node",
-            "required": true,
-            "type": "string",
-            "name": "node-uuid",
-            "in": "path"
-          }
-        ],
-        "tags": [
-          "tapi-topology-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/connectivity-service/": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.connectivity.connectivitycontext.ConnectivityService",
-            "schema": {
-              "$ref": "#/definitions/tapi.connectivity.connectivitycontext.ConnectivityService"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.connectivity.connectivitycontext.ConnectivityService",
-        "parameters": [
-          {
-            "description": "(Optional) The page to return",
-            "default": "0",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[number]"
-          },
-          {
-            "description": "(Optional) The size of a returned page",
-            "default": "10",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[size]"
-          }
-        ],
-        "tags": [
-          "tapi-connectivity-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/topology/mcp-base-topology/node/": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.topology.topology.Node",
-            "schema": {
-              "$ref": "#/definitions/tapi.topology.topology.Node"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.topology.topology.Node",
-        "parameters": [
-          {
-            "description": "(Optional) The page to return",
-            "default": "0",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[number]"
-          },
-          {
-            "description": "(Optional) The size of a returned page",
-            "default": "10",
-            "required": false,
-            "in": "query",
-            "type": "string",
-            "name": "page[size]"
-          }
-        ],
-        "tags": [
-          "tapi-topology-core"
-        ]
-      }
-    },
-    "/mcpview/api/v1/tapi/core/context/topology/mcp-base-topology/connection-end-point/{connection-end-point-uuid}": {
-      "get": {
-        "responses": {
-          "200": {
-            "description": "tapi.connectivity.ceplist.ConnectionEndPoint",
-            "schema": {
-              "$ref": "#/definitions/tapi.connectivity.ceplist.ConnectionEndPoint"
-            }
-          },
-          "400": {
-            "description": "Internal error"
-          }
-        },
-        "description": "returns tapi.connectivity.ceplist.ConnectionEndPoint",
-        "parameters": [
-          {
-            "description": "Id of connection-end-point",
-            "required": true,
-            "type": "string",
-            "name": "connection-end-point-uuid",
-            "in": "path"
-          }
-        ],
-        "tags": [
-          "tapi-connectivity-core"
-        ]
-      }
-    }
-  },
-  "schemes": [
-    "http"
-  ],
-  "produces": [
-    "application/json"
-  ],
-  "basePath": "/",
-  "host": "localhost",
-  "definitions": {
-    "tapi.common.ServiceInterfacePoint": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.AdminStatePac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.CapacityPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "layer-protocol-name": {
-              "description": "Usage of layerProtocolName [>1]  in the ServiceInterfacePoint should be considered experimental",
-              "$ref": "#/definitions/tapi.common.LayerProtocolName"
-            },
-            "supported-layer-protocol-qualifier": {
-              "items": {
-                "type": "string"
-              },
-              "type": "array",
-              "description": "none"
-            }
-          },
-          "description": "The LogicalTerminationPoint (LTP) object class encapsulates the termination and adaptation functions of one or more transport layers. \r\n                The structure of LTP supports all transport protocols including circuit and packet forms."
-        }
-      ]
-    },
-    "tapi.topology.TopologyContext": {
-      "type": "object",
-      "properties": {
-        "nw-topology-service": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.topology.NetworkTopologyService"
-        },
-        "topology": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.Topology"
-          },
-          "type": "array",
-          "description": "none"
-        }
-      }
-    },
-    "tapi.common.LifecycleState": {
-      "enum": [
-        "PLANNED",
-        "POTENTIAL_AVAILABLE",
-        "POTENTIAL_BUSY",
-        "INSTALLED",
-        "PENDING_REMOVAL"
-      ],
-      "type": "string"
-    },
-    "tapi.photonic.media.ApplicationIdentifier": {
-      "type": "object",
-      "properties": {
-        "application-code": {
-          "type": "string"
-        },
-        "application-identifier-type": {
-          "description": "The ITU-T recommendation which defines the application code format.",
-          "$ref": "#/definitions/tapi.photonic.media.ApplicationIdentifierType"
-        }
-      }
-    },
-    "tapi.connectivity.ResilienceConstraint": {
-      "type": "object",
-      "properties": {
-        "resilience-type": {
-          "$ref": "#/definitions/tapi.topology.ResilienceType"
-        },
-        "wait-to-revert-time": {
-          "default": 15,
-          "type": "string",
-          "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.",
-          "format": "int32"
-        },
-        "reversion-mode": {
-          "description": "Indcates whether the protection scheme is revertive or non-revertive.",
-          "$ref": "#/definitions/tapi.connectivity.ReversionMode"
-        },
-        "restoration-coordinate-type": {
-          "description": " The coordination mechanism between multi-layers.",
-          "$ref": "#/definitions/tapi.connectivity.CoordinateType"
-        }
-      }
-    },
-    "tapi.photonic.media.LaserType": {
-      "enum": [
-        "PUMP",
-        "MODULATED",
-        "PULSE"
-      ],
-      "type": "string"
-    },
-    "tapi.topology.NodeRuleGroup": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.CapacityPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.RiskParameterPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferCostPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferTimingPac"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "node-edge-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.NodeEdgePointRef"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "composed-rule-group": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.NodeRuleGroupRef"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "rule": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.Rule"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "inter-rule-group": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.InterRuleGroup"
-              },
-              "type": "array",
-              "description": "none"
-            }
-          },
-          "description": "none"
-        }
-      ]
-    },
-    "tapi.connectivity.ServiceType": {
-      "enum": [
-        "POINT_TO_POINT_CONNECTIVITY",
-        "POINT_TO_MULTIPOINT_CONNECTIVITY",
-        "MULTIPOINT_CONNECTIVITY",
-        "ROOTED_MULTIPOINT_CONNECTIVITY"
-      ],
-      "type": "string"
-    },
-    "tapi.topology.Node": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.AdminStatePac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.CapacityPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferCostPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferIntegrityPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferTimingPac"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "node-rule-group": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.NodeRuleGroup"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "layer-protocol-name": {
-              "items": {
-                "$ref": "#/definitions/tapi.common.LayerProtocolName"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "encap-topology": {
-              "description": "none",
-              "$ref": "#/definitions/tapi.topology.TopologyRef"
-            },
-            "owned-node-edge-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.NodeEdgePoint"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "aggregated-node-edge-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.NodeEdgePointRef"
-              },
-              "type": "array",
-              "description": "none"
-            }
-          },
-          "description": "The ForwardingDomain (FD) object class models the ForwardingDomain topological component which is used to effect forwarding of transport characteristic information and offers the potential to enable forwarding. \r\n                At the lowest level of recursion, an FD (within a network element (NE)) represents a switch matrix (i.e., a fabric). Note that an NE can encompass multiple switch matrices (FDs). "
-        }
-      ]
-    },
-    "tapi.photonic.media.MediaChannelPoolCapabilityPac": {
-      "type": "object",
-      "properties": {
-        "supportable-spectrum": {
-          "items": {
-            "$ref": "#/definitions/tapi.photonic.media.SpectrumBand"
-          },
-          "type": "array"
-        },
-        "available-spectrum": {
-          "items": {
-            "$ref": "#/definitions/tapi.photonic.media.SpectrumBand"
-          },
-          "type": "array"
-        },
-        "occupied-spectrum": {
-          "items": {
-            "$ref": "#/definitions/tapi.photonic.media.SpectrumBand"
-          },
-          "type": "array"
-        }
-      }
-    },
-    "tapi.topology.NodeEdgePoint": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.AdminStatePac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.CapacityPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.TerminationPac"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "layer-protocol-name": {
-              "description": "none",
-              "$ref": "#/definitions/tapi.common.LayerProtocolName"
-            },
-            "mapped-service-interface-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.common.ServiceInterfacePointRef"
-              },
-              "type": "array",
-              "description": "NodeEdgePoint mapped to more than ServiceInterfacePoint (slicing/virtualizing) or a ServiceInterfacePoint mapped to more than one NodeEdgePoint (load balancing/Resilience) should be considered experimental"
-            },
-            "supported-cep-layer-protocol-qualifier": {
-              "items": {
-                "type": "string"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "link-port-direction": {
-              "description": "The orientation of defined flow at the LinkEnd.",
-              "$ref": "#/definitions/tapi.common.PortDirection"
-            },
-            "aggregated-node-edge-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.NodeEdgePointRef"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "link-port-role": {
-              "description": "Each LinkEnd of the Link has a role (e.g., symmetric, hub, spoke, leaf, root)  in the context of the Link with respect to the Link function. ",
-              "$ref": "#/definitions/tapi.common.PortRole"
-            }
-          },
-          "description": "The LogicalTerminationPoint (LTP) object class encapsulates the termination and adaptation functions of one or more transport layers. \r\n                The structure of LTP supports all transport protocols including circuit and packet forms."
-        }
-      ]
-    },
-    "tapi.photonic.media.OtsiConnectivityServiceEndPointSpec": {
-      "type": "object",
-      "properties": {
-        "otsi-config": {
-          "$ref": "#/definitions/tapi.photonic.media.OtsiTerminationConfigPac"
-        }
-      }
-    },
-    "tapi.connectivity.Connection": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.OperationalStatePac"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "lower-connection": {
-              "items": {
-                "$ref": "#/definitions/tapi.connectivity.ConnectionRef"
-              },
-              "type": "array",
-              "description": "An Connection object supports a recursive aggregation relationship such that the internal construction of an Connection can be exposed as multiple lower level Connection objects (partitioning).\r\n                    Aggregation is used as for the Node/Topology  to allow changes in hierarchy. \r\n                    Connection aggregation reflects Node/Topology aggregation. \r\n                    The FC represents a Cross-Connection in an NE. The Cross-Connection in an NE is not necessarily the lowest level of FC partitioning."
-            },
-            "direction": {
-              "description": "none",
-              "$ref": "#/definitions/tapi.common.ForwardingDirection"
-            },
-            "route": {
-              "items": {
-                "$ref": "#/definitions/tapi.connectivity.Route"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "layer-protocol-name": {
-              "description": "none",
-              "$ref": "#/definitions/tapi.common.LayerProtocolName"
-            },
-            "supported-client-link": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.LinkRef"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "connection-end-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.connectivity.ConnectionEndPointRef"
-              },
-              "type": "array",
-              "description": "none"
-            }
-          },
-          "description": "The ForwardingConstruct (FC) object class models enabled potential for forwarding between two or more LTPs and like the LTP supports any transport protocol including all circuit and packet forms.\r\n                At the lowest level of recursion, a FC represents a cross-connection within an NE."
-        }
-      ]
-    },
-    "tapi.topology.ProtectionType": {
-      "enum": [
-        "NO_PROTECTON",
-        "ONE_PLUS_ONE_PROTECTION",
-        "ONE_PLUS_ONE_PROTECTION_WITH_DYNAMIC_RESTORATION",
-        "DYNAMIC_RESTORATION"
-      ],
-      "type": "string"
-    },
-    "tapi.photonic.media.LaserPropertiesPac": {
-      "type": "object",
-      "properties": {
-        "laser-status": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.photonic.media.LaserControlStatusType"
-        },
-        "laser-temperature": {
-          "type": "string",
-          "description": "The temperature of the laser"
-        },
-        "laser-application-type": {
-          "description": "The type of laser, its operational wavelengths, and its applications. String size 255.",
-          "$ref": "#/definitions/tapi.photonic.media.LaserType"
-        },
-        "laser-bias-current": {
-          "type": "string",
-          "description": "The Bias current of the laser that is the medium polarization current of the laser."
-        }
-      }
-    },
-    "tapi.common.GlobalClass": {
-      "type": "object",
-      "properties": {
-        "name": {
-          "items": {
-            "$ref": "#/definitions/tapi.common.NameAndValue"
-          },
-          "type": "array",
-          "description": "List of names. A property of an entity with a value that is unique in some namespace but may change during the life of the entity. A name carries no semantics with respect to the purpose of the entity."
-        },
-        "uuid": {
-          "type": "string",
-          "description": "UUID: An identifier that is universally unique within an identifier space, where the identifier space is itself globally unique, and immutable. An UUID carries no semantics with respect to the purpose or state of the entity.\r\n                    UUID here uses string representation as defined in RFC 4122.  The canonical representation uses lowercase characters.\r\n                    Pattern: [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-' + '[0-9a-fA-F]{4}-[0-9a-fA-F]{12} \r\n                    Example of a UUID in string representation: f81d4fae-7dec-11d0-a765-00a0c91e6bf6"
-        }
-      }
-    },
-    "tapi.connectivity.ConnectivityContext": {
-      "type": "object",
-      "properties": {
-        "connection": {
-          "items": {
-            "$ref": "#/definitions/tapi.connectivity.Connection"
-          },
-          "type": "array",
-          "description": "none"
-        },
-        "connectivity-service": {
-          "items": {
-            "$ref": "#/definitions/tapi.connectivity.ConnectivityService"
-          },
-          "type": "array",
-          "description": "none"
-        }
-      }
-    },
-    "tapi.photonic.media.OtsiGserverAdaptationPac": {
-      "type": "object",
-      "properties": {
-        "number-of-otsi": {
-          "type": "string",
-          "format": "int32"
-        }
-      }
-    },
-    "tapi.path.computation.PathObjectiveFunction": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.LocalClass"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "concurrent-paths": {
-              "$ref": "#/definitions/tapi.common.DirectiveValue"
-            },
-            "link-utilization": {
-              "$ref": "#/definitions/tapi.common.DirectiveValue"
-            },
-            "bandwidth-optimization": {
-              "$ref": "#/definitions/tapi.common.DirectiveValue"
-            },
-            "cost-optimization": {
-              "$ref": "#/definitions/tapi.common.DirectiveValue"
-            },
-            "resource-sharing": {
-              "$ref": "#/definitions/tapi.common.DirectiveValue"
-            }
-          }
-        }
-      ]
-    },
-    "tapi.photonic.media.SpectrumBand": {
-      "type": "object",
-      "properties": {
-        "lower-frequency": {
-          "type": "string",
-          "description": "The lower frequency bound of the media channel spectrum specified in MHz",
-          "format": "int32"
-        },
-        "upper-frequency": {
-          "type": "string",
-          "description": "The upper frequency bound of the media channel spectrum specified in MHz",
-          "format": "int32"
-        },
-        "frequency-constraint": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.photonic.media.FrequencyConstraint"
-        }
-      }
-    },
-    "tapi.photonic.media.OwnedNodeEdgePointAugmentation1": {
-      "x-augmentation": {
-        "prefix": "tapi-photonic-media",
-        "namespace": "urn:onf:otcc:yang:tapi-photonic-media"
-      },
-      "type": "object",
-      "properties": {
-        "media-channel-node-edge-point-spec": {
-          "description": "Augments the base LayerProtocol information in NodeEdgePoint with OCH-specific information",
-          "$ref": "#/definitions/tapi.photonic.media.MediaChannelNodeEdgePointSpec"
-        }
-      }
-    },
-    "tapi.topology.ContextAugmentation5": {
-      "x-augmentation": {
-        "prefix": "tapi-topology",
-        "namespace": "urn:onf:otcc:yang:tapi-topology"
-      },
-      "type": "object",
-      "properties": {
-        "topology-context": {
-          "description": "Augments the base TAPI Context with TopologyService information",
-          "$ref": "#/definitions/tapi.topology.TopologyContext"
-        }
-      }
-    },
-    "tapi.photonic.media.FecPropertiesPac": {
-      "type": "object",
-      "properties": {
-        "uncorrectable-bytes": {
-          "type": "string",
-          "description": "Bytes that could not be corrected by FEC",
-          "format": "int32"
-        },
-        "corrected-bits": {
-          "type": "string",
-          "description": "Bits corrected between those that were received corrupted",
-          "format": "int32"
-        },
-        "uncorrectable-bits": {
-          "type": "string",
-          "description": "Bits that could not be corrected by FEC",
-          "format": "int32"
-        },
-        "pre-fec-ber": {
-          "type": "string",
-          "description": "counter: bit error rate before correction by FEC",
-          "format": "int32"
-        },
-        "post-fec-ber": {
-          "type": "string",
-          "description": "counter: bit error rate after correction by FEC",
-          "format": "int32"
-        },
-        "corrected-bytes": {
-          "type": "string",
-          "description": "Bytes corrected between those that were received corrupted",
-          "format": "int32"
-        }
-      }
-    },
-    "tapi.photonic.media.ConnectionEndPointAugmentation6": {
-      "x-augmentation": {
-        "prefix": "tapi-photonic-media",
-        "namespace": "urn:onf:otcc:yang:tapi-photonic-media"
-      },
-      "type": "object",
-      "properties": {
-        "media-channel-assembly-spec": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.photonic.media.MediaChannelAssemblySpec"
-        }
-      }
-    },
-    "tapi.photonic.media.ConnectionEndPointAugmentation4": {
-      "x-augmentation": {
-        "prefix": "tapi-photonic-media",
-        "namespace": "urn:onf:otcc:yang:tapi-photonic-media"
-      },
-      "type": "object",
-      "properties": {
-        "media-channel-connection-end-point-spec": {
-          "$ref": "#/definitions/tapi.photonic.media.MediaChannelConnectionEndPointSpec"
-        }
-      }
-    },
-    "tapi.photonic.media.ConnectionEndPointAugmentation5": {
-      "x-augmentation": {
-        "prefix": "tapi-photonic-media",
-        "namespace": "urn:onf:otcc:yang:tapi-photonic-media"
-      },
-      "type": "object",
-      "properties": {
-        "otsi-assembly-connection-end-point-spec": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.photonic.media.OtsiAssemblyConnectionEndPointSpec"
-        }
-      }
-    },
-    "tapi.photonic.media.ConnectionEndPointAugmentation2": {
-      "x-augmentation": {
-        "prefix": "tapi-photonic-media",
-        "namespace": "urn:onf:otcc:yang:tapi-photonic-media"
-      },
-      "type": "object",
-      "properties": {
-        "otsi-connection-end-point-spec": {
-          "description": "Augments the base LayerProtocol information in ConnectionEndPoint with OCH-specific information",
-          "$ref": "#/definitions/tapi.photonic.media.OtsiConnectionEndPointSpec"
-        }
-      }
-    },
-    "tapi.common.TimeInterval": {
-      "type": "object",
-      "properties": {
-        "period": {
-          "items": {
-            "$ref": "#/definitions/tapi.common.TimePeriod"
-          },
-          "type": "array",
-          "description": "none"
-        }
-      }
-    },
-    "tapi.photonic.media.ApplicationIdentifierType": {
-      "enum": [
-        "PROPRIETARY",
-        "ITUT_G959_1",
-        "ITUT_G698_1",
-        "ITUT_G698_2",
-        "ITUT_G696_1",
-        "ITUT_G695"
-      ],
-      "type": "string"
-    },
-    "tapi.path.computation.TopologyConstraint": {
-      "type": "object",
-      "properties": {
-        "include-link": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.LinkRef"
-          },
-          "type": "array",
-          "description": "This is a loose constraint - that is it is unordered and could be a partial list "
-        },
-        "exclude-node": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.NodeRef"
-          },
-          "type": "array"
-        },
-        "include-node": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.NodeRef"
-          },
-          "type": "array",
-          "description": "This is a loose constraint - that is it is unordered and could be a partial list"
-        },
-        "exclude-link": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.LinkRef"
-          },
-          "type": "array"
-        }
-      }
-    },
-    "tapi.topology.RiskParameterPac": {
-      "type": "object",
-      "properties": {
-        "risk-characteristic": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.RiskCharacteristic"
-          },
-          "type": "array",
-          "description": "A list of risk characteristics for consideration in an analysis of shared risk. Each element of the list represents a specific risk consideration."
-        }
-      }
-    },
-    "tapi.topology.ValidationPac": {
-      "type": "object",
-      "properties": {
-        "validation-mechanism": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.ValidationMechanism"
-          },
-          "type": "array",
-          "description": "Provides details of the specific validation mechanism(s) used to confirm the presence of an intended topologicalEntity."
-        }
-      }
-    },
-    "tapi.connectivity.ConnectionRef": {
-      "type": "object",
-      "properties": {
-        "connection-uuid": {
-          "type": "string",
-          "description": "none",
-          "x-path": "/tapi-common:context/tapi-connectivity:connectivity-context/tapi-connectivity:connection/tapi-connectivity:uuid"
-        }
-      }
-    },
-    "tapi.connectivity.ConnectionEndPointRef": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.topology.NodeEdgePointRef"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "connection-end-point-uuid": {
-              "type": "string",
-              "description": "none",
-              "x-path": "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point/tapi-connectivity:cep-list/tapi-connectivity:connection-end-point/tapi-connectivity:uuid"
-            }
-          },
-          "description": "none"
-        }
-      ]
-    },
-    "tapi.photonic.media.OtsConnectionEndPointSpec": {
-      "type": "object",
-      "properties": {
-        "ots-media-channel": {
-          "$ref": "#/definitions/tapi.photonic.media.MediaChannelPropertiesPac"
-        }
-      }
-    },
-    "tapi.topology.TransferCostPac": {
-      "type": "object",
-      "properties": {
-        "cost-characteristic": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.CostCharacteristic"
-          },
-          "type": "array",
-          "description": "The list of costs where each cost relates to some aspect of the TopologicalEntity."
-        }
-      }
-    },
-    "tapi.topology.NetworkTopologyService": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "topology": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.TopologyRef"
-              },
-              "type": "array",
-              "description": "none"
-            }
-          },
-          "description": "none"
-        }
-      ]
-    },
-    "tapi.photonic.media.EndPointAugmentation1": {
-      "x-augmentation": {
-        "prefix": "tapi-photonic-media",
-        "namespace": "urn:onf:otcc:yang:tapi-photonic-media"
-      },
-      "type": "object",
-      "properties": {
-        "media-channel-service-interface-point-spec": {
-          "$ref": "#/definitions/tapi.photonic.media.MediaChannelServiceInterfacePointSpec"
-        }
-      }
-    },
-    "tapi.photonic.media.EndPointAugmentation2": {
-      "x-augmentation": {
-        "prefix": "tapi-photonic-media",
-        "namespace": "urn:onf:otcc:yang:tapi-photonic-media"
-      },
-      "type": "object",
-      "properties": {
-        "otsi-connectivity-service-end-point-spec": {
-          "$ref": "#/definitions/tapi.photonic.media.OtsiConnectivityServiceEndPointSpec"
-        }
-      }
-    },
-    "tapi.connectivity.context.topologycontext.topology.node.ownednodeedgepoint.CepList": {
-      "allOf": [
-        {
-          "type": "object",
-          "properties": {
-            "connection-end-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.connectivity.ceplist.ConnectionEndPoint"
-              },
-              "type": "array"
-            }
-          }
-        }
-      ]
-    },
-    "tapi.photonic.media.OtsiConnectionEndPointSpec": {
-      "type": "object",
-      "properties": {
-        "otsi-termination": {
-          "$ref": "#/definitions/tapi.photonic.media.OtsiTerminationPac"
-        }
-      }
-    },
-    "tapi.common.Context": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.connectivity.ContextAugmentation4"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.ContextAugmentation5"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "service-interface-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.common.context.ServiceInterfacePoint"
-              },
-              "type": "array",
-              "description": "none"
-            }
-          },
-          "description": "none"
-        }
-      ]
-    },
-    "tapi.common.LocalClass": {
-      "type": "object",
-      "properties": {
-        "name": {
-          "items": {
-            "$ref": "#/definitions/tapi.common.NameAndValue"
-          },
-          "type": "array",
-          "description": "List of names. A property of an entity with a value that is unique in some namespace but may change during the life of the entity. A name carries no semantics with respect to the purpose of the entity."
-        },
-        "local-id": {
-          "type": "string",
-          "description": "none"
-        }
-      }
-    },
-    "tapi.common.NameAndValue": {
-      "type": "object",
-      "properties": {
-        "value": {
-          "type": "string",
-          "description": "The value"
-        },
-        "value-name": {
-          "type": "string",
-          "description": "The name of the value. The value need not have a name."
-        }
-      }
-    },
-    "tapi.common.ServiceInterfacePointRef": {
-      "type": "object",
-      "properties": {
-        "service-interface-point-uuid": {
-          "type": "string",
-          "description": "none",
-          "x-path": "/tapi-common:context/tapi-common:service-interface-point/tapi-common:uuid"
-        }
-      }
-    },
-    "tapi.topology.LinkRef": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.topology.TopologyRef"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "link-uuid": {
-              "type": "string",
-              "description": "none",
-              "x-path": "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:link/tapi-topology:uuid"
-            }
-          },
-          "description": "none"
-        }
-      ]
-    },
-    "tapi.connectivity.ConnectivityServiceRef": {
-      "type": "object",
-      "properties": {
-        "connectivity-service-uuid": {
-          "type": "string",
-          "x-path": "/tapi-common:context/tapi-connectivity:connectivity-context/tapi-connectivity:connectivity-service/tapi-connectivity:uuid"
-        }
-      }
-    },
-    "tapi.photonic.media.ConnectionEndPointAugmentation3": {
-      "x-augmentation": {
-        "prefix": "tapi-photonic-media",
-        "namespace": "urn:onf:otcc:yang:tapi-photonic-media"
-      },
-      "type": "object",
-      "properties": {
-        "ots-connection-end-point-spec": {
-          "$ref": "#/definitions/tapi.photonic.media.OtsConnectionEndPointSpec"
-        }
-      }
-    },
-    "tapi.topology.TopologyRef": {
-      "type": "object",
-      "properties": {
-        "topology-uuid": {
-          "type": "string",
-          "description": "none",
-          "x-path": "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:uuid"
-        }
-      }
-    },
-    "tapi.path.computation.PathOptimizationConstraint": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.LocalClass"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "traffic-interruption": {
-              "description": "none",
-              "$ref": "#/definitions/tapi.common.DirectiveValue"
-            }
-          }
-        }
-      ]
-    },
-    "tapi.topology.RiskCharacteristic": {
-      "type": "object",
-      "properties": {
-        "risk-identifier-list": {
-          "items": {
-            "type": "string"
-          },
-          "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."
-        },
-        "risk-characteristic-name": {
-          "type": "string",
-          "description": "The name of the risk characteristic. The characteristic may be related to a specific degree of closeness. \r\n                    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).\r\n                    Depending upon the importance of the traffic being routed different risk characteristics will be evaluated."
-        }
-      }
-    },
-    "tapi.photonic.media.MediaChannelAssemblySpec": {
-      "type": "object"
-    },
-    "tapi.topology.NodeRef": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.topology.TopologyRef"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "node-uuid": {
-              "type": "string",
-              "description": "none",
-              "x-path": "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:uuid"
-            }
-          },
-          "description": "none"
-        }
-      ]
-    },
-    "tapi.topology.TransferIntegrityPac": {
-      "type": "object",
-      "properties": {
-        "error-characteristic": {
-          "type": "string",
-          "description": "Describes the degree to which the signal propagated can be errored. \r\n                    Applies to TDM systems as the errored signal will be propagated and not packet as errored packets will be discarded."
-        },
-        "unavailable-time-characteristic": {
-          "type": "string",
-          "description": "Describes the duration for which there may be no valid signal propagated."
-        },
-        "loss-characteristic": {
-          "type": "string",
-          "description": "Describes the acceptable characteristic of lost packets where loss may result from discard due to errors or overflow.\r\n                    Applies to packet systems and not TDM (as for TDM errored signals are propagated unless grossly errored and overflow/underflow turns into timing slips)."
-        },
-        "delivery-order-characteristic": {
-          "type": "string",
-          "description": "Describes the degree to which packets will be delivered out of sequence.\r\n                    Does not apply to TDM as the TDM protocols maintain strict order."
-        },
-        "server-integrity-process-characteristic": {
-          "type": "string",
-          "description": "Describes the effect of any server integrity enhancement process on the characteristics of the TopologicalEntity."
-        },
-        "repeat-delivery-characteristic": {
-          "type": "string",
-          "description": "Primarily applies to packet systems where a packet may be delivered more than once (in fault recovery for example). \r\n                    It can also apply to TDM where several frames may be received twice due to switching in a system with a large differential propagation delay."
-        }
-      }
-    },
-    "tapi.photonic.media.LaserControlStatusType": {
-      "enum": [
-        "ON",
-        "OFF",
-        "PULSING",
-        "UNDEFINED"
-      ],
-      "type": "string"
-    },
-    "tapi.photonic.media.MediaChannelConnectionEndPointSpec": {
-      "type": "object",
-      "properties": {
-        "media-channel": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.photonic.media.MediaChannelPropertiesPac"
-        }
-      }
-    },
-    "tapi.connectivity.Route": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.LocalClass"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "connection-end-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.connectivity.ConnectionEndPointRef"
-              },
-              "type": "array"
-            }
-          },
-          "description": "The FC Route (FcRoute) object class models the individual routes of an FC. \r\n                The route of an FC object is represented by a list of FCs at a lower level. \r\n                Note that depending on the service supported by an FC, an the FC can have multiple routes."
-        }
-      ]
-    },
-    "tapi.connectivity.ContextAugmentation4": {
-      "x-augmentation": {
-        "prefix": "tapi-connectivity",
-        "namespace": "urn:onf:otcc:yang:tapi-connectivity"
-      },
-      "type": "object",
-      "properties": {
-        "connectivity-context": {
-          "description": "Augments the base TAPI Context with ConnectivityService information",
-          "$ref": "#/definitions/tapi.connectivity.ConnectivityContext"
-        }
-      }
-    },
-    "tapi.connectivity.ConnectivityServiceEndPointRef": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.connectivity.ConnectivityServiceRef"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "connectivity-service-end-point-local-id": {
-              "type": "string",
-              "x-path": "/tapi-common:context/tapi-connectivity:connectivity-context/tapi-connectivity:connectivity-service/tapi-connectivity:end-point/tapi-connectivity:local-id"
-            }
-          }
-        }
-      ]
-    },
-    "tapi.photonic.media.OtsiTerminationPac": {
-      "type": "object",
-      "properties": {
-        "selected-spectrum": {
-          "$ref": "#/definitions/tapi.photonic.media.SpectrumBand"
-        },
-        "laser-properties": {
-          "description": "Laser properties.",
-          "$ref": "#/definitions/tapi.photonic.media.LaserPropertiesPac"
-        },
-        "selected-application-identifier": {
-          "description": "This attribute indicates the selected Application Identifier that is used by the OCh trail termination function. The syntax of ApplicationIdentifier is a pair {ApplicationIdentifierType, PrintableString}. The value of ApplicationIdentifierType is either STANDARD or PROPRIETARY. The value of PrintableString represents the standard application code as defined in the ITU-T Recommendations or a vendor-specific proprietary code. If the ApplicationIdentifierType is STANDARD the value of PrintableString represents a standard application code as defined in the ITU-T Recommendations. If the ApplicationIdentifierType is PROPRIETARY, the first six characters of the PrintableString must contain the Hexadecimal representation of an OUI assigned to the vendor whose implementation generated the Application Identifier; the remaining octets of the PrintableString are unspecified. The value of this attribute of an object instance has to be one of the values identified in the attribute SupportableApplicationIdentifierList of the same object instance. The values and value ranges of the optical interface parameters of a standard application code must be consistent with those values specified in the ITU-T Recommendation for that application code.",
-          "$ref": "#/definitions/tapi.photonic.media.ApplicationIdentifier"
-        },
-        "selected-central-frequency": {
-          "$ref": "#/definitions/tapi.photonic.media.CentralFrequency"
-        },
-        "selected-modulation": {
-          "description": "This parameter defines the modulation used at the source",
-          "$ref": "#/definitions/tapi.photonic.media.SelectedModulation"
-        },
-        "received-power": {
-          "$ref": "#/definitions/tapi.photonic.media.PowerPropertiesPac"
-        },
-        "transmited-power": {
-          "description": "Measured power at the Transmitter.",
-          "$ref": "#/definitions/tapi.photonic.media.PowerPropertiesPac"
-        }
-      }
-    },
-    "tapi.photonic.media.FrequencyConstraint": {
-      "type": "object",
-      "properties": {
-        "adjustment-granularity": {
-          "description": "Adjustment granularity in Gigahertz. As per ITU-T G.694.1, it is used to calculate nominal central frequency (in THz)",
-          "$ref": "#/definitions/tapi.photonic.media.AdjustmentGranularity"
-        },
-        "grid-type": {
-          "description": "Specifies the frequency grid standard used to determine the nominal central frequency and frequency slot width",
-          "$ref": "#/definitions/tapi.photonic.media.GridType"
-        }
-      }
-    },
-    "tapi.photonic.media.OtsiTerminationConfigPac": {
-      "type": "object",
-      "properties": {
-        "modulation": {
-          "description": "The modulation techniqu selected at the source.",
-          "$ref": "#/definitions/tapi.photonic.media.ModulationTechnique"
-        },
-        "spectrum": {
-          "$ref": "#/definitions/tapi.photonic.media.SpectrumBand"
-        },
-        "application-identifier": {
-          "description": "This attribute indicates the selected Application Identifier.",
-          "$ref": "#/definitions/tapi.photonic.media.ApplicationIdentifier"
-        },
-        "total-power-warn-threshold-upper": {
-          "type": "string",
-          "description": "Allows to configure the Upper power threshold which is expected to be different from Default, but within the Min and Max values specified as OTSi SIP capability."
-        },
-        "transmit-power": {
-          "description": "Transmit power as requested.",
-          "$ref": "#/definitions/tapi.photonic.media.PowerPropertiesPac"
-        },
-        "laser-control": {
-          "description": "Laser control can be FORCED-ON, FORCED-OFF or LASER-SHUTDOWN",
-          "$ref": "#/definitions/tapi.photonic.media.LaserControlType"
-        },
-        "total-power-warn-threshold-lower": {
-          "type": "string",
-          "description": "Allows to configure the Lowerpower threshold which is expected to be different from Default, but within the Min and Max values specified as OTSi SIP capability."
-        },
-        "central-frequency": {
-          "description": "The central frequency of the laser. It is the oscillation frequency of the corresponding electromagnetic wave",
-          "$ref": "#/definitions/tapi.photonic.media.CentralFrequency"
-        }
-      }
-    },
-    "tapi.topology.LatencyCharacteristic": {
-      "type": "object",
-      "properties": {
-        "queing-latency-characteristic": {
-          "type": "string",
-          "description": "The specific queuing latency for the traffic property."
-        },
-        "traffic-property-name": {
-          "type": "string",
-          "description": "The identifier of the specific traffic property to which the queuing latency applies."
-        },
-        "jitter-characteristic": {
-          "type": "string",
-          "description": "High frequency deviation from true periodicity of a signal and therefore a small high rate of change of transfer latency.\r\n                    Applies to TDM systems (and not packet)."
-        },
-        "wander-characteristic": {
-          "type": "string",
-          "description": "Low frequency deviation from true periodicity of a signal and therefore a small low rate of change of transfer latency.\r\n                    Applies to TDM systems (and not packet)."
-        },
-        "fixed-latency-characteristic": {
-          "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"
-        }
-      }
-    },
-    "tapi.photonic.media.OtsiServiceInterfacePointSpec": {
-      "type": "object",
-      "properties": {
-        "otsi-capability": {
-          "$ref": "#/definitions/tapi.photonic.media.OtsiCapabilityPac"
-        }
-      }
-    },
-    "tapi.common.AdminStatePac": {
-      "type": "object",
-      "properties": {
-        "administrative-state": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.common.AdministrativeState"
-        },
-        "lifecycle-state": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.common.LifecycleState"
-        },
-        "operational-state": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.common.OperationalState"
-        }
-      }
-    },
-    "tapi.common.PortRole": {
-      "enum": [
-        "SYMMETRIC",
-        "ROOT",
-        "LEAF",
-        "TRUNK",
-        "UNKNOWN"
-      ],
-      "type": "string"
-    },
-    "tapi.photonic.media.ServiceInterfacePointAugmentation2": {
-      "x-augmentation": {
-        "prefix": "tapi-photonic-media",
-        "namespace": "urn:onf:otcc:yang:tapi-photonic-media"
-      },
-      "type": "object",
-      "properties": {
-        "otsi-service-interface-point-spec": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.photonic.media.OtsiServiceInterfacePointSpec"
-        }
-      }
-    },
-    "tapi.photonic.media.ServiceInterfacePointAugmentation1": {
-      "x-augmentation": {
-        "prefix": "tapi-photonic-media",
-        "namespace": "urn:onf:otcc:yang:tapi-photonic-media"
-      },
-      "type": "object",
-      "properties": {
-        "media-channel-service-interface-point-spec": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.photonic.media.MediaChannelServiceInterfacePointSpec"
-        }
-      }
-    },
-    "tapi.connectivity.connectivityservice.EndPoint": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.connectivity.ConnectivityServiceEndPoint"
-        },
-        {
-          "$ref": "#/definitions/tapi.photonic.media.EndPointAugmentation1"
-        },
-        {
-          "$ref": "#/definitions/tapi.photonic.media.EndPointAugmentation2"
-        }
-      ]
-    },
-    "tapi.photonic.media.PowerPropertiesPac": {
-      "type": "object",
-      "properties": {
-        "power-spectral-density": {
-          "type": "string",
-          "description": "This describes how power of a signal  is distributed over frequency specified in nW/MHz"
-        },
-        "total-power": {
-          "type": "string",
-          "description": "The total power at any point in a channel specified in dBm."
-        }
-      }
-    },
-    "tapi.photonic.media.MediaChannelNodeEdgePointSpec": {
-      "type": "object",
-      "properties": {
-        "mc-pool": {
-          "$ref": "#/definitions/tapi.photonic.media.MediaChannelPoolCapabilityPac"
-        }
-      }
-    },
-    "tapi.path.computation.RoutingConstraint": {
-      "type": "object",
-      "properties": {
-        "diversity-policy": {
-          "$ref": "#/definitions/tapi.path.computation.DiversityPolicy"
-        },
-        "route-direction": {
-          "$ref": "#/definitions/tapi.common.ForwardingDirection"
-        },
-        "cost-characteristic": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.CostCharacteristic"
-          },
-          "type": "array",
-          "description": "The list of costs where each cost relates to some aspect of the TopologicalEntity."
-        },
-        "route-objective-function": {
-          "$ref": "#/definitions/tapi.path.computation.RouteObjectiveFunction"
-        },
-        "is-exclusive": {
-          "default": true,
-          "type": "boolean",
-          "description": "To distinguish if the resources are to be exclusive to the service"
-        },
-        "latency-characteristic": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.LatencyCharacteristic"
-          },
-          "type": "array",
-          "description": "The effect on the latency of a queuing process. This only has significant effect for packet based systems and has a complex characteristic."
-        },
-        "risk-diversity-characteristic": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.RiskCharacteristic"
-          },
-          "type": "array"
-        }
-      }
-    },
-    "tapi.connectivity.ConnectivityServiceEndPoint": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.AdminStatePac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.LocalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.ciena.PhotonicConnectivityServiceEndpointExtensions"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "direction": {
-              "description": "The orientation of defined flow at the EndPoint.",
-              "$ref": "#/definitions/tapi.common.PortDirection"
-            },
-            "layer-protocol-qualifier": {
-              "enum": [
-                "ODU2",
-                "ODU2e",
-                "ODU4",
-                "ODU3",
-                "DSR_10GE",
-                "DSR_40GE",
-                "DSR_100GE",
-                "OC192",
-                "STM64",
-                "OC768",
-                "STM256",
-                "DSR_1GE",
-                "OC48",
-                "STM16",
-                "ODU1",
-                "FC100",
-                "FC200",
-                "FC400",
-                "FC800",
-                "FC1200",
-                "FC1600",
-                "FC3200",
-                "FICON1G",
-                "FICONEXPRESS2G",
-                "FICON4G",
-                "FICON8G",
-                "FICON16G"
-              ],
-              "type": "string"
-            },
-            "capacity": {
-              "$ref": "#/definitions/tapi.common.Capacity"
-            },
-            "layer-protocol-name": {
-              "$ref": "#/definitions/tapi.common.LayerProtocolName"
-            },
-            "service-interface-point": {
-              "$ref": "#/definitions/tapi.common.ServiceInterfacePointRef"
-            },
-            "connection-end-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.connectivity.ConnectionEndPointRef"
-              },
-              "type": "array"
-            }
-          },
-          "description": "The association of the FC to LTPs is made via EndPoints.\r\n                The EndPoint (EP) object class models the access to the FC function. \r\n                The traffic forwarding between the associated EPs of the FC depends upon the type of FC and may be associated with FcSwitch object instances.  \r\n                In cases where there is resilience the EndPoint may convey the resilience role of the access to the FC. \r\n                It can represent a protected (resilient/reliable) point or a protecting (unreliable working or protection) point.\r\n                The EP replaces the Protection Unit of a traditional protection model. \r\n                The ForwadingConstruct can be considered as a component and the EndPoint as a Port on that component"
-        }
-      ]
-    },
-    "tapi.topology.ValidationMechanism": {
-      "type": "object",
-      "properties": {
-        "validation-mechanism": {
-          "type": "string",
-          "description": "Name of mechanism used to validate adjacency"
-        },
-        "validation-robustness": {
-          "type": "string",
-          "description": "Quality of validation (i.e. how likely is the stated validation to be invalid)"
-        },
-        "layer-protocol-adjacency-validated": {
-          "type": "string",
-          "description": "State of validatiion"
-        }
-      }
-    },
-    "tapi.photonic.media.ModulationTechnique": {
-      "enum": [
-        "RZ",
-        "NRZ",
-        "BPSK",
-        "DPSK",
-        "QPSK",
-        "8QAM",
-        "16QAM",
-        "PAM4",
-        "PAM8",
-        "UNDEFINED"
-      ],
-      "type": "string"
-    },
-    "tapi.photonic.media.TotalPowerThresholdPac": {
-      "type": "object",
-      "properties": {
-        "total-power-lower-warn-threshold-min": {
-          "type": "string",
-          "description": "Can read the value of the lower threshold that was set"
-        },
-        "total-power-upper-warn-threshold-default": {
-          "type": "string",
-          "description": "Can read the value of the default  threshold that was set"
-        },
-        "total-power-upper-warn-threshold-max": {
-          "type": "string",
-          "description": "Can  read the value of the upper threshold that was set"
-        },
-        "total-power-lower-warn-threshold-max": {
-          "type": "string",
-          "description": "Can  read the value of the upper threshold that was set"
-        },
-        "total-power-lower-warn-threshold-default": {
-          "type": "string",
-          "description": "Can read the value of the default  threshold that was set"
-        },
-        "total-power-upper-warn-threshold-min": {
-          "type": "string",
-          "description": "Can read the value of the lower threshold that was set"
-        }
-      }
-    },
-    "tapi.topology.TransferTimingPac": {
-      "type": "object",
-      "properties": {
-        "latency-characteristic": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.LatencyCharacteristic"
-          },
-          "type": "array",
-          "description": "The effect on the latency of a queuing process. This only has significant effect for packet based systems and has a complex characteristic."
-        }
-      }
-    },
-    "tapi.common.OperationalState": {
-      "enum": [
-        "DISABLED",
-        "ENABLED"
-      ],
-      "type": "string"
-    },
-    "tapi.topology.Topology": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "node": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.Node"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "layer-protocol-name": {
-              "items": {
-                "$ref": "#/definitions/tapi.common.LayerProtocolName"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "link": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.Link"
-              },
-              "type": "array",
-              "description": "none"
-            }
-          },
-          "description": "The ForwardingDomain (FD) object class models the ForwardingDomain topological component which is used to effect forwarding of transport characteristic information and offers the potential to enable forwarding. \r\n                At the lowest level of recursion, an FD (within a network element (NE)) represents a switch matrix (i.e., a fabric). Note that an NE can encompass multiple switch matrices (FDs). "
-        }
-      ]
-    },
-    "tapi.photonic.media.MediaChannelPropertiesPac": {
-      "type": "object",
-      "properties": {
-        "measured-power-egress": {
-          "$ref": "#/definitions/tapi.photonic.media.PowerPropertiesPac"
-        },
-        "measured-power-ingress": {
-          "$ref": "#/definitions/tapi.photonic.media.PowerPropertiesPac"
-        },
-        "occupied-spectrum": {
-          "$ref": "#/definitions/tapi.photonic.media.SpectrumBand"
-        }
-      }
-    },
-    "tapi.common.AdministrativeState": {
-      "enum": [
-        "LOCKED",
-        "UNLOCKED"
-      ],
-      "type": "string"
-    },
-    "tapi.topology.RestorationPolicy": {
-      "enum": [
-        "END_TO_END_RESTORATION",
-        "NA"
-      ],
-      "type": "string"
-    },
-    "tapi.common.LayerProtocolName": {
-      "enum": [
-        "ODU",
-        "ETH",
-        "DSR",
-        "PHOTONIC_MEDIA"
-      ],
-      "type": "string"
-    },
-    "tapi.photonic.media.OtsiCapabilityPac": {
-      "type": "object",
-      "properties": {
-        "supportable-modulation": {
-          "items": {
-            "$ref": "#/definitions/tapi.photonic.media.ModulationTechnique"
-          },
-          "type": "array",
-          "description": "This parameter defines the modulation used at the source"
-        },
-        "supportable-lower-central-frequency": {
-          "items": {
-            "$ref": "#/definitions/tapi.photonic.media.CentralFrequency"
-          },
-          "type": "array",
-          "description": "The lower frequency of the channel spectrum"
-        },
-        "supportable-upper-central-frequency": {
-          "items": {
-            "$ref": "#/definitions/tapi.photonic.media.CentralFrequency"
-          },
-          "type": "array",
-          "description": "The Upper frequency of the channel spectrum"
-        },
-        "supportable-application-identifier": {
-          "items": {
-            "$ref": "#/definitions/tapi.photonic.media.ApplicationIdentifier"
-          },
-          "type": "array",
-          "description": "The list of supportable ApplicationIdentifiers."
-        },
-        "total-power-warn-threshold": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.photonic.media.TotalPowerThresholdPac"
-        }
-      }
-    },
-    "tapi.common.Capacity": {
-      "type": "object",
-      "properties": {
-        "baudRate": {
-          "enum": [
-            "35GBAUD",
-            "56GBAUD"
-          ],
-          "type": "string"
-        },
-        "is-for-multiple-routes": {
-          "default": false,
-          "type": "boolean"
-        },
-        "total-size": {
-          "description": "Total capacity of the TopologicalEntity in MB/s. In case of bandwidthProfile, this is expected to same as the committedInformationRate.",
-          "$ref": "#/definitions/tapi.common.CapacityValue"
-        }
-      }
-    },
-    "tapi.connectivity.connectivitycontext.ConnectivityService": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.AdminStatePac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.connectivity.ConnectivityConstraint"
-        },
-        {
-          "$ref": "#/definitions/tapi.connectivity.ResilienceConstraint"
-        },
-        {
-          "$ref": "#/definitions/tapi.path.computation.RoutingConstraint"
-        },
-        {
-          "$ref": "#/definitions/tapi.path.computation.TopologyConstraint"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "connection": {
-              "items": {
-                "$ref": "#/definitions/tapi.connectivity.ConnectionRef"
-              },
-              "type": "array"
-            },
-            "end-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.connectivity.connectivityservice.EndPoint"
-              },
-              "type": "array"
-            }
-          }
-        }
-      ]
-    },
-    "tapi.common.DirectiveValue": {
-      "enum": [
-        "MINIMIZE",
-        "MAXIMIZE",
-        "ALLOW",
-        "DISALLOW",
-        "DONT_CARE"
-      ],
-      "type": "string"
-    },
-    "tapi.connectivity.ceplist.ConnectionEndPoint": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.connectivity.ConnectionEndPoint"
-        },
-        {
-          "$ref": "#/definitions/tapi.photonic.media.ConnectionEndPointAugmentation2"
-        },
-        {
-          "$ref": "#/definitions/tapi.photonic.media.ConnectionEndPointAugmentation3"
-        },
-        {
-          "$ref": "#/definitions/tapi.photonic.media.ConnectionEndPointAugmentation4"
-        },
-        {
-          "$ref": "#/definitions/tapi.photonic.media.ConnectionEndPointAugmentation5"
-        },
-        {
-          "$ref": "#/definitions/tapi.photonic.media.ConnectionEndPointAugmentation6"
-        }
-      ]
-    },
-    "tapi.common.PortDirection": {
-      "enum": [
-        "BIDIRECTIONAL",
-        "INPUT",
-        "OUTPUT",
-        "UNIDENTIFIED_OR_UNKNOWN"
-      ],
-      "type": "string"
-    },
-    "tapi.common.CapacityPac": {
-      "type": "object",
-      "properties": {
-        "available-capacity": {
-          "description": "Capacity available to be assigned.",
-          "$ref": "#/definitions/tapi.common.Capacity"
-        },
-        "total-potential-capacity": {
-          "description": "An optimistic view of the capacity of the TopologicalEntity assuming that any shared capacity is available to be taken.",
-          "$ref": "#/definitions/tapi.common.Capacity"
-        }
-      }
-    },
-    "tapi.photonic.media.AdjustmentGranularity": {
-      "enum": [
-        "G_100GHZ",
-        "G_50GHZ",
-        "G_25GHZ",
-        "G_12_5GHZ",
-        "G_6_25GHZ",
-        "G_3_125GHZ",
-        "UNCONSTRAINED"
-      ],
-      "type": "string"
-    },
-    "tapi.common.TerminationPac": {
-      "type": "object",
-      "properties": {
-        "termination-state": {
-          "description": "Indicates whether the layer is terminated and if so how.",
-          "$ref": "#/definitions/tapi.common.TerminationState"
-        },
-        "termination-direction": {
-          "description": "The overall directionality of the LP. \r\n                    - A BIDIRECTIONAL LP will have some SINK and/or SOURCE flowss.\r\n                    - A SINK LP can only contain elements with SINK flows or CONTRA_DIRECTION_SOURCE flows\r\n                    - A SOURCE LP can only contain SOURCE flows or CONTRA_DIRECTION_SINK flows",
-          "$ref": "#/definitions/tapi.common.TerminationDirection"
-        }
-      }
-    },
-    "tapi.connectivity.ProtectionRole": {
-      "enum": [
-        "WORK",
-        "PROTECT",
-        "PROTECTED",
-        "NA",
-        "WORK_RESTORE",
-        "PROTECT_RESTORE"
-      ],
-      "type": "string"
-    },
-    "tapi.photonic.media.CentralFrequency": {
-      "type": "object",
-      "properties": {
-        "frequency-constraint": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.photonic.media.FrequencyConstraint"
-        },
-        "central-frequency": {
-          "type": "string",
-          "description": "The central frequency of the laser specified in MHz. It is the oscillation frequency of the corresponding electromagnetic wave. ",
-          "format": "int32"
-        }
-      }
-    },
-    "tapi.photonic.media.OtsiAssemblyConnectionEndPointSpec": {
-      "type": "object",
-      "properties": {
-        "fec-parameters": {
-          "$ref": "#/definitions/tapi.photonic.media.FecPropertiesPac"
-        },
-        "otsi-adapter": {
-          "$ref": "#/definitions/tapi.photonic.media.OtsiGserverAdaptationPac"
-        }
-      }
-    },
-    "tapi.common.CapacityValue": {
-      "type": "object",
-      "properties": {
-        "unit": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.common.CapacityUnit"
-        },
-        "value": {
-          "type": "string",
-          "description": "none",
-          "format": "int32"
-        }
-      }
-    },
-    "tapi.topology.NodeRuleGroupRef": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.topology.NodeRef"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "node-rule-group-uuid": {
-              "type": "string",
-              "description": "none",
-              "x-path": "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:node-rule-group/tapi-topology:uuid"
-            }
-          },
-          "description": "none"
-        }
-      ]
-    },
-    "tapi.common.TimeRange": {
-      "type": "object",
-      "properties": {
-        "end-time": {
-          "type": "string",
-          "description": "none"
-        },
-        "start-time": {
-          "type": "string",
-          "description": "none"
-        }
-      }
-    },
-    "tapi.common.context.ServiceInterfacePoint": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.ServiceInterfacePoint"
-        },
-        {
-          "$ref": "#/definitions/tapi.photonic.media.ServiceInterfacePointAugmentation1"
-        },
-        {
-          "$ref": "#/definitions/tapi.photonic.media.ServiceInterfacePointAugmentation2"
-        }
-      ]
-    },
-    "tapi.topology.RuleType": {
-      "enum": [
-        "FORWARDING",
-        "CAPACITY",
-        "COST",
-        "TIMING",
-        "RISK",
-        "GROUPING"
-      ],
-      "type": "string"
-    },
-    "tapi.topology.CostCharacteristic": {
-      "type": "object",
-      "properties": {
-        "cost-name": {
-          "type": "string",
-          "description": "The cost characteristic will related to some aspect of the TopologicalEntity (e.g. $ cost, routing weight). This aspect will be conveyed by the costName."
-        },
-        "cost-value": {
-          "type": "string",
-          "description": "The specific cost."
-        },
-        "cost-algorithm": {
-          "type": "string",
-          "description": "The cost may vary based upon some properties of the TopologicalEntity. The rules for the variation are conveyed by the costAlgorithm."
-        }
-      }
-    },
-    "tapi.connectivity.ConnectivityService": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.AdminStatePac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.connectivity.ConnectivityConstraint"
-        },
-        {
-          "$ref": "#/definitions/tapi.connectivity.ResilienceConstraint"
-        },
-        {
-          "$ref": "#/definitions/tapi.path.computation.RoutingConstraint"
-        },
-        {
-          "$ref": "#/definitions/tapi.path.computation.TopologyConstraint"
-        },
-        {
-          "$ref": "#/definitions/tapi.ciena.ConnectivityServiceExtensions"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "connection": {
-              "items": {
-                "$ref": "#/definitions/tapi.connectivity.ConnectionRef"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "end-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.connectivity.ConnectivityServiceEndPoint"
-              },
-              "type": "array",
-              "description": "none"
-            }
-          },
-          "description": "The ForwardingConstruct (FC) object class models enabled potential for forwarding between two or more LTPs and like the LTP supports any transport protocol including all circuit and packet forms.\r\n                At the lowest level of recursion, a FC represents a cross-connection within an NE."
-        }
-      ]
-    },
-    "tapi.path.computation.PathRef": {
-      "type": "object",
-      "properties": {
-        "path-uuid": {
-          "type": "string",
-          "x-path": "/tapi-common:context/tapi-path-computation:path-computation-context/tapi-path-computation:path/tapi-path-computation:uuid"
-        }
-      }
-    },
-    "tapi.topology.InterRuleGroup": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.CapacityPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.RiskParameterPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferCostPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferTimingPac"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "associated-node-rule-group": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.NodeRuleGroupRef"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "rule": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.Rule"
-              },
-              "type": "array",
-              "description": "none"
-            }
-          },
-          "description": "none"
-        }
-      ]
-    },
-    "tapi.topology.Link": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.AdminStatePac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.CapacityPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.LayerProtocolTransitionPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.RiskParameterPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferCostPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferIntegrityPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferTimingPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.ValidationPac"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "node-edge-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.NodeEdgePointRef"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "direction": {
-              "description": "The directionality of the Link. \r\n                    Is applicable to simple Links where all LinkEnds are BIDIRECTIONAL (the Link will be BIDIRECTIONAL) or UNIDIRECTIONAL (the Link will be UNIDIRECTIONAL). \r\n                    Is not present in more complex cases.",
-              "$ref": "#/definitions/tapi.common.ForwardingDirection"
-            },
-            "layer-protocol-name": {
-              "items": {
-                "$ref": "#/definitions/tapi.common.LayerProtocolName"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "resilience-type": {
-              "description": "none",
-              "$ref": "#/definitions/tapi.topology.ResilienceType"
-            }
-          },
-          "description": "The Link object class models effective adjacency between two or more ForwardingDomains (FD). "
-        }
-      ]
-    },
-    "tapi.common.TimePeriod": {
-      "type": "object",
-      "properties": {
-        "unit": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.common.TimeUnit"
-        },
-        "value": {
-          "type": "string",
-          "description": "none",
-          "format": "int32"
-        }
-      }
-    },
-    "tapi.connectivity.ConnectionEndPoint": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.OperationalStatePac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.TerminationPac"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "layer-protocol-qualifier": {
-              "type": "string",
-              "description": "none"
-            },
-            "client-node-edge-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.NodeEdgePointRef"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "layer-protocol-name": {
-              "description": "none",
-              "$ref": "#/definitions/tapi.common.LayerProtocolName"
-            },
-            "aggregated-connection-end-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.connectivity.ConnectionEndPointRef"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "connection-port-direction": {
-              "description": "The orientation of defined flow at the EndPoint.",
-              "$ref": "#/definitions/tapi.common.PortDirection"
-            },
-            "parent-node-edge-point": {
-              "description": "none",
-              "$ref": "#/definitions/tapi.topology.NodeEdgePointRef"
-            },
-            "connection-port-role": {
-              "description": "Each EP of the FC has a role (e.g., working, protection, protected, symmetric, hub, spoke, leaf, root)  in the context of the FC with respect to the FC function. ",
-              "$ref": "#/definitions/tapi.common.PortRole"
-            }
-          },
-          "description": "The LogicalTerminationPoint (LTP) object class encapsulates the termination and adaptation functions of one or more transport layers. \r\n                The structure of LTP supports all transport protocols including circuit and packet forms."
-        }
-      ]
-    },
-    "tapi.topology.ForwardingRule": {
-      "enum": [
-        "MAY_FORWARD_ACROSS_GROUP",
-        "MUST_FORWARD_ACROSS_GROUP",
-        "CANNOT_FORWARD_ACROSS_GROUP",
-        "NO_STATEMENT_ON_FORWARDING"
-      ],
-      "type": "string"
-    },
-    "tapi.path.computation.RouteObjectiveFunction": {
-      "enum": [
-        "MIN_WORK_ROUTE_HOP",
-        "MIN_WORK_ROUTE_COST",
-        "MIN_WORK_ROUTE_LATENCY",
-        "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_HOP",
-        "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_COST",
-        "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_LATENCY",
-        "LOAD_BALANCE_MAX_UNUSED_CAPACITY"
-      ],
-      "type": "string"
-    },
-    "tapi.connectivity.OwnedNodeEdgePointAugmentation2": {
-      "x-augmentation": {
-        "prefix": "tapi-connectivity",
-        "namespace": "urn:onf:otcc:yang:tapi-connectivity"
-      },
-      "type": "object",
-      "properties": {
-        "cep-list": {
-          "$ref": "#/definitions/tapi.connectivity.context.topologycontext.topology.node.ownednodeedgepoint.CepList"
-        }
-      }
-    },
-    "tapi.common.TerminationDirection": {
-      "enum": [
-        "BIDIRECTIONAL",
-        "SINK",
-        "SOURCE",
-        "UNDEFINED_OR_UNKNOWN"
-      ],
-      "type": "string"
-    },
-    "tapi.topology.topology.Node": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.AdminStatePac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.CapacityPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.common.GlobalClass"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferCostPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferIntegrityPac"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.TransferTimingPac"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "node-rule-group": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.NodeRuleGroup"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "layer-protocol-name": {
-              "items": {
-                "$ref": "#/definitions/tapi.common.LayerProtocolName"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "encap-topology": {
-              "description": "none",
-              "$ref": "#/definitions/tapi.topology.TopologyRef"
-            },
-            "owned-node-edge-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.node.OwnedNodeEdgePoint"
-              },
-              "type": "array",
-              "description": "none"
-            },
-            "aggregated-node-edge-point": {
-              "items": {
-                "$ref": "#/definitions/tapi.topology.NodeEdgePointRef"
-              },
-              "type": "array",
-              "description": "none"
-            }
-          },
-          "description": "none"
-        }
-      ]
-    },
-    "tapi.common.ForwardingDirection": {
-      "enum": [
-        "BIDIRECTIONAL",
-        "UNIDIRECTIONAL",
-        "UNDEFINED_OR_UNKNOWN"
-      ],
-      "type": "string"
-    },
-    "tapi.topology.NodeEdgePointRef": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.topology.NodeRef"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "node-edge-point-uuid": {
-              "type": "string",
-              "description": "none",
-              "x-path": "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point/tapi-topology:uuid"
-            }
-          },
-          "description": "none"
-        }
-      ]
-    },
-    "tapi.ciena.ConnectivityServiceExtensions": {
-      "type": "object",
-      "properties": {
-        "osrp-enabled": {
-          "default": false,
-          "type": "boolean",
-          "description": "none"
-        },
-        "protecting-exclude-node": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.NodeRef"
-          },
-          "type": "array",
-          "description": "This is a loose constraint - that is it is unordered and could be a partial list"
-        },
-        "spectral-assign-option": {
-          "enum": [
-            "SPECTRUM_SPREAD",
-            "PACK_LOW",
-            "PACK_HIGH"
-          ],
-          "type": "string"
-        },
-        "last-error-msg": {
-          "type": "string",
-          "description": "outcome of last provisioning or routing operation. Blank if no errors occured"
-        },
-        "restoration-path-include-node": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.NodeRef"
-          },
-          "type": "array",
-          "description": "This is a loose constraint - that is it is unordered and could be a partial list"
-        },
-        "protecting-include-node": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.NodeRef"
-          },
-          "type": "array",
-          "description": "This is a loose constraint - that is it is unordered and could be a partial list"
-        },
-        "protecting-restoration-path-exclude-node": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.NodeRef"
-          },
-          "type": "array",
-          "description": "This is a loose constraint - that is it is unordered and could be a partial list"
-        },
-        "protecting-restoration-path-include-node": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.NodeRef"
-          },
-          "type": "array",
-          "description": "This is a loose constraint - that is it is unordered and could be a partial list"
-        },
-        "deployment-state": {
-          "enum": [
-            "PARTIALLY_DEFINED",
-            "DEFINED_AND_VIABLE",
-            "READY_TO_DEPLOY",
-            "DEPLOYMENT_IN_PROGRESS",
-            "INCOMPLETE_DEPLOYMENT",
-            "INCOMPLETE_NOT_READY",
-            "INCOMPLETE_NOT_READY_CONFLICT",
-            "INCOMPLETE_READY_BEST_EFFORT",
-            "COMPLETE_FULLY_READY",
-            "UNDEPLOYMENT_IN_PROGRESS",
-            "INCOMPLETE_UNDEPLOYMENT",
-            "UNDEPLOYED",
-            "WAITING_TO_ADOPT"
-          ],
-          "type": "string"
-        },
-        "maximize-capacity": {
-          "type": "boolean",
-          "description": "Maximize capacity for single photonic service"
-        },
-        "service-type-constraint": {
-          "enum": [
-            "SWITCHED",
-            "NON_SWITCHED"
-          ],
-          "type": "string",
-          "description": "For L1 service specifies whether the service should be switched or non-switched service"
-        },
-        "restoration-path-diversity-exclusion": {
-          "items": {
-            "$ref": "#/definitions/tapi.connectivity.ConnectionRef"
-          },
-          "type": "array",
-          "description": "none"
-        },
-        "center-frequency": {
-          "type": "number",
-          "description": "Requested Center Frequency"
-        },
-        "restoration-path-exclude-node": {
-          "items": {
-            "$ref": "#/definitions/tapi.topology.NodeRef"
-          },
-          "type": "array",
-          "description": "This is a loose constraint - that is it is unordered and could be a partial list"
-        }
-      }
-    },
-    "tapi.photonic.media.SelectedModulation": {
-      "enum": [
-        "RZ",
-        "NRZ",
-        "BPSK",
-        "DPSK",
-        "QPSK",
-        "8QAM",
-        "16QAM",
-        "PAM4",
-        "PAM8",
-        "UNDEFINED"
-      ],
-      "type": "string"
-    },
-    "tapi.common.TimeUnit": {
-      "enum": [
-        "YEARS",
-        "MONTHS",
-        "DAYS",
-        "HOURS",
-        "MINUTES",
-        "SECONDS",
-        "MILLISECONDS",
-        "MICROSECONDS",
-        "NANOSECONDS",
-        "PICOSECONDS"
-      ],
-      "type": "string"
-    },
-    "tapi.topology.Rule": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.common.LocalClass"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "rule-type": {
-              "description": "none",
-              "$ref": "#/definitions/tapi.topology.RuleType"
-            },
-            "forwarding-rule": {
-              "description": "none",
-              "$ref": "#/definitions/tapi.topology.ForwardingRule"
-            },
-            "override-priority": {
-              "type": "string",
-              "description": "none",
-              "format": "int32"
-            }
-          },
-          "description": "none"
-        }
-      ]
-    },
-    "tapi.path.computation.DiversityPolicy": {
-      "enum": [
-        "SRLG",
-        "SRNG",
-        "SNG",
-        "NODE",
-        "LINK"
-      ],
-      "type": "string"
-    },
-    "tapi.topology.node.OwnedNodeEdgePoint": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.connectivity.OwnedNodeEdgePointAugmentation2"
-        },
-        {
-          "$ref": "#/definitions/tapi.photonic.media.OwnedNodeEdgePointAugmentation1"
-        },
-        {
-          "$ref": "#/definitions/tapi.topology.NodeEdgePoint"
-        }
-      ]
-    },
-    "tapi.photonic.media.MediaChannelServiceInterfacePointSpec": {
-      "type": "object",
-      "properties": {
-        "mc-pool": {
-          "$ref": "#/definitions/tapi.photonic.media.MediaChannelPoolCapabilityPac"
-        }
-      }
-    },
-    "tapi.topology.ResilienceType": {
-      "type": "object",
-      "properties": {
-        "restoration-policy": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.topology.RestorationPolicy"
-        },
-        "protection-type": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.topology.ProtectionType"
-        }
-      }
-    },
-    "tapi.topology.LayerProtocolTransitionPac": {
-      "type": "object",
-      "properties": {
-        "transitioned-layer-protocol-name": {
-          "items": {
-            "type": "string"
-          },
-          "type": "array",
-          "description": "Provides the ordered structure of layer protocol transitions encapsulated in the TopologicalEntity. The ordering relates to the LinkPort role."
-        }
-      }
-    },
-    "tapi.common.CapacityUnit": {
-      "enum": [
-        "TB",
-        "TBPS",
-        "GB",
-        "GBPS",
-        "MB",
-        "MBPS",
-        "KB",
-        "KBPS",
-        "GHz",
-        "MHz"
-      ],
-      "type": "string"
-    },
-    "tapi.common.TerminationState": {
-      "enum": [
-        "LP_CAN_NEVER_TERMINATE",
-        "LT_NOT_TERMINATED",
-        "TERMINATED_SERVER_TO_CLIENT_FLOW",
-        "TERMINATED_CLIENT_TO_SERVER_FLOW",
-        "TERMINATED_BIDIRECTIONAL",
-        "LT_PERMENANTLY_TERMINATED",
-        "TERMINATION_STATE_UNKNOWN"
-      ],
-      "type": "string"
-    },
-    "tapi.connectivity.RouteRef": {
-      "allOf": [
-        {
-          "$ref": "#/definitions/tapi.connectivity.ConnectionRef"
-        },
-        {
-          "type": "object",
-          "properties": {
-            "route-local-id": {
-              "type": "string",
-              "x-path": "/tapi-common:context/tapi-connectivity:connectivity-context/tapi-connectivity:connection/tapi-connectivity:route/tapi-connectivity:local-id"
-            }
-          }
-        }
-      ]
-    },
-    "tapi.common.OperationalStatePac": {
-      "type": "object",
-      "properties": {
-        "lifecycle-state": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.common.LifecycleState"
-        },
-        "operational-state": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.common.OperationalState"
-        }
-      }
-    },
-    "tapi.photonic.media.GridType": {
-      "enum": [
-        "DWDM",
-        "CWDM",
-        "FLEX",
-        "GRIDLESS",
-        "UNSPECIFIED"
-      ],
-      "type": "string"
-    },
-    "tapi.photonic.media.LaserControlType": {
-      "enum": [
-        "FORCED-ON",
-        "FORCED-OFF",
-        "AUTOMATIC-LASER-SHUTDOWN",
-        "UNDEFINED"
-      ],
-      "type": "string"
-    },
-    "tapi.ciena.PhotonicConnectivityServiceEndpointExtensions": {
-      "type": "object",
-      "properties": {
-        "ains": {
-          "enum": [
-            "ACTIVE",
-            "INACTIVE",
-            "NA"
-          ],
-          "type": "string"
-        },
-        "photonic-interface-point": {
-          "description": "photonic NE interface point",
-          "$ref": "#/definitions/tapi.common.ServiceInterfacePointRef"
-        },
-        "signal-conditioning": {
-          "enum": [
-            "LASERSHUTOFF",
-            "NONE",
-            "NA"
-          ],
-          "type": "string"
-        }
-      }
-    },
-    "tapi.connectivity.CoordinateType": {
-      "enum": [
-        "NO_COORDINATE",
-        "HOLD_OFF_TIME",
-        "WAIT_FOR_NOTIFICATION"
-      ],
-      "type": "string"
-    },
-    "tapi.connectivity.ReversionMode": {
-      "enum": [
-        "REVERTIVE",
-        "NON-REVERTIVE"
-      ],
-      "type": "string"
-    },
-    "tapi.connectivity.ConnectivityConstraint": {
-      "type": "object",
-      "properties": {
-        "service-type": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.connectivity.ServiceType"
-        },
-        "connectivity-direction": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.common.ForwardingDirection"
-        },
-        "requested-capacity": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.common.Capacity"
-        },
-        "service-layer": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.common.LayerProtocolName"
-        },
-        "service-level": {
-          "type": "string",
-          "description": "An abstract value the meaning of which is mutually agreed � typically represents metrics such as - Class of service, priority, resiliency, availability"
-        },
-        "diversity-exclusion": {
-          "items": {
-            "$ref": "#/definitions/tapi.connectivity.ConnectivityServiceRef"
-          },
-          "type": "array",
-          "description": "none"
-        },
-        "coroute-inclusion": {
-          "description": "none",
-          "$ref": "#/definitions/tapi.connectivity.ConnectivityServiceRef"
-        }
-      }
-    }
-  },
-  "swagger": "2.0",
-  "consumes": [
-    "application/json"
-  ]
-}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_services_inventory_(fres).json b/tapi/resources/MCP_4.0.0_services_inventory_(fres).json
deleted file mode 100644
index de727633b71d799aeb144cba48ba50b2bdb02c94..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_services_inventory_(fres).json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Retrieve, plan and modify services (FREs)", "title": "Services inventory (FREs)"}, "paths": {"/nsi/api/v2_0/fres": {"post": {"responses": {"201": {"description": "FRE and its expectation created successfully.", "schema": {"$ref": "#/definitions/FreRO"}}, "500": {"description": "Failed to create or update FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This REST API is intended to be used by service provisioning micro-service IFD only to create or update a FRE expectation.<p>The following attributes and relationships should be specified in the post request:<ul><li>layerRate, networkRole, directionality, topologySources, etc.<li>endpoint id relationships<li>network construct id relationship if the FRE is nodal<li>id relationship to other FREs if applicable<li>a list of FRE expectation id relationships<li>the endpoint content - specified in the included section<ul><li>role, directionality, etc.<li>tpe id relationships</ul><li>the FRE expectation content - specified in the included section<ul><li>service intent id relationship</ul></ul><p>Identifier keys and values cannot contain whitespace, square brackets, percent, nor plus signs.<p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"-3117193564021298218\",\n    \"type\": \"fres\",\n    \"attributes\": {\n      \"userLabel\": \"drop4_OCH_planned\",\n      \"mgmtName\": \"service_1\",\n      \"layerRate\": \"OTSi\",\n      \"networkRole\": \"FREAP\",\n      \"directionality\": \"unidirectional\",\n      \"topologySources\": [\n        \"stitched\"\n      ],\n      \"additionalAttributes\": {\n        \"isActual\": \"false\"\n      }\n    },\n    \"relationships\": {\n      \"endPoints\": {\n        \"data\": [\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"-3117193564021298218:1\"\n          },\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"-3117193564021298218:2\"\n          }\n        ]\n      },\n      \"partitionFres\": {\n        \"data\": [\n          {\n            \"type\": \"fres\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::FRE_aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_11_1-5-CTPServerToClient-1547.72_aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_11_21-7-CTPServerToClient-1547.72\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"721516201499390732\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"6739849242751075618\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"fdde6704-5d06-41bb-a3f4-d85db8d8c508::FRE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_11_1-8-CTPServerToClient-1547.72_fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_11_21-8-CTPServerToClient-1547.72\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"1808637606701600683\"\n          }\n        ]\n      },\n      \"freExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"freExpectations\",\n            \"id\": \"-3117193564021298218::eb7542a1-a0af-4bfb-a828-63e1162aa1a8\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"-3117193564021298218:1\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"a\",\n        \"directionality\": \"receive ingress\",\n        \"associations\": [\n           {\n             \"orderIndex\": 1,             \"routeType\": \"home\",             \"relationship\": \"tpes\"           }\n         ]\n      },\n      \"relationships\": {\n        \"tpes\": {\n          \"data\": [\n            {\n              \"type\": \"tpes\",\n              \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\"\n            }\n          ]\n        }\n      }\n    },\n    {\n      \"id\": \"-3117193564021298218:2\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"z\",\n        \"directionality\": \"transmit egress\"\n      },\n      \"relationships\": {\n        \"tpes\": {\n          \"data\": [\n            {\n              \"type\": \"tpes\",\n              \"id\": \"fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_12_11-1-PTP\"\n            }\n          ]\n        }\n      }\n    },\n    {\n      \"id\": \"-3117193564021298218::eb7542a1-a0af-4bfb-a828-63e1162aa1a8\",\n      \"type\": \"freExpectations\",\n      \"attributes\": {\n        \"modelType\": \"controlPlane\",\n        \"userLabel\": \"userLabel1\",\n        \"layerRate\": \"OTSi\",\n        \"networkRole\": \"IFRE\",\n        \"directionality\": \"bidirectional\",\n        \"photonicSpectrumPackage\": {\n           \"frequency\": \"196.075000:196.125000\",\n           \"minFreq\": \"195.975000:196.025000\",\n           \"maxFreq\": \"195.775000:195.825000\"\n          }\n       },\n      \"relationships\": {\n         \"endPoints\": {\n             \"data\": [\n                 {\n                   \"type\": \"endPoints\",\n                   \"id\": \"1\"\n                 },\n                 {\n                   \"type\": \"endPoints\",\n                   \"id\": \"2\"\n                 }\n             ]\n         },\n        \"networkConstruct\": {\n           \"data\": {\n              \"type\": \"networkConstructs\",\n              \"id\": \"ncId1\"\n           }\n        },\n        \"serviceIntent\": {\n          \"data\": {\n            \"type\": \"serviceIntents\",\n            \"id\": \"eb7542a1-a0af-4bfb-a828-63e1162aa1a8\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre>", "parameters": [{"schema": {"$ref": "#/definitions/FreRO"}, "description": "FRE to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["998 - nsiapiv2_0fres"], "summary": "Creates or updates a FRE", "consumes": ["application/json"], "operationId": "postFreV2"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreListRO"}}, "500": {"description": "Failed to retrieve the FREs with given query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>At least one of the following parameters must be specified:<ul><li>tpeId<li>networkConstruct.id<li>ncId (Deprecated)<li>group<li>freExpectations.serviceIntent.id<li>freExpectations.equipmentIntent.id<li>childFreId<li>endpoint.tpe.concrete<li>identifiers (Deprecated)<li>identifierKey & identifierValue</ul>\nNote: when querying by identifiers, the supported syntax is as follows:\n     ?identifierKeys=key1,key2,...&identifierValues=value1,value2,...\nFor instance:\n     ?identifierKey=ossLabel&identifierValue=ossLabel\nNote: In place of a blank space you can also use + or %20", "parameters": [{"description": "TPE identifier for endpoints", "required": false, "type": "string", "name": "tpeId", "in": "query"}, {"description": "(Deprecated) Network Construct identifier", "required": false, "type": "string", "name": "ncId", "in": "query"}, {"description": "Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "FRE types in comma separated list. The allowed values are: service, link, roadmline-ap, roadmline", "required": false, "type": "string", "name": "type", "in": "query"}, {"enum": ["dwa", "infrastructure", "packet", "packet_infrastructure", "tdm"], "description": "FRE group :<ul><li>dwa for all FREs in OTU4 and all top level FREs in ETHERNET, DSR, DSR_ETHERNET, OTSi(OCH), ODU2, ODU4<li>infrastructure for all FRE-APs representing forwarding constructs between ROADM OTS'<li>packet for all L2 nodal and top level FREs in ETHERNET including infrastructure</ul>", "required": false, "in": "query", "type": "string", "name": "group"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "30", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: tpes, expectations", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "FRE layer rates in comma separated list The allowed values are: ETHERNET, OTU2, OTU4, OTSi, OMS, OS, PHY, OTS, ODU2, ODU4, DSR, DSR_10GE, DSR_100GE, DSR_ETHERNET", "required": false, "type": "string", "name": "layerRate", "in": "query"}, {"description": "FRE types in comma separated list The allowed values are: explicitRoute, explicitRouteGroup, snc, sncGroup", "required": false, "type": "string", "name": "freType", "in": "query"}, {"description": "User label", "required": false, "type": "string", "name": "userLabel", "in": "query"}, {"description": "Management Name", "required": false, "type": "string", "name": "managementName", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "freExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The child FRE identifier to return its parents", "required": false, "type": "string", "name": "childFreId", "in": "query"}, {"enum": ["actual", "expectation"], "description": "(Optional) The given type would be excluded from get parents call, only combine with childFreId", "required": false, "in": "query", "type": "string", "name": "exclude"}, {"description": "(Optional) The identifier indicating type of parent to be returned. If specified, parent matching the criteria will be returned", "required": false, "type": "string", "name": "signalContentType", "in": "query"}, {"description": "(Optional) Find roadmlines by srlg values separated by comma. A roadmline is a FRE between two SAM cards.", "required": false, "type": "string", "name": "srlg", "in": "query"}, {"description": "(Optional) Find services configured over a roadmline based on the roadmline FRE identifier.", "required": false, "type": "string", "name": "roadmLineId", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "MetaData to be included. The allowed values are: layerRate", "required": false, "type": "string", "name": "includeMetaData", "in": "query"}, {"description": "Concrete TPE identifier for endpoints", "required": false, "type": "string", "name": "endpoint.tpe.concrete", "in": "query"}, {"description": "List of comma separated keys for an identifer object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "List of comma separated values for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"enum": ["unidirectional", "bidirectional"], "description": "(Optional) Indicates if unidirectional or bidirectional FREs should be returned", "required": false, "in": "query", "type": "string", "name": "directionality"}], "produces": ["application/json"], "deprecated": true, "tags": ["998 - nsiapiv2_0fres"], "summary": "Retrieve FRE satisfying the provided parameters", "operationId": "getFre"}}, "/nsi/api/fres/{freId}/frePlanned": {"put": {"responses": {"201": {"description": "Planned FRE created/updated successfully.", "schema": {"$ref": "#/definitions/FrePlannedRO"}}, "500": {"description": "Failed to create a planned FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FrePlannedRO"}, "description": "Planned FRE to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Creates and updates a planned FRE", "consumes": ["application/json"], "operationId": "putFrePlanned"}, "patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/FrePlannedRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/FrePlannedRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon request accepted, code 202 is returned and the output consists of JSON objects representing current fre resource.<p>Example replace request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"userLabel\" : \"newLabel\",\n               \"description\" : \"This is the description on an Fre\"\n,            }\n        }\n    ]\n}\n</code></pre><p>Example delete request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"userLabel\"\n        }\n    ]\n}\n</code></pre>", "parameters": [{"description": "The id of the fre to be updated", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FrePatchRO"}, "description": "A patch request to the given fre.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json-patch+json"], "tags": ["000 - nsiapifres"], "summary": "Update attributes on the planned FRE by specific FRE ID ", "operationId": "patchPlannedFre"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V4<p>When using the include parameter, resources will also be retrieved from the expectation if 'expectations' is one of the include parameters.", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, equipment", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Retrieves the planned FRE by specific FRE ID", "operationId": "getPlannedAttributesFrebyId"}}, "/nsi/api/v3/fres/{freId}/expectations": {"post": {"responses": {"201": {"description": "FRE expectation has been created on the server", "schema": {"$ref": "#/definitions/FreRO"}}, "200": {"description": "An existing FRE expectation have been updated on the server", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "The specified FRE does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>This REST API is intended to be used by service provisioning micro-service IFD only to create or update an FRE expectation on existing FRE.<p>The following attributes and relationships should be specified in the post request:<ul><li>layerRate, networkRole, directionality, topologySources, etc.<li>endpoint id relationships<li>network construct id relationship if the FRE is nodal<li>id relationship to other FREs if applicable<li>a list of FRE expectation id relationships<li>the endpoint content - specified in the included section<ul><li>role, directionality, etc.<li>tpe id relationships</ul><li>the FRE expectation content - specified in the included section<ul><li>service intent id relationship</ul></ul><p>Identifier keys and values cannot contain whitespace, square brackets, percent, nor plus signs.<p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"SNCG(2)-57f3cccb-6918-4ce1-949f-0dff34a8a501\",\n    \"type\": \"freExpectations\",\n    \"attributes\": {\n      \"directionality\": \"bidirectional\",\n      \"userLabel\": \"BP SNCG\",\n      \"networkRole\": \"IFRE\",\n      \"layerRate\": \"OMS\",\n      \"modelType\": \"controlPlane\",\n      \"freType\": \"sncGroup\",\n      \"routingConstraints\": {\n        \"isRouteExclusive\": \"true\",\n        \"identifier\": \"c807e13a-6ec6-48c4-a4cd-38afe40fdd39\"\n      }\n    },\n    \"relationships\": {\n      \"serviceIntent\": {\n        \"data\": {\n          \"type\": \"serviceIntents\",\n          \"id\": \"57f3cccb-6918-4ce1-949f-0dff34a8a501\"\n        }\n      },\n      \"endPoints\": {\n        \"data\": [\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"1\"\n          },\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"2\"\n          }\n        ]\n      },\n      \"networkConstruct\": {\n        \"data\": {\n          \"type\": \"networkConstructs\",\n          \"id\": \"2452f453-fb13-4ebb-bee5-d32ac520611c\"\n        }\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"1\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"a\",\n        \"associations\": [\n          {\n            \"relationship\": \"networkConstructs\",\n            \"identifier\": {\n              \"osrpNodeName\": \"PV0037FGD\"\n            }\n          }\n        ]\n      },\n      \"relationships\": {}\n    },\n    {\n      \"id\": \"2\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"z\",\n        \"associations\": [\n          {\n            \"relationship\": \"networkConstructs\",\n            \"identifier\": {\n              \"osrpNodeName\": \"PV0037FGA\"\n            }\n          }\n        ]\n      },\n      \"relationships\": {}\n    }\n  ]\n}\n</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the FRE under which to create the expectation", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FreExpectationRO"}, "description": "Request to create an FRE expectation", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3fres"], "summary": "Post an FRE Expectation given the FRE id", "consumes": ["application/json"], "operationId": "postFREExpectationV3"}}, "/nsi/api/fres/{freId}/adminState": {"put": {"responses": {"200": {"description": "The AdminState was changed successfully"}, "404": {"description": "The specified FRE does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "LATEST VERSION: V3", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired adminState value", "required": true, "name": "adminStateValue", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Set the AdminState of an FRE", "consumes": ["text/plain"], "operationId": "putFreAdminState"}}, "/nsi/api/v4/fres/{freId}/expectations/{freExpId}": {"patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/FreExpectationRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/FrePlannedRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon request accepted, code 202 is returned and the output consists of JSON objects representing current fre resource.</code></pre><p>Example replace request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"srlg\" : [\"srlg1\", \"srlg2\"]\n            }\n        }\n    ]\n}\n</code></pre>Doing a replace on srlg with an empty list will delete the srlg attribute\n", "parameters": [{"description": "The id of the fre to be updated", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "The id of the freExpectation to be updated", "required": true, "type": "string", "name": "freExpId", "in": "path"}, {"schema": {"$ref": "#/definitions/FrePatchRO"}, "description": "A patch request to the given fre.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json-patch+json"], "tags": ["996 - nsiapiv4fres"], "summary": "Update attributes on an expectation on the FRE by specific FRE ID and FRE Expectation ID ", "operationId": "patchFreExpectation"}}, "/nsi/api/v3/fres/deploymentState": {"put": {"responses": {"200": {"description": "The DeploymentState was changed successfully"}, "404": {"description": "There are no FREs for the specified intent ID or top-level fre ID", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>One of the following parameters must be specified:<ul><li>freExpectations.serviceIntent.id<li>top-level freId</ul>", "parameters": [{"description": "The service intent Id. Mutually exclusive with freId", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "Top-level FRE Identifier. Mutually exclusive with freExpectations.serviceIntent.id", "required": false, "type": "string", "name": "freId", "in": "query"}, {"schema": {"type": "string"}, "description": "The desired deployment state value", "required": true, "name": "deploymentStateValue", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["997 - nsiapiv3fres"], "summary": "Set the deploymentState of FREs of the specified intent or children FREs of the specified top-level FRE ID", "consumes": ["text/plain"], "operationId": "putFreDeploymentState"}}, "/nsi/api/fres/{freId}/userData/{userDataKey}": {"put": {"responses": {"200": {"description": "FRE userData attribute created/updated", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "The specified FRE does not exist.", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to modify userData on FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0<p>Any leading or trailing whitespace will be trimmed from userData.<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "Key of userData to update", "required": true, "type": "string", "name": "userDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired userData value", "required": true, "name": "userDataValue", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Create or update a userData attribute on an FRE", "consumes": ["text/plain"], "operationId": "putFreUserData"}, "delete": {"responses": {"200": {"description": "The specified userData attribute does not exist in FRE."}, "404": {"description": "The specified FRE does not exist.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted FRE userData attribute successfully."}, "500": {"description": "Failed to delete FRE userData attribute"}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "Key of userData to delete", "required": true, "type": "string", "name": "userDataKey", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Delete a userData attribute from an FRE", "operationId": "deleteFreUserData"}}, "/nsi/api/v2_0/fres/{id}/identifiers/{identifierKey}": {"put": {"responses": {"200": {"description": "FRE identifier created on the server", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "The specified FRE does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Identifier keys and values cannot contain square brackets, percent, nor plus signs.<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the FRE under which to create or update the identifier", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to create or update", "required": true, "type": "string", "name": "identifierKey", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "identifier", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0fres"], "summary": "Post an FRE Identifier to a given FRE", "consumes": ["application/json"], "operationId": "updateFreIdentifiers"}, "delete": {"responses": {"404": {"description": "The specified FRE or identifier does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted FRE identifier successfully."}, "500": {"description": "Failed to delete FRE identifier.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Identifier keys cannot contain whitespace, square brackets, percent, nor plus signs", "parameters": [{"description": "Identifier of the FRE whose identifier is to be deleted", "required": true, "type": "string", "name": "id", "in": "path"}, {"description": "Key of the identifier to delete", "required": true, "type": "string", "name": "identifierKey", "in": "path"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0fres"], "summary": "Delete an Identifier from a given identifier", "operationId": "deleteFreIdentifiers"}}, "/nsi/api/fres/{freId}/expectations": {"post": {"responses": {"201": {"description": "FRE expectation has been created on the server", "schema": {"$ref": "#/definitions/FreRO"}}, "200": {"description": "An existing FRE expectation have been updated on the server", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "The specified FRE does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>This REST API is intended to be used by service provisioning micro-service IFD only to create or update an FRE expectation on existing FRE.<p>The following attributes and relationships should be specified in the post request:<ul><li>layerRate, networkRole, directionality, topologySources, etc.<li>endpoint id relationships<li>network construct id relationship if the FRE is nodal<li>id relationship to other FREs if applicable<li>a list of FRE expectation id relationships<li>the endpoint content - specified in the included section<ul><li>role, directionality, etc.<li>tpe id relationships</ul><li>the FRE expectation content - specified in the included section<ul><li>service intent id relationship</ul></ul><p>Identifier keys and values cannot contain whitespace, square brackets, percent, nor plus signs.<p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"SNCG(2)-57f3cccb-6918-4ce1-949f-0dff34a8a501\",\n    \"type\": \"freExpectations\",\n    \"attributes\": {\n      \"directionality\": \"bidirectional\",\n      \"userLabel\": \"BP SNCG\",\n      \"networkRole\": \"IFRE\",\n      \"layerRate\": \"OMS\",\n      \"modelType\": \"controlPlane\",\n      \"freType\": \"sncGroup\",\n      \"routingConstraints\": {\n        \"isRouteExclusive\": \"true\",\n        \"identifier\": \"c807e13a-6ec6-48c4-a4cd-38afe40fdd39\"\n      }\n    },\n    \"relationships\": {\n      \"serviceIntent\": {\n        \"data\": {\n          \"type\": \"serviceIntents\",\n          \"id\": \"57f3cccb-6918-4ce1-949f-0dff34a8a501\"\n        }\n      },\n      \"endPoints\": {\n        \"data\": [\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"1\"\n          },\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"2\"\n          }\n        ]\n      },\n      \"networkConstruct\": {\n        \"data\": {\n          \"type\": \"networkConstructs\",\n          \"id\": \"2452f453-fb13-4ebb-bee5-d32ac520611c\"\n        }\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"1\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"a\",\n        \"associations\": [\n          {\n            \"relationship\": \"networkConstructs\",\n            \"identifier\": {\n              \"osrpNodeName\": \"PV0037FGD\"\n            }\n          }\n        ]\n      },\n      \"relationships\": {}\n    },\n    {\n      \"id\": \"2\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"z\",\n        \"associations\": [\n          {\n            \"relationship\": \"networkConstructs\",\n            \"identifier\": {\n              \"osrpNodeName\": \"PV0037FGA\"\n            }\n          }\n        ]\n      },\n      \"relationships\": {}\n    }\n  ]\n}\n</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "Identifier of the FRE under which to create the expectation", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FreExpectationRO"}, "description": "Request to create an FRE expectation", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Post an FRE Expectation given the FRE id", "consumes": ["application/json"], "operationId": "postFREExpectation"}}, "/nsi/api/fres/{freId}/freExpectations": {"get": {"responses": {"200": {"description": "Get FRE Expectations with given id successfully.", "schema": {"$ref": "#/definitions/FreExpectationRO"}}, "404": {"description": "Cannot find FRE Expectations for the FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to get FRE Expectation with id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Retrieve FRE Expectations with freId", "operationId": "getFreExpectation"}}, "/nsi/api/v5/fres": {"get": {"responses": {"200": {"description": "Successfully retrieved the list of FREs.", "schema": {"$ref": "#/definitions/FreListRO"}}, "500": {"description": "Failed to retrieve the FREs with given query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>At least one of the following parameters must be specified:<ul><li>tpeId<li>networkConstruct.id<li>freExpectations.serviceIntent.id<li>freExpectations.equipmentIntent.id<li>childFreId<li>endpoint.tpe.concrete<li>identifiers</ul>\nNote: when querying by identifiers, the supported syntax is as follows:\n     ?identifierKeys=key1,key2,...&identifierValues=value1,value2,...\nFor instance:\n     ?identifierKey=ossLabel&identifierValue=ossLabel", "parameters": [{"description": "TPE identifier for endpoints", "required": false, "type": "string", "name": "tpeId", "in": "query"}, {"description": "Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "The service intent Id", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "The equipment intent Id", "required": false, "type": "string", "name": "freExpectations.equipmentIntent.id", "in": "query"}, {"description": "The child FRE identifier to return its parents", "required": false, "type": "string", "name": "childFreId", "in": "query"}, {"description": "Concrete TPE identifier for endpoints", "required": false, "type": "string", "name": "endpoint.tpe.concrete", "in": "query"}, {"description": "List of comma separated keys for an identifer object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "List of comma separated values for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) FRE types in comma separated list. The allowed values are: explicitRoute, explicitRouteGroup, snc, sncGroup", "required": false, "type": "string", "name": "freType", "in": "query"}, {"description": "(Optional) A single given type to be excluded used in conjunction with the `childFreId` parameter. The allowed values are: actual, expectation", "required": false, "type": "string", "name": "exclude", "in": "query"}, {"description": "(Optional) The identifier indicating type of parent to be returned. If specified, parent matching the criteria will be returned", "required": false, "type": "string", "name": "signalContentType", "in": "query"}, {"description": "(Optional) Find services configured over a roadmline based on the roadmline FRE identifier.", "required": false, "type": "string", "name": "roadmLineId", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "(Optional) The size of a returned page", "default": "30", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: tpes, expectations, frePlanned, freDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["995 - nsiapiv5fres"], "summary": "Retrieve a list of FREs provided with the satisfying parameters", "operationId": "getFresV5"}}, "/nsi/api/fres/{freId}/bookingData/{bookingDataKey}": {"put": {"responses": {"200": {"description": "FRE bookingData attribute created/updated", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "The specified FRE does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to modify bookingData on FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<ul><li>Any leading or trailing whitespace will be trimmed from the bookingData<li>LATEST VERSION: V2_0<li>assignedBandwidth and assignedBandwidthUnit is not valid on an ETHERNET LLDP Link FRE_AP", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "bookingData attribute name (and allowable values):<ul><li>assignedBandwidth (positive number)<li>assignedBandwidthUnit (mpbs, kbps, or gbps)<li>bandwidthLockout (true, false)<li>bookingFactor (positive number to one decimal place, like 1.0)</ul>", "required": true, "type": "string", "name": "bookingDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired bookingData value", "required": true, "name": "bookingDataValue", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Create or update a bookingData attribute on a specified FRE", "consumes": ["text/plain"], "operationId": "putFreBookingData"}, "delete": {"responses": {"200": {"description": "The specified bookingData attribute does not exist in FRE."}, "204": {"description": "Deleted FRE bookingData successfully."}, "404": {"description": "The specified FRE does not exist.", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid parameters specified.", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to delete FRE bookingData attribute", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "bookingData attribute to delete:<ul><li>assignedBandwidth<li>assignedBandwidthUnit<li>bandwidthLockout<li>bookingFactor</ul>", "required": true, "type": "string", "name": "bookingDataKey", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Delete a bookingData attribute from an FRE", "operationId": "deleteFreBookingData"}}, "/nsi/api/v4/fres": {"post": {"responses": {"201": {"description": "FRE and its expectation created successfully.", "schema": {"$ref": "#/definitions/FreRO"}}, "500": {"description": "Failed to create FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This REST API is intended to be used by service provisioning micro-service IFD only to create a FRE expectation.<p>The following attributes and relationships should be specified in the post request:<ul><li>layerRate, networkRole, directionality, topologySources, etc.<li>endpoint id relationships<li>network construct id relationship if the FRE is nodal<li>id relationship to other FREs if applicable<li>a list of FRE expectation id relationships<li>the endpoint content - specified in the included section<ul><li>role, directionality, etc.<li>tpe id relationships</ul><li>the FRE expectation content - specified in the included section<ul><li> validateParameters - Comma separated list of parameters (if any) to be validated against the expectation</ul></ul><p>Identifier keys and values cannot contain whitespace, square brackets, percent, nor plus signs.<p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"-3117193564021298218\",\n    \"type\": \"fres\",\n    \"attributes\": {\n      \"userLabel\": \"drop4_OCH_planned\",\n      \"mgmtName\": \"service_1\",\n      \"layerRate\": \"OTSi\",\n      \"networkRole\": \"FREAP\",\n      \"directionality\": \"unidirectional\",\n      \"topologySources\": [\n        \"stitched\"\n      ]\n    },\n    \"relationships\": {\n      \"endPoints\": {\n        \"data\": [\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"-3117193564021298218:1\"\n          },\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"-3117193564021298218:2\"\n          }\n        ]\n      },\n      \"partitionFres\": {\n        \"data\": [\n          {\n            \"type\": \"fres\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::FRE_aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_11_1-5-CTPServerToClient-1547.72_aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_11_21-7-CTPServerToClient-1547.72\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"721516201499390732\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"6739849242751075618\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"fdde6704-5d06-41bb-a3f4-d85db8d8c508::FRE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_11_1-8-CTPServerToClient-1547.72_fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_11_21-8-CTPServerToClient-1547.72\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"1808637606701600683\"\n          }\n        ]\n      },\n      \"freExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"freExpectations\",\n            \"id\": \"-3117193564021298218::eb7542a1-a0af-4bfb-a828-63e1162aa1a8\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"-3117193564021298218:1\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"a\",\n        \"directionality\": \"receive ingress\",\n        \"associations\": [\n           {\n               \"orderIndex\": 1,\n               \"routeType\": \"home\",\n               \"relationship\": \"tpes\"\n           }\n         ]\n      },\n      \"relationships\": {\n        \"tpes\": {\n          \"data\": [\n            {\n              \"type\": \"tpes\",\n              \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\"\n            }\n          ]\n        }\n      }\n    },\n    {\n      \"id\": \"-3117193564021298218:2\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"z\",\n        \"directionality\": \"transmit egress\"\n      },\n      \"relationships\": {\n        \"tpes\": {\n          \"data\": [\n            {\n              \"type\": \"tpes\",\n              \"id\": \"fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_12_11-1-PTP\"\n            }\n          ]\n        }\n      }\n    },\n    {\n      \"id\": \"-3117193564021298218::eb7542a1-a0af-4bfb-a828-63e1162aa1a8\",\n      \"type\": \"freExpectations\",\n      \"attributes\": {\n        \"modelType\": \"controlPlane\",\n        \"userLabel\": \"userLabel1\",\n        \"layerRate\": \"OTSi\",\n        \"networkRole\": \"IFRE\",\n        \"directionality\": \"bidirectional\",\n        \"photonicSpectrumPackage\": {\n           \"frequency\": \"196.075000:196.125000\",\n           \"minFreq\": \"195.975000:196.025000\",\n           \"maxFreq\": \"195.775000:195.825000\"\n          },\n        \"validateParameters\": {\n          \"include\": \"layerRate\"\n        }\n       },\n      \"relationships\": {\n         \"endPoints\": {\n             \"data\": [\n                 {\n                   \"type\": \"endPoints\",\n                   \"id\": \"1\"\n                 },\n                 {\n                   \"type\": \"endPoints\",\n                   \"id\": \"2\"\n                 }\n             ]\n         },\n        \"networkConstruct\": {\n           \"data\": {\n              \"type\": \"networkConstructs\",\n              \"id\": \"ncId1\"\n           }\n        },\n        \"serviceIntent\": {\n          \"data\": {\n            \"type\": \"serviceIntents\",\n            \"id\": \"eb7542a1-a0af-4bfb-a828-63e1162aa1a8\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/FreRO"}, "description": "FRE to create", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4fres"], "summary": "Creates a FRE", "consumes": ["application/json"], "operationId": "postFreV4"}, "get": {"responses": {"200": {"description": "Successfully retrieved the list of FREs.", "schema": {"$ref": "#/definitions/FreListRO"}}, "500": {"description": "Failed to retrieve the FREs with given query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "\nNote: when querying by identifiers, the supported syntax is as follows:\n     ?identifierKey=key1,key2,...&identifierValue=value1,value2,...\nFor instance:\n     ?identifierKey=ossLabel&identifierValue=ossLabel", "parameters": [{"description": "(Optional) Comma separated list of FRE identifiers to retrieve", "required": false, "type": "string", "name": "id", "in": "query"}, {"description": "(Optional) The searchable text, (default search Fields are name, layerRate, tpeLocations if searchFields is not specified.)", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) List of comma separated fields to search with, combined with searchText. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "searchFields", "in": "query"}, {"description": "(Optional) List of fre planning states. By default, if no value for this parameter is specified, root and unknown states are filtered out. The allowed values are: root, planned, discovered, plannedAndDiscovered, unknown", "default": "planned,discovered,plannedAndDiscovered", "required": false, "in": "query", "type": "string", "name": "resourceState"}, {"description": "FRE layer rates in comma separated list.  The allowed values are: ETHERNET, OTU1, OTU2, OTU2e, OTU3, OTU4, OTUCn, OTSi, OMS, OS, PHY, OTS, FICON, FC, ODU, ODU0, ODU1, ODU2, ODU2e, ODU3, ODU4, ODUCn, DSR, DSR_10GE, DSR_100GE, DSR_ETHERNET, ENCAPSULATION, MPLS, MPLS_PROTECTION, MEDIA, LAG, RS, E1, E3, E1_2M, EC1, DSR_2M, LINE_OC3_STS3_AND_MS_STM1, SECTION_OC3_STS3_AND_RS_STM1, DSR_OC3_STM1, DSR_OC12_STM4, DSR_OC48_STM16, DSR_OC192_STM64, CES_IWF, T1, DSR_1_5M, STS1, STS3C, STS12C, STS24C, STS48C, DS0, DS1, DS3, VT15, VT2, NOT_APPLICABLE, ODUFLEX, OTUg, ODUg, BGP", "required": false, "type": "string", "name": "layerRate", "in": "query"}, {"description": "Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "TPE identifier for endpoints", "required": false, "type": "string", "name": "tpeId", "in": "query"}, {"description": "List of comma separated keys for an identifer object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "List of comma separated values for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) List of concrete FRE identifiers", "required": false, "type": "string", "name": "concrete", "in": "query"}, {"description": "(Optional) modelType parameter used to filter results", "required": false, "type": "string", "name": "modelType", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional)  Flag that enables/disables a link from having additional tunnel BW being consumed", "required": false, "in": "query", "type": "string", "name": "bookingData.lockout"}, {"enum": ["dwa", "infrastructure", "packet", "packet_infrastructure", "tdm"], "description": "(Optional, Deprecated) FRE group :<ul><li>dwa for all FREs in OTU4 and all top level FREs in ETHERNET, DSR, DSR_ETHERNET, OTSi(OCH), ODU2, ODU4, ODUCn, OTUCn<li>infrastructure for all FRE-APs representing forwarding constructs between ROADM OTS'<li>packet for all L2 nodal and top level FREs in ETHERNET including infrastructure</ul>", "required": false, "in": "query", "type": "string", "name": "group"}, {"description": "FRE types in comma separated list The allowed values are: explicitRoute, explicitRouteGroup, snc, sncGroup", "required": false, "type": "string", "name": "freType", "in": "query"}, {"description": "User label", "required": false, "type": "string", "name": "userLabel", "in": "query"}, {"description": "Management Name", "required": false, "type": "string", "name": "managementName", "in": "query"}, {"description": "(Optional) The service intent Id", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "(Optional) The equipment intent Id", "required": false, "type": "string", "name": "freExpectations.equipmentIntent.id", "in": "query"}, {"description": "(Optional) The child FRE identifier to return its parents", "required": false, "type": "string", "name": "childFreId", "in": "query"}, {"enum": ["actual", "expectation"], "description": "(Optional) The given type would be excluded from get parents call, only combine with childFreId", "required": false, "in": "query", "type": "string", "name": "exclude"}, {"description": "(Optional) The identifier indicating type of parent to be returned. If specified, parent matching the criteria will be returned", "required": false, "type": "string", "name": "signalContentType", "in": "query"}, {"description": "(Optional) Find roadmlines by srlg values separated by comma. A roadmline is a FRE between two SAM cards.", "required": false, "type": "string", "name": "srlg", "in": "query"}, {"description": "(Optional) Find services configured over a roadmline based on the roadmline FRE identifier.", "required": false, "type": "string", "name": "roadmLineId", "in": "query"}, {"description": "Concrete TPE identifier for endpoints", "required": false, "type": "string", "name": "endpoint.tpe.concrete", "in": "query"}, {"description": "(Optional) deploymentState parameter used to filter results", "required": false, "type": "string", "name": "deploymentState", "in": "query"}, {"description": "(Optional) Represents the deployment state of the service intent through its life cycle", "required": false, "type": "string", "name": "intentDeploymentStateString", "in": "query"}, {"description": "(Optional) Represents the different phases of the service intent through its life cycle", "required": false, "type": "string", "name": "intentLifeCyclePhaseString", "in": "query"}, {"enum": ["true", "false"], "description": "(Optional) The active state of the resource", "required": false, "in": "query", "type": "string", "name": "active"}, {"description": "(Optional) Comma-separated named query id list; The allowed values are: resiliency, tdmServices, topologicalLinks, roadmLineSpan", "required": false, "type": "string", "name": "namedQuery", "in": "query"}, {"enum": ["unidirectional", "bidirectional"], "description": "(Optional) Indicates if unidirectional or bidirectional FREs should be returned", "required": false, "in": "query", "type": "string", "name": "directionality"}, {"enum": ["IFRE", "FREAP", "ROADMLINE", "IFRECP"], "description": "(Optional) Determines if the FRE participates in an internal or external forwarding view or involves access points or connection points", "required": false, "in": "query", "type": "string", "name": "networkRole"}, {"description": "FRE types in comma separated list. The allowed values are: service, link, roadmline-ap, roadmline", "required": false, "type": "string", "name": "type", "in": "query"}, {"enum": ["EVC", "ETransit", "EAccess", "VLAN", "TDM", "Transport Client", "Photonic", "Tunnel", "IP", "LLDP", "LAG", "OTU", "ROADM Line", "Fiber", "SNC", "OSRP Link", "OSRP Line", "SNCP"], "description": "(Optional) Allow filtering on the FRE service class. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "serviceClass"}, {"description": "(Optional) Indicates additional qualification information for a LayerRate. For example, for beyond 100G rates (e.g. OTUCn, ODUCn), defines the n multiplier, or the n-M subrate value.", "required": false, "type": "string", "name": "layerRateQualifier", "in": "query"}, {"description": "(Optional) Retrieves all supported parent FREs (one serviceClass/layer level up) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportedByFreId", "in": "query"}, {"description": "(Optional) Retrieves all supporting child FREs (one serviceClass/layer level down) that have a serviceClass designation for the specified FRE Id", "required": false, "type": "string", "name": "supportingFreId", "in": "query"}, {"description": "(Optional) Search for an exact match on customerName", "required": false, "type": "string", "name": "customerName", "in": "query"}, {"description": "(Optional) For Control Plane SNCs only: Retrieves all SNCs provided the parent SNCG userLabel", "required": false, "type": "string", "name": "sncgUserlabel", "in": "query"}, {"description": "(Optional) Allow filtering on FRE Tunnel class service. This parameter accepts a list of comma separated values: dynamic, static", "required": false, "type": "string", "name": "tunnelType", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState. This parameter accepts a list of comma separated values: enabled, disabled, not applicable, In Service, Out of Service", "required": false, "type": "string", "name": "adminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState. This parameter accepts a list of comma separated values: fully operating, not operating, degraded operation, Not Applicable, Undetermined, In Service, Degraded, Out of Service External, Out of Service", "required": false, "type": "string", "name": "operationState", "in": "query"}, {"enum": ["good", "high", "low", "upgrade"], "description": "(Optional) Allow filtering on the LQS status. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.status"}, {"enum": ["true", "false"], "description": "(Optional) The LQS margin validity state", "required": false, "in": "query", "type": "string", "name": "lqsData.margin.valid"}, {"enum": ["true", "false"], "description": "(Optional) The LQS fiber reconciled state", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.reconciled"}, {"enum": ["totalPower", "osc"], "description": "(Optional) Allow filtering on the LQS fiber method. This parameter accepts a list of comma separated values", "required": false, "in": "query", "type": "string", "name": "lqsData.fiber.method"}, {"description": "(Optional) A list of LQS margin viable at EOL states", "required": false, "type": "string", "name": "lqsData.margin.viableAtEol", "in": "query"}, {"description": "(Optional) Retrieves all correlated FREs that are co-routed and co-terminated with the specified FRE Id", "required": false, "type": "string", "name": "coroutedFreId", "in": "query"}, {"description": "(Optional) Allow filtering on FRE tags. This parameter accepts a list of comma separated strings", "required": false, "type": "string", "name": "tags", "in": "query"}, {"description": "(Optional) Allow filtering on FRE adminState display string", "required": false, "type": "string", "name": "displayAdminState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE operationState display string", "required": false, "type": "string", "name": "displayOperationState", "in": "query"}, {"description": "(Optional) Allow filtering on FRE topologySource display string. Currently will only be set to 'Retained' on Fres", "required": false, "type": "string", "name": "displayTopologySource", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) List of comma separated fields by which to sort the result. Fields require full path (i.e. data.attributes.field). A dash or negative sign before a field indicates descending order; by default ascending order is used", "required": false, "type": "string", "name": "sortBy", "in": "query"}, {"description": "Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "The size of a returned page", "default": "30", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "MetaData to be included. The allowed values are: layerRate, layerRateQualifier, signalContentType, intentLifeCyclePhaseString, intentDeploymentStateString, serviceClass, sncgUserlabel, adminState, operationState, lqsData.status, lqsData.margin.valid, lqsData.fiber.reconciled, lqsData.fiber.method, lqsData.margin.viableAtEol, displayAdminState, displayOperationState, displayTopologySource, customerName", "required": false, "type": "string", "name": "metaDataFields", "in": "query"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: tpes, expectations, networkConstructs, planned, freDiscovered, frePlanned", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["996 - nsiapiv4fres"], "summary": "Retrieve a list of FREs provided with the satisfying parameters", "operationId": "getFresV4"}}, "/nsi/api/v5/fres/{freId}": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, networkConstructs, equipment, expectations, frePlanned, freDiscovered, abstracts, controllers", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["995 - nsiapiv5fres"], "summary": "Retrieves a specific FRE", "operationId": "getFreByIdV5"}}, "/nsi/api/v6/fres/{freId}": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, networkConstructs, equipment, expectations, frePlanned, freDiscovered, abstracts, controllers", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["994 - nsiapiv6fres"], "summary": "Retrieves a specific FRE", "operationId": "getFreByIdV6"}}, "/nsi/api/fres/{freId}/expectations/{freExpId}": {"patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/FreExpectationRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/FrePlannedRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon request accepted, code 202 is returned and the output consists of JSON objects representing current fre resource.</code></pre><p>Example replace request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"srlg\" : [\"srlg1\", \"srlg2\"]\n            }\n        }\n    ]\n}\n</code></pre>", "parameters": [{"description": "The id of the fre to be updated", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "The id of the freExpectation to be updated", "required": true, "type": "string", "name": "freExpId", "in": "path"}, {"schema": {"$ref": "#/definitions/FrePatchRO"}, "description": "A patch request to the given fre.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json-patch+json"], "tags": ["000 - nsiapifres"], "summary": "Update attributes on an expectation on the FRE by specific FRE ID and FRE Expectation ID ", "operationId": "patchFreExpectation"}}, "/nsi/api/fres": {"post": {"responses": {"201": {"description": "FRE and its expectation created successfully.", "schema": {"$ref": "#/definitions/FreRO"}}, "500": {"description": "Failed to create FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4<p>This REST API is intended to be used by service provisioning micro-service IFD only to create a FRE expectation.<p>The following attributes and relationships should be specified in the post request:<ul><li>layerRate, networkRole, directionality, topologySources, etc.<li>endpoint id relationships<li>network construct id relationship if the FRE is nodal<li>id relationship to other FREs if applicable<li>a list of FRE expectation id relationships<li>the endpoint content - specified in the included section<ul><li>role, directionality, etc.<li>tpe id relationships</ul><li>the FRE expectation content - specified in the included section<ul><li> validateParameters - Comma separated list of parameters (if any) to be validated against the expectation</ul></ul><p>Identifier keys and values cannot contain whitespace, square brackets, percent, nor plus signs.<p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"-3117193564021298218\",\n    \"type\": \"fres\",\n    \"attributes\": {\n      \"userLabel\": \"drop4_OCH_planned\",\n      \"mgmtName\": \"service_1\",\n      \"layerRate\": \"OTSi\",\n      \"networkRole\": \"FREAP\",\n      \"directionality\": \"unidirectional\",\n      \"topologySources\": [\n        \"stitched\"\n      ]\n    },\n    \"relationships\": {\n      \"endPoints\": {\n        \"data\": [\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"-3117193564021298218:1\"\n          },\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"-3117193564021298218:2\"\n          }\n        ]\n      },\n      \"partitionFres\": {\n        \"data\": [\n          {\n            \"type\": \"fres\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::FRE_aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_11_1-5-CTPServerToClient-1547.72_aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_11_21-7-CTPServerToClient-1547.72\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"721516201499390732\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"6739849242751075618\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"fdde6704-5d06-41bb-a3f4-d85db8d8c508::FRE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_11_1-8-CTPServerToClient-1547.72_fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_11_21-8-CTPServerToClient-1547.72\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"1808637606701600683\"\n          }\n        ]\n      },\n      \"freExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"freExpectations\",\n            \"id\": \"-3117193564021298218::eb7542a1-a0af-4bfb-a828-63e1162aa1a8\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"-3117193564021298218:1\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"a\",\n        \"directionality\": \"receive ingress\",\n        \"associations\": [\n           {\n               \"orderIndex\": 1,\n               \"routeType\": \"home\",\n               \"relationship\": \"tpes\"\n           }\n         ]\n      },\n      \"relationships\": {\n        \"tpes\": {\n          \"data\": [\n            {\n              \"type\": \"tpes\",\n              \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\"\n            }\n          ]\n        }\n      }\n    },\n    {\n      \"id\": \"-3117193564021298218:2\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"z\",\n        \"directionality\": \"transmit egress\"\n      },\n      \"relationships\": {\n        \"tpes\": {\n          \"data\": [\n            {\n              \"type\": \"tpes\",\n              \"id\": \"fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_12_11-1-PTP\"\n            }\n          ]\n        }\n      }\n    },\n    {\n      \"id\": \"-3117193564021298218::eb7542a1-a0af-4bfb-a828-63e1162aa1a8\",\n      \"type\": \"freExpectations\",\n      \"attributes\": {\n        \"modelType\": \"controlPlane\",\n        \"userLabel\": \"userLabel1\",\n        \"layerRate\": \"OTSi\",\n        \"networkRole\": \"IFRE\",\n        \"directionality\": \"bidirectional\",\n        \"photonicSpectrumPackage\": {\n           \"frequency\": \"196.075000:196.125000\",\n           \"minFreq\": \"195.975000:196.025000\",\n           \"maxFreq\": \"195.775000:195.825000\"\n          },\n        \"validateParameters\": {\n          \"include\": \"layerRate\"\n        }\n       },\n      \"relationships\": {\n         \"endPoints\": {\n             \"data\": [\n                 {\n                   \"type\": \"endPoints\",\n                   \"id\": \"1\"\n                 },\n                 {\n                   \"type\": \"endPoints\",\n                   \"id\": \"2\"\n                 }\n             ]\n         },\n        \"networkConstruct\": {\n           \"data\": {\n              \"type\": \"networkConstructs\",\n              \"id\": \"ncId1\"\n           }\n        },\n        \"serviceIntent\": {\n          \"data\": {\n            \"type\": \"serviceIntents\",\n            \"id\": \"eb7542a1-a0af-4bfb-a828-63e1162aa1a8\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre><p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"schema": {"$ref": "#/definitions/FreRO"}, "description": "FRE to create", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Creates a FRE", "consumes": ["application/json"], "operationId": "postFre"}, "get": {"responses": {"200": {"description": "Successfully retrieved the list of FREs.", "schema": {"$ref": "#/definitions/FreListRO"}}, "500": {"description": "Failed to retrieve the FREs with given query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V6\n<p>At least one of the following parameters must be specified:<ul><li>tpeId<li>networkConstruct.id<li>freExpectations.serviceIntent.id<li>freExpectations.equipmentIntent.id<li>childFreId<li>endpoint.tpe.concrete<li>identifiers</ul>\nNote: when querying by identifiers, the supported syntax is as follows:\n     ?identifierKeys=key1,key2,...&identifierValues=value1,value2,...\nFor instance:\n     ?identifierKey=ossLabel&identifierValue=ossLabel", "parameters": [{"description": "TPE identifier for endpoints", "required": false, "type": "string", "name": "tpeId", "in": "query"}, {"description": "Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "The service intent Id", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "The equipment intent Id", "required": false, "type": "string", "name": "freExpectations.equipmentIntent.id", "in": "query"}, {"description": "The child FRE identifier to return its parents", "required": false, "type": "string", "name": "childFreId", "in": "query"}, {"description": "Concrete TPE identifier for endpoints", "required": false, "type": "string", "name": "endpoint.tpe.concrete", "in": "query"}, {"description": "List of comma separated keys for an identifer object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "List of comma separated values for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) FRE types in comma separated list. The allowed values are: explicitRoute, explicitRouteGroup, snc, sncGroup", "required": false, "type": "string", "name": "freType", "in": "query"}, {"description": "(Optional) A single given type to be excluded used in conjunction with the `childFreId` parameter. The allowed values are: actual, expectation", "required": false, "type": "string", "name": "exclude", "in": "query"}, {"description": "(Optional) The identifier indicating type of parent to be returned. If specified, parent matching the criteria will be returned", "required": false, "type": "string", "name": "signalContentType", "in": "query"}, {"description": "(Optional) Find services configured over a roadmline based on the roadmline FRE identifier.", "required": false, "type": "string", "name": "roadmLineId", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "(Optional) The size of a returned page", "default": "30", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: tpes, expectations, frePlanned, freDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Retrieve a list of FREs provided with the satisfying parameters", "operationId": "getFres"}}, "/nsi/api/v3/fres/{freId}/expectations/{expectationId}/realize": {"post": {"responses": {"200": {"description": "Request to provision was sent successfully."}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Provisioning request failed against FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "If FRE is not realized, it will trigger a create provisioning operation, otherwise it will trigger a update provisioning operation to change the current discovered data.", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "FreExpectation to realize", "required": true, "type": "string", "name": "expectationId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3fres"], "summary": "Perform a provision operation on a FRE", "consumes": ["application/json"], "operationId": "provisionOperationsV3"}}, "/nsi/api/v4/fres/{freId}": {"put": {"responses": {"200": {"description": "FRE has been updated successfully."}, "500": {"description": "Failed to update FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "FRE identifier.", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FreRO"}, "description": "The new FRE data.", "required": true, "name": "fre", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4fres"], "summary": "Updates an FRE", "consumes": ["application/json"], "operationId": "putFreByIdV4"}, "patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/FreRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/FreRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon request accepted, code 202 is returned and the output consists of JSON objects representing current fre resource.<p>Example replace request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"note\" : {\n                   \"noteMsg\" : \"This is an updated message on an Fre\",\n                   \"lastUpdatedBy\" : \"userName\"\n               },\n               \"customerName\" : \"This is the customer name on an Fre\"\n,               \"lqsData\" : {\n                   \"status\" : \"good\",\n                   \"margin\" : {\n                       \"minMargin\" : -1.0,\n                       \"upgrMargin\" : -1.0,\n                       \"sdMargin\" : -1.0,\n                       \"valid\" : true,\n                       \"viableAtEol\" : \"exceeded\"\n                   },\n                   \"fiber\" : {\n                       \"measuredLoss\" : -1.0,\n                       \"modeledLoss\" : -1.0,\n                       \"deltaLoss\" : -1.0,\n                       \"modeledMargin\" : -1.0,\n                       \"method\" : \"osc\",\n                       \"reconciled\" : true\n                   }\n               }\n            }\n        }\n    ]\n}\n</code></pre><p>Example delete request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"note\"\n        }\n    ]\n}\n</code></pre>Doing a replace on srlg with an empty list will delete the srlg attribute\n", "parameters": [{"description": "The id of the fre to be updated", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FrePatchRO"}, "description": "A patch request to the given fre.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json-patch+json"], "tags": ["996 - nsiapiv4fres"], "summary": "Performs update operations on an FRE resource", "operationId": "patchOperationV4"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, networkConstructs, equipment, expectations, frePlanned, freDiscovered, abstracts", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4fres"], "summary": "Retrieves a specific FRE", "operationId": "getFreByIdV4"}}, "/nsi/api/v2_0/fres/{freId}/bookingData/{bookingDataKey}": {"put": {"responses": {"200": {"description": "FRE bookingData attribute created/updated", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "The specified FRE does not exist", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to modify bookingData on FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<ul><li>Any leading or trailing whitespace will be trimmed from the bookingData<li>assignedBandwidth and assignedBandwidthUnit is not valid on an ETHERNET LLDP Link FRE_AP", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "bookingData attribute name (and allowable values):<ul><li>assignedBandwidth (positive number)<li>assignedBandwidthUnit (mpbs, kbps, or gbps)<li>bandwidthLockout (true, false)<li>bookingFactor (positive number to one decimal place, like 1.0)</ul>", "required": true, "type": "string", "name": "bookingDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired bookingData value", "required": true, "name": "bookingDataValue", "in": "body"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0fres"], "summary": "Create or update a bookingData attribute on a specified FRE", "consumes": ["text/plain"], "operationId": "putFreBookingDataV2"}, "delete": {"responses": {"200": {"description": "The specified bookingData attribute does not exist in FRE."}, "204": {"description": "Deleted FRE bookingData successfully."}, "404": {"description": "The specified FRE does not exist.", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid parameters specified.", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to delete FRE bookingData attribute", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "bookingData attribute to delete:<ul><li>assignedBandwidth<li>assignedBandwidthUnit<li>bandwidthLockout<li>bookingFactor</ul>", "required": true, "type": "string", "name": "bookingDataKey", "in": "path"}], "tags": ["998 - nsiapiv2_0fres"], "description": "", "summary": "Delete a bookingData attribute from an FRE", "operationId": "deleteFreBookingDataV2"}}, "/nsi/api/v2_0/fres/{freId}/userData/{userDataKey}": {"put": {"responses": {"200": {"description": "FRE userData attribute created/updated", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "The specified FRE does not exist.", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to modify userData on FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Any leading or trailing whitespace will be trimmed from userData.", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "Key of userData to update", "required": true, "type": "string", "name": "userDataKey", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired userData value", "required": true, "name": "userDataValue", "in": "body"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0fres"], "summary": "Create or update a userData attribute on an FRE", "consumes": ["text/plain"], "operationId": "putFreUserDataV2"}, "delete": {"responses": {"200": {"description": "The specified userData attribute does not exist in FRE."}, "404": {"description": "The specified FRE does not exist.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted FRE userData attribute successfully."}, "500": {"description": "Failed to delete FRE userData attribute"}}, "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "userData attribute name to delete", "required": true, "type": "string", "name": "userDataKey", "in": "path"}], "tags": ["998 - nsiapiv2_0fres"], "description": "", "summary": "Delete a userData attribute from an FRE", "operationId": "deleteFreUserDataV2"}}, "/nsi/api/v4/fres/{freId}/expectationMismatches": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>Mismatch for each FRE in the FRE subtree are returned", "parameters": [{"description": "Identifier of the FRE", "required": true, "type": "string", "name": "freId", "in": "path"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4fres"], "summary": "Retrieves expectation mismatches, if any, for the specified FRE ID", "operationId": "getFreExpectationMismatchesV4"}}, "/nsi/api/v3/fres/{freId}/discovered/validate": {"post": {"responses": {"200": {"description": "Validation was performed successfully."}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Provisioning request failed against FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "The validation is hierarchical and includes  all children (decomposed or partitioned) FREs in the tree of the specified parent FRE", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3fres"], "summary": " Validate discovered FRE(s) against planned FRE(s) hierarchy for a parent FRE resource identified by FRE ID", "consumes": ["application/json"], "operationId": "validateDiscoveredAgainstPlanned"}}, "/nsi/api/v3/fres/{freId}/validationExpectation": {"put": {"responses": {"201": {"description": "validation FRE and its expectations created successfully.", "schema": {"$ref": "#/definitions/FreRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to create or update FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "This REST API is intended to be used by service provisioning micro-service IFD only to create or update a FRE validation expectation. On initial creation, FRE expectations can be specified and created as well, on update, only the FRE validation expectation can be updated<p>The following attributes and relationships should be specified in the post request for initial creation:<ul><li>layerRate, networkRole, directionality, topologySources, etc.<li>endpoint id relationships<li>network construct id relationship if the FRE is nodal<li>id relationship to other FREs if applicable<li>a list of FRE expectation id relationships<li>the endpoint content - specified in the included section<ul><li>role, directionality, etc.<li>tpe id relationships</ul><li>the FRE expectation content - specified in the included section<ul><li> validateParameters - Comma separated list of parameters (if any) to be validated against the expectation</ul></ul><p>Identifier keys and values cannot contain whitespace, square brackets, percent, nor plus signs.<p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"-3117193564021298218\",\n    \"type\": \"fres\",\n    \"attributes\": {\n      \"userLabel\": \"drop4_OCH_planned\",\n      \"mgmtName\": \"service_1\",\n      \"layerRate\": \"OTSi\",\n      \"networkRole\": \"FREAP\",\n      \"directionality\": \"unidirectional\",\n      \"topologySources\": [\n        \"stitched\"\n      ],\n      \"additionalAttributes\": {\n        \"isActual\": \"false\"\n      }\n    },\n    \"relationships\": {\n      \"endPoints\": {\n        \"data\": [\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"-3117193564021298218:1\"\n          },\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"-3117193564021298218:2\"\n          }\n        ]\n      },\n      \"partitionFres\": {\n        \"data\": [\n          {\n            \"type\": \"fres\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::FRE_aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_11_1-5-CTPServerToClient-1547.72_aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_11_21-7-CTPServerToClient-1547.72\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"721516201499390732\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"6739849242751075618\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"fdde6704-5d06-41bb-a3f4-d85db8d8c508::FRE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_11_1-8-CTPServerToClient-1547.72_fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_11_21-8-CTPServerToClient-1547.72\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"1808637606701600683\"\n          }\n        ]\n      },\n      \"freExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"freExpectations\",\n            \"id\": \"-3117193564021298218::eb7542a1-a0af-4bfb-a828-63e1162aa1a8\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"-3117193564021298218:1\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"a\",\n        \"directionality\": \"receive ingress\",\n        \"associations\": [\n           {\n             \"orderIndex\": 1,             \"routeType\": \"home\",             \"relationship\": \"tpes\"           }\n         ]\n      },\n      \"relationships\": {\n        \"tpes\": {\n          \"data\": [\n            {\n              \"type\": \"tpes\",\n              \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\"\n            }\n          ]\n        }\n      }\n    },\n    {\n      \"id\": \"-3117193564021298218:2\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"z\",\n        \"directionality\": \"transmit egress\"\n      },\n      \"relationships\": {\n        \"tpes\": {\n          \"data\": [\n            {\n              \"type\": \"tpes\",\n              \"id\": \"fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_12_11-1-PTP\"\n            }\n          ]\n        }\n      }\n    },\n    {\n      \"id\": \"-3117193564021298218::eb7542a1-a0af-4bfb-a828-63e1162aa1a8\",\n      \"type\": \"freExpectations\",\n      \"attributes\": {\n        \"modelType\": \"controlPlane\",\n        \"userLabel\": \"userLabel1\",\n        \"layerRate\": \"OTSi\",\n        \"networkRole\": \"IFRE\",\n        \"directionality\": \"bidirectional\",\n        \"photonicSpectrumPackage\": {\n           \"frequency\": \"196.075000:196.125000\",\n           \"minFreq\": \"195.975000:196.025000\",\n           \"maxFreq\": \"195.775000:195.825000\"\n          },\n        \"validateParameters\": {\n          \"include\": \"layerRate\"\n        }\n       },\n      \"relationships\": {\n         \"endPoints\": {\n             \"data\": [\n                 {\n                   \"type\": \"endPoints\",\n                   \"id\": \"1\"\n                 },\n                 {\n                   \"type\": \"endPoints\",\n                   \"id\": \"2\"\n                 }\n             ]\n         },\n        \"networkConstruct\": {\n           \"data\": {\n              \"type\": \"networkConstructs\",\n              \"id\": \"ncId1\"\n           }\n        },\n        \"serviceIntent\": {\n          \"data\": {\n            \"type\": \"serviceIntents\",\n            \"id\": \"eb7542a1-a0af-4bfb-a828-63e1162aa1a8\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre>", "parameters": [{"description": "FRE identifier.", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FreRO"}, "description": "FRE to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3fres"], "summary": "Creates or updates FRE validation expectation for a deployed/discovered FRE", "consumes": ["application/json"], "operationId": "postFrePlannedWithExpectation"}}, "/nsi/api/v3/fres/{freId}/freExpectations/{freExpectationId}": {"delete": {"responses": {"200": {"description": "Deleted FRE Expectation successfully."}, "204": {"description": "FRE Expectation does not exist."}, "404": {"description": "FRE does not exist."}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to delete FRE Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "FRE expectation identifier", "required": true, "type": "string", "name": "freExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3fres"], "summary": "Delete a FRE Expectaion given the fre id and expectation id", "operationId": "deleteFreExpectationByIdV3"}}, "/nsi/api/fres/{freId}/expectationMismatches": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>LATEST VERSION: V4<p>Mismatch for each FRE in the FRE subtree are returned", "parameters": [{"description": "Identifier of the FRE", "required": true, "type": "string", "name": "freId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Retrieves expectation mismatches, if any, for the specified FRE ID", "operationId": "getFreExpectationMismatches"}}, "/nsi/api/v3/fres/{freId}/adminState": {"put": {"responses": {"200": {"description": "The AdminState was changed successfully"}, "404": {"description": "The specified FRE does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"type": "string"}, "description": "The desired adminState value", "required": true, "name": "adminStateValue", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3fres"], "summary": "Set the AdminState of an FRE", "consumes": ["text/plain"], "operationId": "putFreAdminStateV3"}}, "/nsi/api/fres/{freId}/identifiers": {"put": {"responses": {"201": {"description": "Successfully created a new FRE identifier for the given FRE", "schema": {"$ref": "#/definitions/FreRO"}}, "200": {"description": "Fre identifier have been created on the server", "schema": {"$ref": "#/definitions/FreRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad or invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "LATEST VERSION: V3<p>Identifier keys and values cannot contain whitespace, square brackets, percent, nor plus signs<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The FRE id", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Post an FRE Identifier to a given FRE", "consumes": ["application/json"], "operationId": "updateFreIdentifier"}, "delete": {"responses": {"403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Successfully deleted the FRE identifier"}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "The FRE id", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Deletes the FRE identifier from a given FRE", "consumes": ["application/json"], "operationId": "deleteFreIdentifier"}}, "/nsi/api/fres/{freId}": {"put": {"responses": {"200": {"description": "FRE has been updated successfully.", "schema": {"$ref": "#/definitions/FreRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to update FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "FRE identifier.", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FreRO"}, "description": "The new FRE data.", "required": true, "name": "fre", "in": "body"}], "tags": ["000 - nsiapifres"], "summary": "Update a specific FRE", "consumes": ["application/json"], "operationId": "putFreById"}, "patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/FreRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/FreRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V4<p>Upon request accepted, code 202 is returned and the output consists of JSON objects representing current fre resource.<p>Example replace request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"note\" : {\n                   \"noteMsg\" : \"This is an updated message on an Fre\",\n                   \"lastUpdatedBy\" : \"userName\"\n               },\n               \"customerName\" : \"This is the customer name on an Fre\"\n,               \"lqsData\" : {\n                   \"status\" : \"good\",\n                   \"margin\" : {\n                       \"minMargin\" : -1.0,\n                       \"upgrMargin\" : -1.0,\n                       \"sdMargin\" : -1.0,\n                       \"valid\" : true,\n                       \"viableAtEol\" : \"exceeded\"\n                   },\n                   \"fiber\" : {\n                       \"measuredLoss\" : -1.0,\n                       \"modeledLoss\" : -1.0,\n                       \"deltaLoss\" : -1.0,\n                       \"modeledMargin\" : -1.0,\n                       \"method\" : \"osc\",\n                       \"reconciled\" : true\n                   }\n               }\n            }\n        }\n    ]\n}\n</code></pre><p>Example delete request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"note\"\n        }\n    ]\n}\n</code></pre>", "parameters": [{"description": "The id of the fre to be updated", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FrePatchRO"}, "description": "A patch request to the given fre.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json-patch+json"], "tags": ["000 - nsiapifres"], "summary": "Performs update operations on an FRE resource", "operationId": "patchOperation"}, "delete": {"responses": {"200": {"description": "The de-provisioning request was sent successfully"}, "404": {"description": "The specified FRE does not exist", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to delete specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "LATEST VERSION: V3", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "De-provision an FRE", "operationId": "unprovision"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V6", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, networkConstructs, equipment, expectations, frePlanned, freDiscovered, abstracts, controllers", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Retrieves a specific FRE", "operationId": "getFrebyId"}}, "/nsi/api/v3/fres/{freId}": {"delete": {"responses": {"200": {"description": "The de-provisioning request was sent or FRE is deleted successfully."}, "403": {"description": "Forbidden to delete specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "FRE does not exist."}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3fres"], "summary": "De-provision an actul FRE or  delete a root FRE", "operationId": "unprovisionV3"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the FRE to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, networkConstructs, equipment, expectations, frePlanned, freDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["997 - nsiapiv3fres"], "summary": "Retrieves a specific FRE", "operationId": "getFreById"}}, "/nsi/api/v3/fres": {"get": {"responses": {"200": {"description": "Successfully retrieved the list of FREs.", "schema": {"$ref": "#/definitions/FreListRO"}}, "500": {"description": "Failed to retrieve the FREs with given query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>At least one of the following parameters must be specified:<ul><li>tpeId<li>networkConstruct.id<li>group<li>freExpectations.serviceIntent.id<li>freExpectations.equipmentIntent.id<li>childFreId<li>endpoint.tpe.concrete<li>identifiers</ul>\nNote: when querying by identifiers, the supported syntax is as follows:\n     ?identifierKeys=key1,key2,...&identifierValues=value1,value2,...\nFor instance:\n     ?identifierKey=ossLabel&identifierValue=ossLabel", "parameters": [{"description": "TPE identifier for endpoints", "required": false, "type": "string", "name": "tpeId", "in": "query"}, {"description": "Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"enum": ["dwa", "infrastructure", "packet"], "description": "FRE group :<ul><li>dwa for all FREs in OTU4 and all top level FREs in ETHERNET, DSR, DSR_ETHERNET, OTSi(OCH), ODU2, ODU4<li>infrastructure for all FRE-APs representing forwarding constructs between ROADM OTS'<li>packet for all L2 nodal and top level FREs in ETHERNET including infrastructure</ul>", "required": false, "in": "query", "type": "string", "name": "group"}, {"description": "The service intent Id", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "The equipment intent Id", "required": false, "type": "string", "name": "freExpectations.equipmentIntent.id", "in": "query"}, {"description": "The child FRE identifier to return its parents", "required": false, "type": "string", "name": "childFreId", "in": "query"}, {"description": "Concrete TPE identifier for endpoints", "required": false, "type": "string", "name": "endpoint.tpe.concrete", "in": "query"}, {"description": "List of comma separated keys for an identifer object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "List of comma separated values for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) FRE types in comma separated list. The allowed values are: service, link, roadmline-ap, roadmline", "required": false, "type": "string", "name": "type", "in": "query"}, {"description": "(Optional) Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "(Optional) The size of a returned page", "default": "30", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: tpes, expectations, planned (roadmlines), frePlanned, freDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}, {"description": "(Optional) FRE layer rates in comma separated list. The allowed values are: ETHERNET, OTU2, OTU4, OTSi, OMS, OS, PHY, OTS, ODU2, ODU4, DSR, DSR_10GE, DSR_100GE, DSR_ETHERNET", "required": false, "type": "string", "name": "layerRate", "in": "query"}, {"description": "(Optional) FRE types in comma separated list. The allowed values are: explicitRoute, explicitRouteGroup, snc, sncGroup", "required": false, "type": "string", "name": "freType", "in": "query"}, {"description": "(Optional) User label", "required": false, "type": "string", "name": "userLabel", "in": "query"}, {"description": "(Optional) Management Name", "required": false, "type": "string", "name": "managementName", "in": "query"}, {"enum": ["actual", "expectation"], "description": "(Optional) The given type would be excluded from get parents call, only combine with childFreId", "required": false, "in": "query", "type": "string", "name": "exclude"}, {"description": "(Optional) The identifier indicating type of parent to be returned. If specified, parent matching the criteria will be returned", "required": false, "type": "string", "name": "signalContentType", "in": "query"}, {"description": "(Optional) Find roadmlines by srlg values separated by comma. A roadmline is a FRE between two SAM cards.", "required": false, "type": "string", "name": "srlg", "in": "query"}, {"description": "(Optional) Find services configured over a roadmline based on the roadmline FRE identifier.", "required": false, "type": "string", "name": "roadmLineId", "in": "query"}, {"description": "(Optional) The searchable text", "required": false, "type": "string", "name": "searchText", "in": "query"}, {"description": "(Optional) MetaData to be included. The allowed values are: layerRate", "required": false, "type": "string", "name": "includeMetaData", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}], "produces": ["application/json"], "deprecated": true, "tags": ["997 - nsiapiv3fres"], "summary": "Retrieve a list of FREs provided with the satisfying parameters", "operationId": "getFresV3"}}, "/nsi/api/fres/{freId}/validationExpectation": {"put": {"responses": {"201": {"description": "validation FRE and its expectations created successfully.", "schema": {"$ref": "#/definitions/FreRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to create or update FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3<p>This REST API is intended to be used by service provisioning micro-service IFD only to create or update a FRE validation expectation. On initial creation, FRE expectations can be specified and created as well, on update, only the FRE validation expectation can be updated<p>The following attributes and relationships should be specified in the post request for initial creation:<ul><li>layerRate, networkRole, directionality, topologySources, etc.<li>endpoint id relationships<li>network construct id relationship if the FRE is nodal<li>id relationship to other FREs if applicable<li>a list of FRE expectation id relationships<li>the endpoint content - specified in the included section<ul><li>role, directionality, etc.<li>tpe id relationships</ul><li>the FRE expectation content - specified in the included section<ul><li> validateParameters - Comma separated list of parameters (if any) to be validated against the expectation</ul></ul><p>Identifier keys and values cannot contain whitespace, square brackets, percent, nor plus signs.<p>The response only has id field populated.<p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"-3117193564021298218\",\n    \"type\": \"fres\",\n    \"attributes\": {\n      \"userLabel\": \"drop4_OCH_planned\",\n      \"mgmtName\": \"service_1\",\n      \"layerRate\": \"OTSi\",\n      \"networkRole\": \"FREAP\",\n      \"directionality\": \"unidirectional\",\n      \"topologySources\": [\n        \"stitched\"\n      ],\n      \"additionalAttributes\": {\n        \"isActual\": \"false\"\n      }\n    },\n    \"relationships\": {\n      \"endPoints\": {\n        \"data\": [\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"-3117193564021298218:1\"\n          },\n          {\n            \"type\": \"endPoints\",\n            \"id\": \"-3117193564021298218:2\"\n          }\n        ]\n      },\n      \"partitionFres\": {\n        \"data\": [\n          {\n            \"type\": \"fres\",\n            \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::FRE_aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_11_1-5-CTPServerToClient-1547.72_aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_11_21-7-CTPServerToClient-1547.72\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"721516201499390732\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"6739849242751075618\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"fdde6704-5d06-41bb-a3f4-d85db8d8c508::FRE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_11_1-8-CTPServerToClient-1547.72_fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_11_21-8-CTPServerToClient-1547.72\"\n          },\n          {\n            \"type\": \"fres\",\n            \"id\": \"1808637606701600683\"\n          }\n        ]\n      },\n      \"freExpectations\": {\n        \"data\": [\n          {\n            \"type\": \"freExpectations\",\n            \"id\": \"-3117193564021298218::eb7542a1-a0af-4bfb-a828-63e1162aa1a8\"\n          }\n        ]\n      }\n    }\n  },\n  \"included\": [\n    {\n      \"id\": \"-3117193564021298218:1\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"a\",\n        \"directionality\": \"receive ingress\",\n        \"associations\": [\n           {\n             \"orderIndex\": 1,             \"routeType\": \"home\",             \"relationship\": \"tpes\"           }\n         ]\n      },\n      \"relationships\": {\n        \"tpes\": {\n          \"data\": [\n            {\n              \"type\": \"tpes\",\n              \"id\": \"aca92325-0c37-45b4-815d-df8c2c4e7da8::TPE_aca92325-0c37-45b4-815d-df8c2c4e7da8::EQPT_12_11-1-PTP\"\n            }\n          ]\n        }\n      }\n    },\n    {\n      \"id\": \"-3117193564021298218:2\",\n      \"type\": \"endPoints\",\n      \"attributes\": {\n        \"role\": \"z\",\n        \"directionality\": \"transmit egress\"\n      },\n      \"relationships\": {\n        \"tpes\": {\n          \"data\": [\n            {\n              \"type\": \"tpes\",\n              \"id\": \"fdde6704-5d06-41bb-a3f4-d85db8d8c508::TPE_fdde6704-5d06-41bb-a3f4-d85db8d8c508::EQPT_12_11-1-PTP\"\n            }\n          ]\n        }\n      }\n    },\n    {\n      \"id\": \"-3117193564021298218::eb7542a1-a0af-4bfb-a828-63e1162aa1a8\",\n      \"type\": \"freExpectations\",\n      \"attributes\": {\n        \"modelType\": \"controlPlane\",\n        \"userLabel\": \"userLabel1\",\n        \"layerRate\": \"OTSi\",\n        \"networkRole\": \"IFRE\",\n        \"directionality\": \"bidirectional\",\n        \"photonicSpectrumPackage\": {\n           \"frequency\": \"196.075000:196.125000\",\n           \"minFreq\": \"195.975000:196.025000\",\n           \"maxFreq\": \"195.775000:195.825000\"\n          },\n        \"validateParameters\": {\n          \"include\": \"layerRate\"\n        }\n       },\n      \"relationships\": {\n         \"endPoints\": {\n             \"data\": [\n                 {\n                   \"type\": \"endPoints\",\n                   \"id\": \"1\"\n                 },\n                 {\n                   \"type\": \"endPoints\",\n                   \"id\": \"2\"\n                 }\n             ]\n         },\n        \"networkConstruct\": {\n           \"data\": {\n              \"type\": \"networkConstructs\",\n              \"id\": \"ncId1\"\n           }\n        },\n        \"serviceIntent\": {\n          \"data\": {\n            \"type\": \"serviceIntents\",\n            \"id\": \"eb7542a1-a0af-4bfb-a828-63e1162aa1a8\"\n          }\n        }\n      }\n    }\n  ]\n}</code></pre>", "parameters": [{"description": "FRE identifier.", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FreRO"}, "description": "FRE to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Creates or updates FRE validation expectation for a deployed/discovered FRE", "consumes": ["application/json"], "operationId": "postFreValidationExpectation"}}, "/nsi/api/fres/{freId}/freExpectations/{freExpectationId}": {"delete": {"responses": {"403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "204": {"description": "Deleted FRE Expectation successfully."}, "500": {"description": "Failed to delete FRE Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "FRE expectation identifier", "required": true, "type": "string", "name": "freExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Delete a FRE Expectaion given the fre id and expectation id", "operationId": "deleteFreExpectationById"}, "get": {"responses": {"200": {"description": "Get FRE Expectations with given id successfully.", "schema": {"$ref": "#/definitions/FreExpectationRO"}}, "404": {"description": "Cannot find FRE Expectation with id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to get FRE Expectation with id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V2_0", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "FRE expectation identifier", "required": true, "type": "string", "name": "freExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Retrieve FRE Expectations with freId and expectationId", "operationId": "getFreExpectationWithExpId"}}, "/nsi/api/fres/{freId}/expectations/{expectationId}/realize": {"post": {"responses": {"200": {"description": "Request to provision was sent successfully."}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Provisioning request failed against FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>LATEST VERSION: V3", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "FreExpectation to realize", "required": true, "type": "string", "name": "expectationId", "in": "path"}], "produces": ["application/json"], "tags": ["000 - nsiapifres"], "summary": "Perform a provision operation on a FRE", "consumes": ["application/json"], "operationId": "provisionOperations"}}, "/nsi/api/v2_0/fres/{freId}/freExpectations/{freExpectationId}": {"delete": {"responses": {"204": {"description": "Deleted FRE Expectation successfully."}, "500": {"description": "Failed to delete FRE Expectation.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "FRE expectation identifier", "required": true, "type": "string", "name": "freExpectationId", "in": "path"}], "tags": ["998 - nsiapiv2_0fres"], "deprecated": true, "description": "", "summary": "Delete a FRE Expectaion given the fre id and expectation id", "operationId": "deleteFreExpectationByIdV2"}, "get": {"responses": {"200": {"description": "Get FRE Expectations with given id successfully.", "schema": {"$ref": "#/definitions/FreExpectationRO"}}, "404": {"description": "Cannot find FRE Expectation with id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to get FRE Expectation with id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "FRE expectation identifier", "required": true, "type": "string", "name": "freExpectationId", "in": "path"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0fres"], "summary": "Retrieve FRE Expectations with freId and expectationId", "operationId": "getFreExpectationWithExpIdV2"}}, "/nsi/api/v3/fres/{freId}/identifiers": {"put": {"responses": {"201": {"description": "Successfully created a new FRE identifier for the given FRE", "schema": {"$ref": "#/definitions/FreRO"}}, "200": {"description": "Successfully updated the FRE identifier for a given FRE", "schema": {"$ref": "#/definitions/FreRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid parameters were provided", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "The FRE id", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3fres"], "summary": "Posts or updates a FRE identifier to a given FRE", "consumes": ["application/json"], "operationId": "updateFreIdentifierV3"}, "delete": {"responses": {"200": {"description": "Unsuccessfully deleted the FRE identifier"}, "204": {"description": "Successfully deleted the FRE identifier"}, "404": {"description": "The specified FRE does not exist or their was error processing information", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad parameters were passed, please check the identifier object for errors", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "The FRE id", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/IdentifierRO"}, "description": "The identifier JSON object", "required": true, "name": "identifierRO", "in": "body"}], "produces": ["application/json"], "tags": ["997 - nsiapiv3fres"], "summary": "Deletes the FRE identifier from a given FRE", "consumes": ["application/json"], "operationId": "deleteFreIdentifierV3"}}, "/nsi/api/v2_0/fres/{freId}/freExpectations": {"get": {"responses": {"200": {"description": "Get FRE Expectations with given id successfully.", "schema": {"$ref": "#/definitions/FreExpectationRO"}}, "404": {"description": "Cannot find FRE Expectations for the FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to get FRE Expectation with id.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}], "produces": ["application/json"], "tags": ["998 - nsiapiv2_0fres"], "summary": "Retrieve FRE Expectations with freId", "operationId": "getFreExpectationV2"}}, "/nsi/api/v2_0/fres/{freId}/provisioningOperations": {"post": {"responses": {"201": {"description": "Request to provision FRE successfully."}, "500": {"description": "Provisioning request failed against FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Triggers a provisioning operation.  <p> Supports operation values of: <p>&nbsp;&nbsp; 'update',<p> &nbsp;&nbsp;   'delete'<p> If operation is 'delete' all other properties will be ignored. <p> If operation is 'update' the state property is required.  Valid state values are: <p>&nbsp;&nbsp;   'IS',<p> &nbsp;&nbsp;   'OOS',<p> &nbsp;&nbsp;  'OOS_AUMA<p> Here is an example request:<pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"id\": \"-3117193564021298218::FRE_PO_1\",\n    \"attributes\": {\n      \"id\": \"-3117193564021298218\",\n      \"operation\": \"delete\"\n    }\n  }\n}</code></pre>", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FreProvisioningOperationRO"}, "description": "FreProvisioningOperation to execute", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "deprecated": true, "tags": ["998 - nsiapiv2_0fres"], "summary": "Perform a provision operation on a FRE(Deprecated)", "consumes": ["application/json"], "operationId": "provisionOperationsV2"}}, "/nsi/api/v4/fres/{freId}/frePlanned": {"put": {"responses": {"201": {"description": "Planned FRE created/updated successfully.", "schema": {"$ref": "#/definitions/FrePlannedRO"}}, "500": {"description": "Failed to create a planned FRE.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Bad request. Input validation error.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>The following characters are not supported in any id values, userData keys or identifier keys: { } : ? /", "parameters": [{"description": "FRE identifier", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FrePlannedRO"}, "description": "Planned FRE to create or update", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4fres"], "summary": "Creates and updates a planned FRE", "consumes": ["application/json"], "operationId": "putFrePlannedV4"}, "patch": {"responses": {"200": {"description": "successful operation", "schema": {"$ref": "#/definitions/FrePlannedRO"}}, "202": {"description": "The request is accepted and is being handled on backend server", "schema": {"$ref": "#/definitions/FrePlannedRO"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error (error message provided)", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid input supplied", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "Upon request accepted, code 202 is returned and the output consists of JSON objects representing current fre resource.<p>Example replace request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"replace\",\n            \"attributes\" : {\n               \"userLabel\" : \"newLabel\",\n               \"description\" : \"This is the description on an Fre\"\n,            }\n        }\n    ]\n}\n</code></pre><p>Example delete request:</p><pre style='font-size: smaller'><code class='json'>{\n    \"operations\" : [\n        {\n            \"op\" : \"delete\",\n            \"attribute\" : \"userLabel\"\n        }\n    ]\n}\n</code></pre>", "parameters": [{"description": "The id of the fre to be updated", "required": true, "type": "string", "name": "freId", "in": "path"}, {"schema": {"$ref": "#/definitions/FrePatchRO"}, "description": "A patch request to the given fre.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json-patch+json"], "tags": ["996 - nsiapiv4fres"], "summary": "Update attributes on the planned FRE by specific FRE ID ", "operationId": "patchPlannedFre"}, "get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/FreRO"}}, "404": {"description": "Cannot find the FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "403": {"description": "Forbidden to access specified FRE", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Failed to retrieve FRE with given Id", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Identifier of the FRE Planned to be retrieved", "required": true, "type": "string", "name": "freId", "in": "path"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: fres, tpes, equipment", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["996 - nsiapiv4fres"], "summary": "Retrieves the planned FRE by specific FRE ID", "operationId": "getFrePlannedById"}}, "/nsi/api/v6/fres": {"get": {"responses": {"200": {"description": "Successfully retrieved the list of FREs.", "schema": {"$ref": "#/definitions/FreListRO"}}, "500": {"description": "Failed to retrieve the FREs with given query parameter.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter, or an invalid query parameter is specified.", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>At least one of the following parameters must be specified:<ul><li>tpeId<li>networkConstruct.id<li>freExpectations.serviceIntent.id<li>freExpectations.equipmentIntent.id<li>childFreId<li>endpoint.tpe.concrete<li>identifiers</ul>\nNote: when querying by identifiers, the supported syntax is as follows:\n     ?identifierKeys=key1,key2,...&identifierValues=value1,value2,...\nFor instance:\n     ?identifierKey=ossLabel&identifierValue=ossLabel", "parameters": [{"description": "TPE identifier for endpoints", "required": false, "type": "string", "name": "tpeId", "in": "query"}, {"description": "Network Construct identifier", "required": false, "type": "string", "name": "networkConstruct.id", "in": "query"}, {"description": "The service intent Id", "required": false, "type": "string", "name": "freExpectations.serviceIntent.id", "in": "query"}, {"description": "The equipment intent Id", "required": false, "type": "string", "name": "freExpectations.equipmentIntent.id", "in": "query"}, {"description": "The child FRE identifier to return its parents", "required": false, "type": "string", "name": "childFreId", "in": "query"}, {"description": "Concrete TPE identifier for endpoints", "required": false, "type": "string", "name": "endpoint.tpe.concrete", "in": "query"}, {"description": "List of comma separated keys for an identifer object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierKey"}, {"description": "List of comma separated values for an identifier object", "items": {"type": "string"}, "required": false, "collectionFormat": "multi", "in": "query", "type": "array", "name": "identifierValue"}, {"description": "(Optional) FRE types in comma separated list. The allowed values are: explicitRoute, explicitRouteGroup, snc, sncGroup", "required": false, "type": "string", "name": "freType", "in": "query"}, {"description": "(Optional) A single given type to be excluded used in conjunction with the `childFreId` parameter. The allowed values are: actual, expectation", "required": false, "type": "string", "name": "exclude", "in": "query"}, {"description": "(Optional) The identifier indicating type of parent to be returned. If specified, parent matching the criteria will be returned", "required": false, "type": "string", "name": "signalContentType", "in": "query"}, {"description": "(Optional) Find services configured over a roadmline based on the roadmline FRE identifier.", "required": false, "type": "string", "name": "roadmLineId", "in": "query"}, {"description": "(Optional) List of comma separated fields to be included in the response. Fields require full path (i.e. data.attributes.field)", "required": false, "type": "string", "name": "fields", "in": "query"}, {"description": "(Optional) Offset for the second page", "required": false, "type": "string", "name": "offset", "in": "query"}, {"description": "(Optional) The size of a returned page", "default": "30", "required": false, "in": "query", "type": "string", "name": "limit"}, {"description": "(Optional) List of comma separated resources to be side-loaded. The allowed values are: tpes, expectations, frePlanned, freDiscovered", "required": false, "type": "string", "name": "include", "in": "query"}], "produces": ["application/json"], "tags": ["994 - nsiapiv6fres"], "summary": "Retrieve a list of FREs provided with the satisfying parameters", "operationId": "getFresV6"}}}, "schemes": ["http", "https"], "tags": [{"name": "000 - nsiapifres", "description": "Retrieve, plan, and manage the fre resources<p/>&nbsp;&nbsp;&nbsp;&nbsp;This non-versioned API is meant for use by an end-user as a pass-through to the latest version. WARNING - backwards compatibility is not guaranteed for non-versioned APIs."}, {"name": "994 - nsiapiv6fres", "description": "Retrieve, plan, and manage the fre resources (version 6)"}, {"name": "995 - nsiapiv5fres", "description": "Retrieve, plan, and manage the fre resources (version 5)"}, {"name": "996 - nsiapiv4fres", "description": "Retrieve, plan, and manage the fre resources (version 4)"}, {"name": "997 - nsiapiv3fres", "description": "Retrieve, plan, and manage the fre resources (version 3)"}, {"name": "998 - nsiapiv2_0fres", "description": "Retrieve, plan, and manage the fre resources (version 2)"}], "definitions": {"Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "MbbHistoryEntryRO": {"type": "object", "properties": {"reason": {"type": "string", "description": "Reason of the make-before-break"}, "endTime": {"type": "string", "description": "End time of the make-before-break happened"}, "result": {"type": "string", "description": "Result of the make-before-break"}, "startTime": {"type": "string", "description": "Start time of the make-before-break happened"}}}, "ConnectionRuleRO": {"type": "object", "properties": {"immediateClientPotential": {"type": "string", "description": "If describing connectionRulesInAdaptationLayer: names of TPESpec of immediate client TPE. If describing connectionRulesInOwnLayer: null (not relevant). If describing mustConnectInternally: null (not relevant)."}, "immediateDualPortPeerPotential": {"type": "string", "description": "If describing connectionRulesInAdaptationLayer: names of TPESpec of dual port peer TPE. If describing connectionRulesInOwnLayer: null (not relevant). If describing mustConnectInternally: null (not relevant)."}, "targetLayer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "rule": {"enum": ["mustConnectInternally", "clientExternalFGRule", "connectsExternally", "toServerUsingClientExternalFGRule", "externalFGRule", "externalFGRuleViaImmediateClientPotential", "toDualPortPeerUsingClientExternalFGRule", "transitionalAtCreationTime"], "type": "string", "description": "toServerUsingClientExternalFGRule matchers server's clientExternalFGRule"}}}, "GroupPackageRO": {"type": "object", "properties": {"aid": {"type": "string", "description": "AID of the participating sncs something like aidSnc1:aidSnc2"}, "groupId": {"type": "string", "description": "UUID of the group it will be set once Group is created by NSI"}, "groupToBeCreated": {"default": false, "type": "boolean", "description": " flag to indicate that Group needs to be created"}}}, "BgpMsgsRO": {"type": "object", "properties": {"peerInTotalMessages": {"type": "string", "description": "Total Number of peer messages"}, "peerInUpdateElapsedTime": {"type": "string", "description": "Peer updated elapsed time in seconds"}, "peerOutUpdates": {"type": "string", "description": "Number of peer out updates"}, "peerInUpdates": {"type": "string", "description": "Number of peer in updates"}, "lastError": {"description": "This stores BGP Message Last Error related information.", "$ref": "#/definitions/MsgsLastErrorRO"}, "peerOutTotalMessages": {"type": "string", "description": "Total number of peer out messages"}}}, "TpeResiliencyPackageRO": {"type": "object", "properties": {"role": {"enum": ["Protected", "Working", "Protecting"], "type": "string", "description": "the role of the tpe"}, "resiliencyType": {"enum": ["TPT", "OPS"], "type": "string", "description": "resiliencyType"}}}, "BookingDataRO": {"type": "object", "properties": {"bookingFactor": {"type": "string", "description": "The factor that dictates how much overbooking is allowed."}, "assignedBandwidth": {"type": "string", "description": "The bandwidth assigned to the link."}, "assignedBandwidthUnit": {"type": "string", "description": "The unit of the bandwidth assigned to the link."}, "bandwidthLockout": {"default": false, "type": "boolean", "description": "Flag that enables/disables a link from having additional tunnel BW being consumed."}}}, "TpeAttributesRO": {"type": "object", "properties": {"displayAlias": {"type": "string", "description": "The displayAlias of the TPE"}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "lifeCycleOwner": {"type": "string", "description": "Specifies who owns the lifecycle of a TPE"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array"}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "displayData": {"$ref": "#/definitions/TpeDisplayDataRO"}, "customerCode": {"type": "string", "description": "Customer code"}, "parentEBBWConstraintList": {"items": {"$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "type": "array", "description": "A list of Virtual TPEs as BW constraint."}, "cardMode": {"enum": ["maxReach", "maxCapacity", "undetermined"], "type": "string", "description": "Provides a means to differentiate different configurations of the card setup. For example, WLAi 400G OTR has several configuration options for 400G line service rate."}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "category": {"enum": ["CHANNEL_TX", "CHANNEL_RX", "OTN_ACCESS"], "type": "string"}, "resiliencyHandlingPackage": {"items": {"$ref": "#/definitions/ResiliencyHandlingPackageRO"}, "type": "array", "description": " triggers stitcher building resiliency view and NSI updating layerRate in resiliency view"}, "structureType": {"enum": ["PTP", "FTP", "CTP_SERVER_TO_CLIENT", "CTP_CLIENT_TO_SERVER", "CTP_CLIENT_TO_CLIENT", "CTP_SERVER_TO_DOMAIN"], "type": "string"}, "fgiSpecificationRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance.  E.g 'May_Comment:1.0.0:1234'"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the TPE"}, "parentEBFREBWConstraintList": {"items": {"$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "type": "array", "description": "A list of Virtual TPEs as FRE constraint."}, "userLabel": {"type": "string", "description": "The label given to the TPE by an user"}, "state": {"enum": ["IS", "OOS", "OOS_AUMA"], "type": "string", "description": "State of the TPE."}, "availableCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "dynamicFgiSpecificationRefList": {"items": {"type": "string"}, "type": "array", "description": "A list of dynamic Forwarding Group assignments.  Each assignment costs of the fGNane, FGVersion, and FGInstance.  E.g 'May_Comment:1.0.0:1234'"}, "roadmLine": {"type": "string"}, "bookingData": {"description": "Bandwidth booking data", "$ref": "#/definitions/BookingDataRO"}, "layerTerminations": {"items": {"$ref": "#/definitions/LayerTerminationRO"}, "type": "array"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "tpeGroupSpecs": {"items": {"type": "string"}, "type": "array", "description": "Names of TPEGSpec-s this TPE belongs to. FUTURE: enumerated value, part of TPEGSpec catalog."}, "resiliencyPackage": {"description": "The resiliency package contains attributes only appear in resiliency view.", "$ref": "#/definitions/TpeResiliencyPackageRO"}, "provisioningAttributes": {"description": "Indicates attributes that are used solely in the provisioning workflow. These attributes would not be reported on discovery, but aid in the provisioning workflow.", "$ref": "#/definitions/ProvisioningAttributesRO"}, "capabilitySpecification": {"description": "Defines a capability specification; normally for a TPE but can be utilized elsewhere in the future.", "$ref": "#/definitions/CapabilitySpecRO"}, "cardType": {"type": "string"}, "gneSubnetName": {"type": "string", "description": "The GNE Subnet Name of the TPE"}, "capacityReservations": {"items": {"$ref": "#/definitions/CapacityReservationRO"}, "type": "array"}, "plannedEndpointRole": {"enum": ["drop", "source"], "type": "string", "description": "The role that this end point plays for multicast FRE."}, "parentEBFREBWConstraint": {"description": "Virtual TPe reference for constraints update", "$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "active": {"default": false, "type": "boolean", "description": "An indicator to flag when a TPE is active, or simply a potential."}, "nativeName": {"type": "string", "description": "The name of the TPE that is native to the network element"}, "stackDirection": {"enum": ["client_to_server", "server_to_client", "bidirectional", "horizontal_unidirectional", "unknown"], "type": "string"}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "stitchingTriggers": {"$ref": "#/definitions/StitchingTriggersRO"}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "tpeSpec": {"type": "string", "description": "Name of TPESpec describing this TPE instance. FUTURE: enumerated value, part of TPESpec catalog."}, "structureSubType": {"enum": ["osrpLink", "osrpLine", "regen"], "type": "string"}, "parentEBBWConstraint": {"description": "Virtual TPe reference for constraints update", "$ref": "#/definitions/VirtualTpeBWConstraintsRO"}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePoliciesRO"}, "owningServerTpeListType": {"enum": ["uniDecomposed", "inverseMux", "none"], "type": "string", "description": "Owning server tpe list type."}}}, "FreCfmPackageRO": {"type": "object", "properties": {"ccmIntervalUnit": {"type": "string", "description": "The unit of interval between transmitting each message (e.g.: seconds)"}, "ccmPriority": {"type": "string", "description": "Priority of the CC messages (0-7)"}, "ccmInterval": {"type": "string", "description": "The interval between transmitting each message (e.g.: 1)"}, "ccmTransmitState": {"enum": ["ON", "OFF", "PARTIAL"], "type": "string", "description": "The transmission state of CCM (on/off)"}, "cfmOperState": {"enum": ["ENABLED", "DISABLED", "PARTIAL"], "type": "string", "description": "The operational state (enabled/disabled/partial)"}, "mdName": {"type": "string", "description": "The name of the maintenance domain"}, "maFormat": {"type": "string", "description": "The format of the maintenance association name"}, "cfmAdminState": {"enum": ["ENABLED", "DISABLED", "PARTIAL"], "type": "string", "description": "The administrative state (enabled/disabled/partial)"}, "cfmServiceName": {"type": "string", "description": "The name of the CFM service"}, "megId": {"type": "string", "description": "The ID of the maintenance entity group"}, "mdLevel": {"type": "string", "description": "The level of the maintenance domain (0-7)"}, "mdFormat": {"type": "string", "description": "The format of the maintenance domain name"}, "maName": {"type": "string", "description": "The name of the maintenance association"}}}, "BgpPackageRO": {"type": "object", "properties": {"peerFsmEstablishedTransitions": {"type": "string", "description": "Peer Fsm established transitions."}, "peerBgpIdentifier": {"type": "string", "description": "BGP identifier of the peer. Learned only in OPEN CONFIRM and ESTABLISHED states."}, "peerNegotiatedBGPVersion": {"type": "string", "description": "Learned only in OPENCONFIRM and ESTABLISHED states."}, "rr": {"description": "This package stores BGP route reflector related information.", "$ref": "#/definitions/BgpRrRO"}, "bfd": {"description": "Holds BFD attributes for BGP TPE endpoint", "$ref": "#/definitions/BgpBfdRO"}, "peerAs": {"type": "integer", "description": "Autonomous System number configured for the peer.", "format": "int64"}, "afiSafi": {"items": {"$ref": "#/definitions/BgpAfiSafiRO"}, "type": "array"}, "peerFsmEstablishedTime": {"type": "string", "description": "Peer Fsm established time in seconds."}, "msgs": {"description": "This package stores BGP message related information.", "$ref": "#/definitions/BgpMsgsRO"}, "timers": {"description": "This package stores BGP time related information.", "$ref": "#/definitions/BgpTimersRO"}, "peerState": {"enum": ["idle", "connect", "active", "opensent", "openconfirm", "established"], "type": "string", "description": "BGP states"}, "peerType": {"enum": ["internal", "external"], "type": "string", "description": "internal/external depending on peerAs number is same as local or different."}, "transport": {"description": "This package stores BGP transport related information.", "$ref": "#/definitions/BgpTransportRO"}}}, "LifeCycleRuleRO": {"type": "object", "properties": {"autoDeletedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto deleted by the network and/or device (true) or must it explicitly be created (false)."}, "autoCreatedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto created by the network and/or device (true) or must it explicitly be created (false)."}}}, "ControlPlanePackageRO": {"type": "object", "properties": {"sncRole": {"enum": ["WORKING", "PROTECT"], "type": "string", "description": "Role of SNC i.e WORKING or PROTECT"}, "configuredLatencyType": {"enum": ["disc", "manual"], "type": "string", "description": "Describe whether the latency is discovered or  manual."}, "grouped": {"default": false, "type": "boolean"}, "exclusiveRouting": {"default": false, "type": "boolean"}, "regroomAllowed": {"default": false, "type": "boolean", "description": "Indicates if re-groom operation can be performed on this SNC."}, "sncType": {"enum": ["DYNAMIC", "PERMANENT"], "type": "string"}, "rhpEnabled": {"default": false, "type": "boolean", "description": "Retain Home Path capability for the SNC."}, "ovpnIds": {"items": {"type": "string"}, "type": "array", "description": "The primary optical virtual private network ID list"}, "secOvpnIds": {"items": {"type": "string"}, "type": "array", "description": "The secondary optical virtual private network ID list"}, "meshRestorable": {"default": false, "type": "boolean"}, "sncpPackage": {"description": "Defines SNCP peer information", "$ref": "#/definitions/SncpPackageRO"}, "integrityCheckEnabled": {"enum": ["YES", "NO"], "type": "string", "description": "This parameter indicates the SnIC Admin State for a SNC. It can be yes or no to enable or disable SnIC on a SNC."}, "backOffPeriod": {"type": "integer", "description": "Back-off period for retrying SNC setup", "format": "int32"}}}, "PowerPackageRO": {"type": "object", "properties": {"txMaxPower": {"type": "string", "description": "Maximum transmitter power level (dBm)."}, "rxActualPower": {"type": "string", "description": "Current receiver power (dBm)."}, "rxMinPower": {"type": "string", "description": "Minimum receiver power level (dBm)."}, "txActualPower": {"type": "string", "description": "Current transmitter power (dBm)."}, "txMinPower": {"type": "string", "description": "Minimum transmitter power level (dBm)."}, "rxMaxPower": {"type": "string", "description": "Maximum receiver power level (dBm)."}}}, "AssociationObjectAttributesRO": {"type": "object", "properties": {"associations": {"items": {"$ref": "#/definitions/AssociationRO"}, "type": "array", "description": "List of associations"}}}, "ProvisionPoliciesRO": {"type": "object", "properties": {"endPointPolicy": {"enum": ["EndPointAddDelete", "EndPointNone"], "type": "string", "description": "For the end point(s) of an FRE will be added/deleted/no-action along with FRE's change"}}}, "FreExpectationRelationshipsRO": {"type": "object", "properties": {"partitionFreAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "serviceIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "partitionFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "decomposedFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "encapsulatedResiliency": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "freSwitchList": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "resiliencyController": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "groups": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "endPoints": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "freSwitch": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "networkConstructAssociation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "FreProvisioningOperationAttributesRO": {"type": "object", "properties": {"operation": {"enum": ["UPDATE", "REMOVE", "ADD"], "type": "string", "description": "The type of operation to apply. This attribute must present if inProvRealizations is not applicable"}, "state": {"enum": ["IS", "OOS", "OOS_AUMA"], "type": "string"}, "inProvRealizations": {"items": {"$ref": "#/definitions/FreProvisioningRealizationRO"}, "type": "array", "description": "The object to be provisioned in the device"}}}, "FreBgpPackageRO": {"type": "object", "properties": {"sessionState": {"enum": ["IDLE", "CONNECT", "ACTIVE", "OPENSENT", "OPENCONFIRM", "ESTABLISHED"], "type": "string", "description": "BGP states"}, "protocolVersion": {"type": "string", "description": "Lower of negotiatedBgpVersion reported on both BGP CTP's."}, "sessionType": {"enum": ["IBGP", "EBGP"], "type": "string", "description": "IBGP/EBGP depending on peerAs number is same as local or different."}}}, "FreDisplayDataRO": {"type": "object", "properties": {"sncgUserlabel": {"type": "string", "description": "For ControlPlane SNCs only, the userlabel of the parent SNC group"}, "displayPhotonicSpectrumData": {"items": {"$ref": "#/definitions/FreDisplayPhotonicSpectrumDataRO"}, "type": "array"}, "displayTopologySource": {"type": "string", "description": "The source of the FRE"}, "intentDeploymentStateString": {"enum": ["NOT_APPLICABLE", "IN_PROGRESS", "FAILED", "IN_THE_NETWORK", "NETWORK_MISMATCH_DETECTED", "PROPERTY_MISMATCH"], "type": "string", "description": "Represents the deployment state of the service intent through its life cycle"}, "operationState": {"type": "string", "description": "Represents the total traffic carrying capability of the FRE. Relates to flow of traffic across the FRE between endpoints."}, "adminState": {"type": "string", "description": "Indicates the administrative state of the FRE, including whether traffic has been enabled and whether the FRE should be used by clients. It is derived from the state(s) of terminating TPE(s). Disabled means that FRE is prevented from carrying traffic. Enabled means that FRE is allowed to carry traffic."}, "frequency": {"type": "string", "description": "The frequency value for one of the underlying Endpoints"}, "displayDeploymentState": {"enum": ["SCHEDULED", "NETWORK_MISMATCH_DETECTED", "PROPERTY_MISMATCH", "DEPLOYED", "DISCOVERED", "DEPLOYING", "MONITORING", "DEPLOYMENT_FAILED", "DELETING", "DELETE_FAILED"], "type": "string", "description": "Represents the stage that the FRE is at in the construction/deployment/discovery life cycle"}, "intentLifeCyclePhaseString": {"enum": ["SCHEDULED", "DEPLOYING", "DEPLOYED", "DELETING", "DISCOVERED"], "type": "string", "description": "Represents the different phases of the service intent through its life cycle"}, "wavelength": {"type": "string", "description": "The corresponding wavelength value for the frequency attribute"}, "channel": {"type": "string", "description": "The corresponding channel number for the frequency attribute"}}}, "NamingRulesRO": {"type": "object", "properties": {"potentialGrowth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "total": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "used": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}}}, "ConnectionPointRO": {"type": "object", "properties": {"mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "dynamicOwningPoolAdapterFgiRules": {"items": {"type": "string"}, "type": "array", "description": "dynamicOwningPoolAdapterFgiRules"}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "namingRules": {"items": {"$ref": "#/definitions/NamingRulesRO"}, "type": "array"}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "owningPoolAdapterType": {"type": "string", "description": "Type of the owner Adapter."}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}}}, "SRLGDataRO": {"type": "object", "properties": {"type": {"enum": ["SRLG"], "type": "string", "description": "The SRLG Attribute type"}, "id": {"type": "string", "description": "The identifier value of the SRLG. It's same as the native value of structured srlg attributes"}}}, "SncpPackageRO": {"type": "object", "properties": {"peerOsrpNodeName": {"type": "string"}, "peerIdentifier": {"type": "string"}, "peerRole": {"enum": ["WORKING", "PROTECT"], "type": "string"}, "srcEpShared": {"default": false, "type": "boolean"}, "destEpShared": {"default": false, "type": "boolean"}}}, "ResiliencyTopologyPackageRO": {"type": "object", "properties": {"switchTpeId": {"type": "string", "description": "Switch port client TPE"}, "resilientFreId": {"type": "string", "description": "Resilient nodal fre id"}}}, "AdapterRO": {"type": "object", "properties": {"nameToCapacityMappingRules": {"items": {"$ref": "#/definitions/NameToCapacityMappingRulesRO"}, "type": "array"}, "poolAdapterType": {"type": "string", "description": "The type for the adapter."}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "mappingInteractionRules": {"items": {"$ref": "#/definitions/MappingInteractionRuleRO"}, "type": "array", "description": "The specification of the interaction between the support for different client layer protocols signals."}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "connectionRulesInAdaptationLayer": {"items": {"$ref": "#/definitions/ConnectionRuleRO"}, "type": "array", "description": "Directions of how to instantiate client TPE(s) for this adapter, including indirect (client over client) client TPE instantiation."}, "namingRules": {"items": {"$ref": "#/definitions/NamingRulesRO"}, "type": "array"}, "adaptsToLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "continuousAdapterRulesPackage": {"description": "This package stores various rules to be considered when instantiating a new TPE utilizing continuous b/w.", "$ref": "#/definitions/ContinuousAdapterRulesPackageRO"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "potentialAdapterCapacities": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array", "description": "Total potential capacity of this Adapter."}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "cardinality": {"type": "string", "description": "Number of possible potential TPEs. Can be a numeric (eg '1', '96', '1000', ...) or can be categorical (eg 'indirect')."}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "name": {"type": "string", "description": "Name of the Adapter. Unique in the scope of this TPE."}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "eFreTerminationState": {"enum": ["hapFre_terminated", "hapFre_not_terminated"], "type": "string", "description": "Values to handle TPEs that have multiple poolAdapters, especially multiple poolAdapters adapting to the same layer rate"}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}}}, "MplsPackageRO": {"type": "object", "properties": {"prevHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the previous hop of this MPLS tunnel"}, "subType": {"enum": ["TP", "TE"], "type": "string", "description": "TP refers to Transport Profile; TE refers to Traffic Engineering"}, "aisSessionAdminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of the AIS session for this MPLS tunnel"}, "mbbHistory": {"items": {"$ref": "#/definitions/MbbHistoryEntryRO"}, "type": "array"}, "shareSrlg": {"items": {"type": "string"}, "type": "array", "description": "A list of share SRLG values used by dynamic tunnel during provisioning."}, "TxTag": {"type": "string", "description": "The label used for traffic egressing from this endpoint"}, "facilityBypass": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is facility-bypass (FB) tunnel"}, "nextHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the next hop of this MPLS tunnel"}, "stickyLsp": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating a dynamic tunnel stays on the same path after change in required resources. Applicable to dynamic coRouted tunnels only."}, "tunnelType": {"enum": ["rsvp_ingress_corout", "rsvp_egress_corout", "rsvp_transit_corout", "static_ingress_corout", "static_egress_corout", "static_transit_corout", "static_ingress_unidir", "static_egress_unidir", "static_transit_unidir", "rsvp_ingress_unidir", "rsvp_transit_unidir", "static_ingress_assoc", "rsvp_ingress", "rsvp_transit", "rsvp_egress"], "type": "string", "description": "Tunnel type (static/dynamic, ingress/egress, corouted/unidrectional)"}, "bfd": {"description": "Holds BFD attributes for one LER TPE endpoint", "$ref": "#/definitions/BfdRO"}, "optimization": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating if tunnel optimization should be attempted by the control-plane"}, "destTunnelId": {"type": "string", "description": "The ID of the far end of this MPLS tunnel"}, "fb": {"description": "MPLS FB tunnel attributes", "$ref": "#/definitions/MplsFbRO"}, "destIp": {"type": "string", "description": "The IP-data interface address of the far end of this MPLS tunnel"}, "fwdIn": {"type": "string", "description": "The inward ID in the forward direction (transit)"}, "localIfNamePrevHop": {"type": "string", "description": "The local interface name of the previous hop of this MPLS tunnel (6200 only)"}, "localIfNameNextHop": {"type": "string", "description": "The local interface name of the next hop of this MPLS tunnel (6200 only)"}, "frrSignaling": {"enum": ["on", "off"], "type": "string", "description": "Deprecated by frr package and will be removed later. Flag for fast re-route capability"}, "colorGroup": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "direction": {"enum": ["bidirectional", "ingress", "egress", "unidirectional"], "type": "string", "description": "Tunnel direction. Use value bidirectional or unidirectional only and TPE attribute stackDirection since ingress and egress are ambiguous"}, "lspId": {"type": "string", "description": "The numeric ID of this MPLS tunnel"}, "srcTunnelId": {"type": "string", "description": "The ID of the near end of this MPLS tunnel"}, "aisProfileName": {"type": "string", "description": "The name of the Alarm Indication Signal profile for this MPLS tunnel"}, "optimizationInterval": {"type": "integer", "description": "The interval between tunnel optimization attempts", "format": "int32"}, "excludeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "signaled": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is dynamic; otherwise it is static"}, "diversityResource": {"enum": ["unknown", "none", "link", "srlg", "node", "srlg_and_node", "srlg_and_link", "link_and_node", "srlg_or_node", "srlg_and_link_and_node"], "type": "string", "description": "The object upon which to base diversity for the backup tunnel"}, "aisRefreshTimerUnit": {"type": "string", "description": "The units for aisRefreshTimer field"}, "fixedTtl": {"type": "string", "description": "The time-to-live for tunnel hops (1-255)"}, "lspName": {"type": "string", "description": "The name of this MPLS tunnel"}, "autoBackup": {"enum": ["on", "off"], "type": "string", "description": "A flag to signal if auto-backup tunnel creation is on or off"}, "aisRefreshTimer": {"type": "integer", "description": "The interval between each AIS refresh for this MPLS tunnel", "format": "int32"}, "nextHopIfNum": {"type": "string", "description": "The interface number of the next hop of this MPLS tunnel"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string", "description": "The role at this point in the MPLS tunnel"}, "includeAll": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "prevHopIfNum": {"type": "string", "description": "The interface number of the previous hop of this MPLS tunnel"}, "explicitTunnel": {"description": "Holds data for the explicit tunnel path", "$ref": "#/definitions/TunnelPathRO"}, "includeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroupRO"}, "diversityLevel": {"enum": ["strict", "maximal"], "type": "string", "description": "The diversity level of backup tunnel creation (maximal meaning best-effort)"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "A list of shared-risk link-group values assigned to this interface"}, "setupPriority": {"type": "string", "description": "The priority of the dynamic tunnel setup (0-7)"}, "revIn": {"type": "string", "description": "The inward ID in the reverse direction (transit)"}, "explicitRouteObject": {"items": {"type": "string"}, "type": "array", "description": "An ordered list of hop-by-hop IP-data interface addresses traversed by this dynamic MPLS tunnel"}, "revOut": {"type": "string", "description": "The outward ID in the reverse direction (transit)"}, "frr": {"description": "MPLS FRR details attributes", "$ref": "#/definitions/MplsFrrRO"}, "fwdOut": {"type": "string", "description": "The outward ID in the forward direction (transit)"}, "softPreemption": {"enum": ["enable", "disable"], "type": "string", "description": "If true, soft preemption is enabled. Applicable to dynamic TE unidirectional tunnels only."}, "optimizationIntervalUnit": {"type": "string", "description": "The unit for optimizationInterval"}, "RxTag": {"type": "string", "description": "The label used for traffic ingressing to this endpoint"}, "bw": {"description": "Holds bandwidth attributes for a dynamic tunnel endpoint or an IP interface", "$ref": "#/definitions/BwRO"}, "holdPriority": {"type": "string", "description": "The priority of the dynamic tunnel steady-state (0-7)"}, "srcIp": {"type": "string", "description": "The IP-data interface address of the near end of this MPLS tunnel"}, "coRouted": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is co-routed; otherwise it is associated"}, "frrProfile": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "Deprecated by frr package and will be removed later. The fast re-route profile for this MPLS tunnel"}, "ctrlPlaneId": {"type": "string", "description": "A generated value to uniquely identify a particular tunnel instance"}}}, "AggregationBucketRO": {"type": "object", "properties": {"absoluteTotal": {"type": "string", "description": "The unfiltered total number of entities in the data"}, "subAggregations": {"description": "The aggregated data based on a requested aggregation name and criteria", "$ref": "#/definitions/AggregationRO"}, "bucketValue": {"type": "string", "description": "The result of the aggregation"}, "bucketKey": {"type": "string", "description": "The key of the aggregation criteria"}}}, "TpeRelationshipsRO": {"type": "object", "properties": {"ownedPeerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "configurationAndSwitchControl": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "partnerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "tpePlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "controller": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "owningPeerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipment": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "owningClientTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "networkConstructAssociation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "tpeDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "tpeExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "clientTpes": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "owningServerTpeList": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "owningServerTpe": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "AfiSafiPrefixListRO": {"type": "object", "properties": {"direction": {"enum": ["in", "out"], "type": "string", "description": "Direction to filter BGP advertisements."}, "name": {"type": "string", "description": "Name to filter BGP advertisements."}}}, "FreExpectationRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Side loaded relationship resources"}, "data": {"$ref": "#/definitions/FreExpectationDataRO"}}}, "FreRelationshipsRO": {"type": "object", "properties": {"partitionFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "decomposedFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "partitionFreAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "partitioningFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "endPoints": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "configurationAndSwitchControl": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "decomposedFreAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "fre": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "concreteAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "encapsulatedResiliency": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "composingFre": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "freExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "freSwitch": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "freDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "resiliencyController": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "networkConstructAssociation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "groups": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "relatedToFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "frePlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "freSwitchList": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "abstracts": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "OneToManyRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array", "description": "The one-to-many relationship"}}}, "BgpTransportRO": {"type": "object", "properties": {"peerPort": {"type": "string", "description": "Peer port reported in OPENCONFIRM and ESTABLISHED states."}, "localIp": {"type": "string", "description": "If update-source is configured then IP address of the interface. Rely on learned localIp if it is reported. Reported in OPENCONFIRM and ESTABLISHED states."}, "localPort": {"type": "string", "description": "Local port reported in OPENCONFIRM and ESTABLISHED states."}, "peerIp": {"type": "string", "description": "Peer Ip configured as part of BGP peer configuration."}}}, "AttributePolicyOverrideRO": {"type": "object", "properties": {"attributeSource": {"type": "string", "description": "Attribute source, in case it has the value from some other references, (e.g. attributes.srlg is relationships.srlgs.id"}, "attributeName": {"type": "string", "description": "Attribute path(e.g. attribute.customerCode or relationship.endpoints)"}, "policies": {"items": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string"}, "type": "array"}}}, "NoteRO": {"type": "object", "properties": {"noteMsg": {"type": "string", "description": "The message left on the note left by the user"}, "lastUpdatedBy": {"type": "string", "description": "The name of the user that last edited the note"}, "lastUpdatedTime": {"type": "string", "description": "The time the note was last updated"}}}, "ExplicitRouteGroupRO": {"type": "object", "properties": {"groupType": {"enum": ["INCLUSION", "EXCLUSION"], "type": "string", "description": "The resource type"}}}, "AfiSafiNextHopSelfRO": {"type": "object", "properties": {"configured": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}, "excludeReflectedRoutes": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}}}, "SRLGOneToManyRelationshipRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/SRLGDataRO"}, "type": "array", "description": "The SRLG one-to-many relationship"}}}, "EquipmentRelationshipsRO": {"type": "object", "properties": {"equipmentDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "equipmentHolder": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentPlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "AdditionalAttributesRO": {"type": "object"}, "TpeDisplayDataRO": {"type": "object", "properties": {"displayNativeName": {"type": "string", "description": "The name of the TPE that we want UI to display if it is different than nativeName"}}}, "ErrorSourceRO": {"type": "object", "properties": {"parameter": {"type": "string", "description": "URI query parameter that caused the error"}, "pointer": {"type": "string", "description": "JSON Pointer to the associated entity in the request document"}}}, "AssociationIdentifierRO": {"type": "object"}, "IdentifierRO": {"type": "object"}, "ProvisioningAttributesRO": {"type": "object"}, "AdaptationPoolRO": {"type": "object", "properties": {"poolAdapters": {"items": {"$ref": "#/definitions/AdapterRO"}, "type": "array"}, "memberAdaptationPools": {"items": {"type": "string"}, "type": "array", "description": "Reference(s) to 0 or more member AdaptationPool-s. Allows for nesting of AdaptationPools."}, "logicalRule": {"enum": ["xOR", "OR"], "type": "string", "description": "Restrict the number of active poolAdapters could be xOR or OR - default is OR"}, "name": {"type": "string", "description": "Name of the AdaptationPool. Unique in the scope of this TPE."}, "namingRules": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}}}, "AssociationRO": {"type": "object", "properties": {"nodalId": {"type": "string", "description": "The id of the resource being referenced by this association"}, "relationship": {"enum": ["networkConstructs", "tpes", "fres"], "type": "string", "description": "The association relationship resource type"}, "orderIndex": {"type": "integer", "description": "The order index value of this entry (to allow defining an entry order)", "format": "int32"}, "relationshipType": {"enum": ["concrete", "owningServer", "physical"], "type": "string", "description": "The type of association. Each value indicates what type of relationship this association is representing."}, "identifier": {"description": "Association Identifier", "$ref": "#/definitions/AssociationIdentifierRO"}, "id": {"type": "string", "description": "The id of the resource being referenced by this association"}}}, "CapacityRO": {"type": "object", "properties": {"layer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "capacity": {"type": "integer", "description": "Number of potential client instances or usage instances", "format": "int32"}, "capacityCalculationRule": {"type": "string", "description": "Core logic that will be used on capacity calculation"}, "source": {"type": "string", "description": "Source of the capacity"}, "capacitySize": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacitySizeRO"}, "maxLimit": {"type": "integer", "description": "Maximum potential client instances", "format": "int32"}, "capacityClass": {"enum": ["discrete", "continuous"], "type": "string", "description": "Discrete \u2013 b/w space is treated as a list of discrete values; this is default. Continuous \u2013 b/w space is treated as continuous segment, in the range of low/upper."}}}, "BandwidthThresholdRO": {"type": "object", "properties": {"ODUFLEXRSZ": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (in Bps) for Resizable ODU Flex advertised for a link."}, "ODU2E": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU2E) advertised for a link."}, "ODUFLEXNRSZ": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (in Bps) for Non-Resizable ODU Flex advertised for a link."}, "ODU4": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU4) advertised for a link."}, "ODU2": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU2) advertised for a link."}, "ODU3": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU3) advertised for a link."}, "ODU0": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU0) advertised for a link."}, "ODU1": {"type": "string", "description": "The Bandwidth Threshold shows the maximum number of bandwidth units (here unit of ODU1) advertised for a link."}}}, "AttributeSpecRO": {"type": "object", "properties": {"modificationRules": {"items": {"$ref": "#/definitions/AttributeModificationRuleRO"}, "type": "array", "description": "List of operations that are permitted on the attribute."}, "name": {"type": "string", "description": "Name of attribute."}, "defaultValue": {"type": "string", "description": "Default value for attribute."}, "location": {"type": "string", "description": "Location of attribute, using dot notation e.g. attributes.layerTerminations[DSR].additionalAttributes."}, "valueOptions": {"description": "Provides a means to specify the possible values for an attribute.", "$ref": "#/definitions/AttributeValueOptionRO"}, "matchingRules": {"items": {"$ref": "#/definitions/AttributeMatchingRuleRO"}, "type": "array", "description": "List of matching rules that apply to this attribute."}}}, "TerminationRO": {"type": "object", "properties": {"connectionRulesInOwnLayer": {"items": {"$ref": "#/definitions/ConnectionRuleRO"}, "type": "array"}}}, "AttributeValueOptionRO": {"type": "object", "properties": {"selectFrom": {"items": {"type": "string"}, "type": "array", "description": "A comma separated list of the choices available for selection."}, "range": {"type": "string", "description": "A range of values in the format of '<from>,<to>,[step]' whereby from is the initial value, to is the end value, and an optional step value to indicate the increment."}}}, "FrePlannedRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Side loaded relationship resources"}, "data": {"$ref": "#/definitions/FrePlannedDataRO"}}}, "AdjacencyPackageRO": {"type": "object", "properties": {"adjacencyMechanism": {"type": "string", "description": "The attribute defining the adjacency mechanism used."}, "provisionedRemoteTagFormat": {"type": "string", "description": "The format of the remote provisioning adjacency tag."}, "remoteTagFormat": {"type": "string", "description": "The format of the remote adjacency tag."}, "remoteTag": {"type": "string", "description": "The actual remote tag as discovered by the network element."}, "linkAttributes": {"description": "This package stores information of Link.", "$ref": "#/definitions/LinkAttributesRO"}, "provisionedRemoteTag": {"type": "string", "description": "The provisioned remote tag is the expected destination defined by the user that adheres to the remoteTagFormat."}, "topologySourceTag": {"type": "string", "description": "The tag representing the topological state. This could be 'DISCOVERED', for example."}, "localTag": {"type": "string", "description": "The actual tag of the originating network element."}, "localTagFormat": {"type": "string", "description": "The format of the local adjacency tag."}, "adjacencyType": {"type": "string", "description": "This field delimits the adjacency type between two network elements (Ex: LIM, LINE, etc...)."}}}, "RoutingConstraintsRO": {"type": "object", "properties": {"protectionClass": {"enum": ["UNPROTECTED_HIGH", "UNPROTECTED_LOW"], "type": "string", "description": "service class of protection for the SNC."}, "maxCost": {"type": "integer", "description": "Max cost", "format": "int32"}, "maxProtectCost": {"type": "integer", "description": "The maximum allowable weight/cost of the ProtectRoute", "format": "int32"}, "costCriteria": {"enum": ["Delay", "AdminWeight"], "type": "string", "description": "Defines Cost Criteria between admin wt or latency"}, "isGroupingForCoroutingRequired": {"default": false, "type": "boolean", "description": "Specifies if the FRE should be part of a group"}, "routeExclusivity": {"enum": ["Working", "WorkingProtect", "Preferred", "No", "Yes", "Disable"], "type": "string", "description": "Specifies type of route exclusivity"}, "exclusionConstraints": {"$ref": "#/definitions/AssociationObjectAttributesRO"}, "inclusionConstraints": {"$ref": "#/definitions/AssociationObjectAttributesRO"}, "homeCostPreference": {"enum": ["Mandatory", "BestEffort", "Disable"], "type": "string", "description": "Available Cost Preferences for home and protect path of SNC"}, "protectCostPreference": {"enum": ["Mandatory", "BestEffort", "Disable"], "type": "string", "description": "Available Cost Preferences for home and protect path of SNC"}, "isRouteExclusive": {"default": false, "type": "boolean", "description": "Route exclusive true/false"}, "identifier": {"type": "string", "description": "The identifier to the decomposed fre"}}}, "BandwidthTriggersRO": {"type": "object", "properties": {"dependentLinks": {"items": {"type": "string"}, "type": "array", "description": "List of dependent LLDP/LAG for the stitched FRE."}, "assignedBW": {"type": "string", "description": "Used BW by the FRE."}, "maxBW": {"type": "string", "description": "Maximum BW for the FRE."}, "dependentTunnels": {"items": {"type": "string"}, "type": "array", "description": "List of dependent Tunnels for the stitched FRE."}}}, "CapacityPatternRO": {"type": "object", "properties": {"type": {"enum": ["LIST", "RANGE", "POOL", "PERCENTAGE"], "type": "string", "description": "Identifies Pattern type"}, "format": {"type": "string", "description": "An optional regex expression or format string describing how to parse the size string in case of multiple values, e.g. CIR:EIR"}}}, "LqsFiberDataRO": {"type": "object", "properties": {"reconciled": {"default": false, "type": "boolean"}, "method": {"enum": ["totalPower", "osc"], "type": "string"}, "modeledMargin": {"type": "number", "format": "double"}, "measuredLoss": {"type": "number", "format": "double"}, "modeledLoss": {"type": "number", "format": "double"}, "deltaLoss": {"type": "number", "format": "double"}}}, "LqsMarginDataRO": {"type": "object", "properties": {"viableAtEol": {"type": "string"}, "sdMargin": {"type": "number", "format": "double"}, "upgrMargin": {"type": "number", "format": "double"}, "valid": {"default": false, "type": "boolean"}, "minMargin": {"type": "number", "format": "double"}}}, "ResiliencyHandlingEdgeRO": {"type": "object", "properties": {"switchTpeId": {"type": "string", "description": "The ID of the CTPs in the physical view"}, "clientTpeId": {"type": "string", "description": "The ID of the client PTP connected to the switch"}}}, "FreProvisioningRealizationRO": {"type": "object", "properties": {"fres": {"items": {"$ref": "#/definitions/FreRO"}, "type": "array"}, "equipments": {"items": {"$ref": "#/definitions/EquipmentRO"}, "type": "array"}, "tpes": {"items": {"$ref": "#/definitions/TpeRO"}, "type": "array"}, "op": {"enum": ["ADD", "REMOVE", "REPLACE", "NONE"], "type": "string"}}}, "ErrorsRO": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/ErrorRO"}, "type": "array", "description": "A list of errors"}}}, "EquipmentAttributesRO": {"type": "object", "properties": {"siteName": {"type": "string", "description": "The site name associated with the equipment"}, "specificationMismatchStatus": {"type": "string", "description": "Indicates the status of a mismatch between either the planned, installed, or provisioned specifications"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition the associated NE belongs to."}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array", "description": "The list of locations associated with the equipment"}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "displayData": {"description": "The equipment display data", "$ref": "#/definitions/EquipmentDisplayDataRO"}, "secondaryState": {"type": "string", "description": "The secondary state of the equipment"}, "installedSpec": {"description": "An equipment specification. Is either an installed specification (physical representation) or a provisioned specification (logical representation) of an equipment", "$ref": "#/definitions/EquipmentSpecRO"}, "maintenanceMode": {"default": false, "type": "boolean", "description": "Maintenance mode to indicate if the equipment is available or not to MCP. While in maintenance mode, MCP will not provision anything against this equipment (including TPE information)"}, "category": {"enum": ["rack", "shelf", "pluggable", "standalone"], "type": "string", "description": "The equipment category"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the equipment"}, "provisionedSpec": {"description": "An equipment specification. Is either an installed specification (physical representation) or a provisioned specification (logical representation) of an equipment", "$ref": "#/definitions/EquipmentSpecRO"}, "state": {"enum": ["IS", "OOS", "OOS_AU", "OOS_MA", "OOS_AUMA"], "type": "string", "description": "The primary state of the equipment"}, "neContactState": {"enum": ["IN", "OUT"], "type": "string", "description": "The connection status of a shelf"}, "specificationMismatch": {"default": false, "type": "boolean", "description": "Indicates if there's a mismatch between either the planned, installed, or provisioned specifications"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "capabilitySpecification": {"description": "Defines a capability specification; normally for a TPE but can be utilized elsewhere in the future.", "$ref": "#/definitions/CapabilitySpecRO"}, "cardType": {"type": "string", "description": "The card type"}, "siteId": {"type": "string", "description": "The site identifier associated with the equipment"}, "reservationState": {"enum": ["UNKNOWN", "NOT_RESERVED", "RESERVED_FOR_MAINTENANCE", "RESERVED_FOR_FACILITY", "RESERVED_FOR_REVERSION"], "type": "string", "description": "The reservation state of the equipment"}, "nativeName": {"type": "string", "description": "The native name of the equipment"}, "availabilityState": {"enum": ["PLANNED", "AVAILABLE", "UNVALIDATED", "INUSE"], "type": "string", "description": "The availability state of the equipment"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "validationState": {"enum": ["UNSET", "VALID", "INVALID"], "type": "string", "description": "Validation state is used by RNC to denote that this equipment has either not been examined by RNC, or been examined by RNC and found to match (valid) or not match (invalid) customer expectations"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "customerCode": {"type": "string", "description": "Customer code"}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePoliciesRO"}}}, "BgpBfdRO": {"type": "object", "properties": {"transmitInterval": {"type": "string", "description": "The interval between transmitting BFD messages"}, "configured": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "mhop": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "receiveInterval": {"type": "string", "description": "The interval between receiving BFD messages"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of BFD for this endpoint"}, "role": {"enum": ["passive", "active", "any"], "type": "string", "description": "The role of BFD for this endpoint"}, "profileName": {"type": "string", "description": "The profile name associated with this set of BFD attributes"}, "operationalState": {"enum": ["up", "down"], "type": "string", "description": "The operational state of BFD for this endpoint"}}}, "FreExpectationAttributesRO": {"type": "object", "properties": {"validateParameters": {"description": "Attribute containing the list of parameters (if any) to be validated against the expectation", "$ref": "#/definitions/ValidateParametersRO"}, "startDate": {"type": "string", "description": "The scheduled start date and time of the expectation, with RFC 3339 date-time format"}, "adminWt": {"type": "number", "description": "Administrative weight which specifies the level of importance given to the OSRP link", "format": "double"}, "endDate": {"type": "string", "description": "The scheduled end date and time of the expectation, with RFC 3339 date-time format  "}, "resiliencyTopologyPackage": {"description": "This package stores resiliency topology information.", "$ref": "#/definitions/ResiliencyTopologyPackageRO"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition this fre belongs to."}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "controlActivityState": {"enum": ["NONE", "ACTIVATING", "DEACTIVATING", "IDLE", "PENDING", "MODIFYING", "FAILING", "DEGRADED"], "type": "string", "description": "Represents the state of management activity being performed against this FRE."}, "reliability": {"enum": ["MANUAL", "AUTO"], "type": "string", "description": "Stitcher attribute to set reliability on FRE"}, "freType": {"enum": ["explicitRoute", "explicitRouteGroup", "snc", "sncGroup", "regen", "route", "resilientConfig", "osrpLine", "osrpLink", "sncp", "eline", "elan", "etree", "dropAndContinue"], "type": "string", "description": "The sub type of FRE"}, "provisionPolicies": {"description": "Attribute containing Provision Policies against FRE expectation", "$ref": "#/definitions/ProvisionPoliciesRO"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "resiliencyHandlingPackage": {"items": {"$ref": "#/definitions/ResiliencyHandlingPackageRO"}, "type": "array", "description": " triggers stitcher building resiliency view and NSI updating layerRate in resiliency view"}, "maxReservableBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "photonicSpectrumPackageList": {"items": {"$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "type": "array"}, "topologySources": {"items": {"enum": ["discovered", "adjacency", "stitched", "connection_rule", "connection_rule_nodal", "backpropagated", "connection_rule_snc", "connection_rule_sncp", "manual", "retained"], "type": "string"}, "type": "array", "description": "Source of topology"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the FRE"}, "layerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "userLabel": {"type": "string", "description": "The label given to the FRE by an user"}, "adminState": {"enum": ["ENABLED", "DISABLED", "NOT_APPLICABLE", "IN_SERVICE", "OUT_OF_SERVICE"], "type": "string", "description": "Indicates the administrative state of the FRE, including whether traffic has been enabled and whether the FRE should be used by clients. It is derived from the state(s) of terminating TPE(s). Disabled means that FRE is prevented from carrying traffic. Enabled means that FRE is allowed to carry traffic."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "cfmPackages": {"items": {"$ref": "#/definitions/FreCfmPackageRO"}, "type": "array", "description": "Holds data related to CFM services configured on an Ethernet service"}, "explicitRouteGroup": {"description": "Explicit Route Group", "$ref": "#/definitions/ExplicitRouteGroupRO"}, "usedBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "resilienceLevel": {"enum": ["UNPROTECTED", "PARTIAL", "PROTECTED", "PROTECTED_IN_JEOPARDY"], "type": "string", "description": "Indicates the general level of resiliency under this given FRE."}, "resiliencyPackage": {"description": "The fre resiliency package contains attributes only appear in resiliency view.", "$ref": "#/definitions/FreResiliencyPackageRO"}, "description": {"type": "string", "description": "String to store description field on service"}, "state": {"enum": ["IS", "OOS", "OOS_AUMA"], "type": "string", "description": "TO BE REMOVED. Use adminState."}, "controlPlanePackage": {"$ref": "#/definitions/ControlPlanePackageRO"}, "isInConflict": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE is in conflict with other FREs."}, "signalContentType": {"type": "string", "description": "Represents whether the FRE is of VLAN/VCE type for L2 devices"}, "mgmtName": {"type": "string", "description": "The name given to the FRE on the NE where applicable (e.g. VS name for SAOS based devices)"}, "mplsPackage": {"description": "This package stores MPLS tunnel information.", "$ref": "#/definitions/MplsPackageRO"}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "internalStructure": {"enum": ["SIMPLE", "SIMPLE_SWITCHED", "PROTECTED_ONE_END", "MULTI_SIMPLE", "MULTIPLE", "PROTECTED_BOTH_ENDS", "MULTIPOINT", "HUB_AND_SPOKE", "EXPLICIT", "INTERCONNECT_ONE_END", "INTERCONNECT_BOTH_ENDS", "DUAL_HOMED_ONE_END", "DUAL_HOMED_BOTH_ENDS", "MULTIPOINT_DC", "UNKNOWN"], "type": "string", "description": "Visible abstraction of the internal structure of the FRE"}, "active": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE is active, or simply a potential."}, "nativeName": {"type": "string", "description": "The name of the FRE that is native to the network element"}, "domainTypes": {"items": {"type": "string"}, "type": "array", "description": "List of domains/protection scheme this FRE is included in."}, "latency": {"type": "number", "description": "Indicates the delay in microseconds.", "format": "double"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "multiHighestStackLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "stitchingFloorActive": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE should not have stitched client FREs."}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "retainedMaxReservableBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "groupPackage": {"description": "Group Package", "$ref": "#/definitions/GroupPackageRO"}, "directionality": {"enum": ["unidirectional", "bidirectional"], "type": "string", "description": "Indicates if the FRE is unidirectional or bidirectional"}, "networkRole": {"enum": ["IFRE", "FREAP", "FREhAP", "ROADMLINE", "IFRECP", "EFRE"], "type": "string", "description": "Determines if the FRE participates in an internal or external forwarding view or involves access points or connection points"}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/FreBgpPackageRO"}, "gneSubnetName": {"type": "string", "description": "The GNE Subnet Name of the FRE"}, "provisioningAttributes": {"description": "Indicates attributes that are used solely in the provisioning workflow. These attributes would not be reported on discovery, but aid in the provisioning workflow.", "$ref": "#/definitions/ProvisioningAttributesRO"}, "routingConstraints": {"$ref": "#/definitions/RoutingConstraintsRO"}, "bundleIds": {"items": {"type": "string"}, "type": "array", "description": "List of up to 20 protection bundles to which the OSRP link belongs"}}}, "TrafficProfileRO": {"type": "object", "properties": {"trafficParams": {"items": {"$ref": "#/definitions/TrafficProfileParamRO"}, "type": "array", "description": "List of traffic parameters that must be used as input in the use-case."}, "routeConstraints": {"description": "Defines the traffic profile route characteristics used to data-drive provisioning workflows.", "$ref": "#/definitions/RouteConstraintsRO"}, "inputParams": {"items": {"$ref": "#/definitions/TrafficProfileParamRO"}, "type": "array", "description": "List of input parameters to be matched to derive the correct trafficProfile for the use-case."}, "outputs": {"items": {"$ref": "#/definitions/TrafficProfileParamRO"}, "type": "array", "description": "List of outputs that are expected in the use-case."}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "BgpTimersRO": {"type": "object", "properties": {"peerNegotiatedKeepAliveTime": {"type": "string", "description": "Peer negotiation keep alive time in seconds"}, "peerMinRouteAdvertisementInterval": {"type": "string", "description": "Peer minimum advertised intervel in seconds"}, "peerConfiguredHoldTime": {"type": "string", "description": "Peer configured hold time in seconds"}, "peerConnectRetryInterval": {"type": "string", "description": "Peer connection retry intervel in seconds."}, "peerConfiguredKeepAliveTime": {"type": "string", "description": "Peer configured keep alive time in seconds"}, "peerMinASOriginationInterval": {"type": "string", "description": "Peer minimum AS origination intervel in seconds"}, "peerNegotiatedHoldTime": {"type": "string", "description": "Peer negotiation hold time in seconds"}}}, "BgpRrRO": {"type": "object", "properties": {"peerRole": {"enum": ["client", "routeReflector"], "type": "string", "description": "Role of the peer"}, "role": {"enum": ["client", "routeReflector"], "type": "string", "description": "self role"}, "peerClusterId": {"type": "string", "description": "The cluster-id to which peer belongs if it is configured as RR client."}}}, "TtiPackageRO": {"type": "object", "properties": {"ttiTx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttributeRO"}, "traceFailedMode": {"enum": ["NULL", "ALARM", "ALARM_FAIL_LINE"], "type": "string"}, "ttiExpectedRx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttributeRO"}, "ttiRx": {"description": "This package stores tti Attribute information.", "$ref": "#/definitions/TtiAttributeRO"}}}, "FreDerivedAttributesRO": {"type": "object", "properties": {"intentDeploymentState": {"enum": ["READY_TO_DEPLOY", "DEPLOYMENT_IN_PROGRESS", "INCOMPLETE_DEPLOYMENT", "COMPLETE_FULLY_READY", "INCOMPLETE_NOT_READY", "INCOMPLETE_NOT_READY_CONFLICT", "INCOMPLETE_READY_BEST_EFFORT", "UNDEPLOYMENT_IN_PROGRESS", "INCOMPLETE_UNDEPLOYMENT", "WAITING_TO_ADOPT"], "type": "string", "description": "Represents the intent deployment stage that the FRE is at in the construction/deployment/discovery life cycle"}, "intentLifeCyclePhase": {"enum": ["WAITING_TO_DEPLOY", "DEPLOYING", "ASSURING", "RETIRING", "ADOPTING_DISCOVERED"], "type": "string", "description": "Represents the intent life cycle stage that the FRE is at in the construction/deployment/discovery life cycle"}}}, "MappingTableEntryRO": {"type": "object", "properties": {"ip": {"type": "string", "description": "The ip address."}, "direction": {"enum": ["RX", "TX", "RXTX"], "type": "string", "description": "The directionality defined in terms of RX/TX."}, "cos": {"type": "string", "description": "The class of service."}, "label": {"type": "string", "description": "The user label."}}}, "EquipmentDisplayDataRO": {"type": "object", "properties": {"displayName": {"type": "string", "description": "Display name of the equipment"}, "displayNameFormat": {"type": "string", "description": "Format of the display name"}}}, "FreExpectationDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/FreExpectationRelationshipsRO"}, "attributes": {"$ref": "#/definitions/FreExpectationAttributesRO"}, "type": {"enum": ["FRE_EXPECTATIONS"], "type": "string", "description": "The fre expectation type"}, "id": {"type": "string", "description": "The unique identifier of the fre expectation"}}}, "FrePlannedRelationshipsRO": {"type": "object", "properties": {"dynamicPropagatedSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "partitionFreAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "serviceIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "partitionFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "decomposedFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "encapsulatedResiliency": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "dynamicInheritedSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "freSwitchList": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "resiliencyController": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "manualSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "equipmentIntent": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "groups": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "endPoints": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}, "freSwitch": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}, "dynamicAutoSRLG": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationshipRO"}, "networkConstructAssociation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationshipRO"}}}, "AccessPointRO": {"type": "object", "properties": {"mirroringBandwidthRules": {"type": "string", "description": "The mirroringBandwithRules for capacity calculation"}, "mirroringNamingRules": {"type": "string", "description": "The mirroringNamingRules for capacity calculation"}, "totalCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "plannedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "usedCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "clientTpeRulesInOwnLayer": {"items": {"$ref": "#/definitions/ConnectionRuleRO"}, "type": "array", "description": "Directions of how to instantiate client TPE(s) for this access point, including indirect (client over client) client TPE instantiation."}, "namingRules": {"items": {"$ref": "#/definitions/NamingRulesRO"}, "type": "array"}, "adaptsToLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "stitchingConstraint": {"enum": ["otnRegen"], "type": "string", "description": "stitchingConstraint values"}, "potentialGrowthCapacity": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "cardinality": {"type": "string", "description": "Number of possible potential TPEs. Can be a numeric (eg '1', '96', '1000', ...) or can be categorical (eg 'indirect')."}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}}}, "AfiSafiOrfRO": {"type": "object", "properties": {"direction": {"enum": ["rx", "tx", "both"], "type": "string", "description": "Outbound Route Filtering direction"}, "type": {"type": "string", "description": "Outbound Route Filtering type"}}}, "ColorGroupRO": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color group"}, "colors": {"items": {"$ref": "#/definitions/ColorEntryRO"}, "type": "array"}, "name": {"type": "string", "description": "The name of the color group"}}}, "EquipmentRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to equipment, such as EquipmentExpectationData"}, "data": {"description": "The equipment data", "$ref": "#/definitions/EquipmentDataRO"}}}, "CapacitySizeRO": {"type": "object", "properties": {"pattern": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacityPatternRO"}, "unit": {"type": "string", "description": "unit for size string value"}, "size": {"items": {"type": "string"}, "type": "array", "description": "Capacity size to be interpreted with CapacityPattern"}}}, "MepEntryRO": {"type": "object", "properties": {"mepId": {"type": "string", "description": "The ID of the MEP"}, "mepType": {"enum": ["UP", "DOWN"], "type": "string", "description": "The type of the MEP, up or down"}, "ccmPriority": {"type": "string", "description": "Priority of the CC messages (0-7)"}, "ccmTransmitState": {"enum": ["ON", "OFF"], "type": "string", "description": "The transmission state of CCM (on/off)"}, "mepAdminState": {"enum": ["ENABLED", "DISABLED"], "type": "string", "description": "The administrative state (enabled/disabled) of the MEP"}, "mepMacAddress": {"type": "string", "description": "The MAC address of the MEP"}, "dmm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731AttributesRO"}, "vlanId": {"type": "string", "description": "The VLAN ID of the MEP"}, "slm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731AttributesRO"}, "lmm": {"description": "Holds Y.1731 attributes for one measurement type of a MEP", "$ref": "#/definitions/Y1731AttributesRO"}, "remoteMepId": {"type": "string", "description": "The ID of the remote MEP"}}}, "RouteConstraintsRO": {"type": "object", "properties": {"maxInCpGroup": {"type": "string", "description": "Maximum number of routes that can be present in a control plane group. Could be a number, or could be a number evident n the model i.e. inverseMux."}, "signalPattern": {"enum": ["adjacent"], "type": "string", "description": "If photonic route type, specifies the frequency or wavelength pattern to choose for the routes."}, "numberOfRoutes": {"type": "string", "description": "Number of routes defined by the configuration. For example, a PRIME/MEMBER configuration.  Could be a number, or could be a number evident from the model i.e. inverseMux. Generally, should only be specified if the configuration implies more than 1 route."}, "sizeOfEachRoute": {"type": "string", "description": "For each route, what is the required size of each route. For example, '200G' in the case of 400G WLAi OTR 2xOTSi."}, "routeCharacteristic": {"enum": ["coRouted", "maximumDiversity"], "type": "string", "description": "If multiple routes need to be defined, what's the relationship between the routes."}, "type": {"enum": ["photonic"], "type": "string", "description": "The route type i.e. photonic. In the future, other types may be supported."}}}, "TtiAttributeRO": {"type": "object", "properties": {"dapi": {"type": "string", "description": "String to hold 'dapi' attribute"}, "operator": {"type": "string", "description": "String to hold 'operator' attribute"}, "sapi": {"type": "string", "description": "String to hold 'sapi' attribute"}}}, "LocationIndexesRO": {"type": "object"}, "CapabilitySpecRO": {"type": "object", "properties": {"attributeSpecs": {"items": {"$ref": "#/definitions/AttributeSpecRO"}, "type": "array", "description": "List of attributes defined in the capability specification that can be acted upon."}}}, "MapperRuleRO": {"type": "object", "properties": {"groupedTribSlots": {"items": {"items": {"type": "string"}, "type": "array"}, "type": "array"}, "tribPort": {"type": "string", "description": "Tributary port"}, "tribSlots": {"items": {"type": "string"}, "type": "array", "description": "Mapped tributary slots corresponding to tributary port"}}}, "ErrorRO": {"type": "object", "properties": {"source": {"description": "Error source", "$ref": "#/definitions/ErrorSourceRO"}, "code": {"type": "string", "description": "Error code"}, "detail": {"type": "string", "description": "Error details"}, "title": {"type": "string", "description": "Error title"}}}, "ColorEntryRO": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color"}, "name": {"type": "string", "description": "The name of the color"}}}, "SyncScopeRO": {"type": "object", "properties": {"name": {"items": {"type": "string"}, "type": "array", "description": "The synchronization scope name"}, "context": {"type": "string", "description": "The synchronization scope context"}}}, "Y1731AttributesRO": {"type": "object", "properties": {"count": {"type": "integer", "description": "The count of the message being transmitted", "format": "int32"}, "remoteMepMacAddress": {"type": "string", "description": "The MAC address of the remote MEP"}, "frameSize": {"type": "string", "description": "The frame size of the messages being transmitted (numeric), if applicable to this measurement"}, "interval": {"type": "string", "description": "The interval between transmitting each message (e.g.: 1)"}, "enabled": {"default": false, "type": "boolean", "description": "True when the particular measurement is enabled"}, "intervalUnit": {"type": "string", "description": "The unit of interval between transmitting each message (e.g.: seconds)"}, "priority": {"type": "string", "description": "The priority of the messages being transmitted (0-7)"}, "repeatDelay": {"type": "integer", "description": "The repeat delay of the message being transmitted", "format": "int32"}, "remoteMepId": {"type": "string", "description": "The ID of the remote MEP"}, "iterate": {"type": "integer", "description": "The iteration number of the message being transmitted", "format": "int32"}}}, "FreProvisioningOperationDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/FreProvisioningRelationshipsRO"}, "attributes": {"description": "The FreProvisioningOperation attributes", "$ref": "#/definitions/FreProvisioningOperationAttributesRO"}, "type": {"enum": ["provisioningOperation"], "type": "string", "description": "The provisioningOperation resource type"}, "id": {"type": "string", "description": "The unique identifier for the FreProvisioningOperation"}}}, "FrePatchOperationRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/FrePlannedRelationshipsRO"}, "keys": {"items": {"type": "string"}, "type": "array", "description": "Used to target specific key(s) of the attribute to be deleted"}, "attribute": {"type": "string", "description": "name of an attribute to be deleted"}, "path": {"type": "string", "description": "path of the object/attribute to be patched"}, "attributes": {"$ref": "#/definitions/FreAttributesRO"}, "op": {"enum": ["replace", "validateDiscovered", "delete", "add"], "type": "string", "description": "supported operation on an fre resource"}}}, "AttributeModificationRuleRO": {"type": "object", "properties": {"permittedOperation": {"enum": ["writeAtCreationTime", "readWrite", "readOnly"], "type": "string"}, "constraint": {"enum": ["writeAtFarEnd"], "type": "string"}}}, "G8032PackageRO": {"type": "object", "properties": {"guardTime": {"type": "integer", "description": "guard time in millisecond.", "format": "int32"}, "operationalChannelBlock": {"default": false, "type": "boolean", "description": "True if the port is blocked, i.e portState == Blocked"}, "forceSwitch": {"default": false, "type": "boolean", "description": "a flag indicating whether the switching is forced or not."}, "portState": {"enum": ["disabled", "forwarding", "blocked", "unknown"], "type": "string", "description": "the state of the port"}, "portDirection": {"enum": ["east", "west"], "type": "string", "description": "the direction of the port."}, "ringId": {"type": "string", "description": "The logical ring ID"}, "ringMembers": {"type": "string", "description": "a comma separated list of virtual ring members."}, "rapsVid": {"type": "string", "description": "the R-APS VID of the ring"}, "portStatus": {"enum": ["ok", "down", "CCMFailure", "localForceSwitch", "remoteForceSwitch", "remoteSignalFailure", "unknown"], "type": "string", "description": "the status of the port"}, "holdOffTimeUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "waitToRestoreUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "rplOwner": {"default": false, "type": "boolean", "description": "True if the port is configured as RPL-owner."}, "waitToBlock": {"type": "integer", "description": "wait to block time in milliseconds. ", "format": "int32"}, "revertive": {"default": false, "type": "boolean", "description": "revertive"}, "ringState": {"enum": ["initializing", "ok", "adminDisabled", "operationalDisabled", "protecting", "recovering", "unknown"], "type": "string", "description": "the state of the ring"}, "logicalRingName": {"type": "string", "description": "The logical ring name"}, "ringType": {"enum": ["majorRing", "subRing"], "type": "string", "description": "the type of ring"}, "waitToRestore": {"type": "integer", "description": "wait to restore time in minute. ", "format": "int32"}, "virtualRingName": {"type": "string", "description": "the virtual ring name"}, "ringStatus": {"enum": ["ok", "localSignalFailure", "localForceSwitch", "remoteOtherPortSignalFailure", "remoteOtherPortForceSwitch", "provisioningMismatch", "notReceivingPDUS", "noRPLOwnerDetected", "unknown"], "type": "string", "description": "the status of the ring"}, "sharedPort": {"type": "string", "description": "sharedPort information for the sub-ring (ONLY for sub-ring endNode)"}, "guardTimeUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}, "subRingTermination": {"default": false, "type": "boolean", "description": "flag indicating whether the subring is terminating or not"}, "holdOffTime": {"type": "integer", "description": "hold off time in milliseconds", "format": "int32"}, "waitToBlockUnit": {"enum": ["min", "sec", "msec"], "type": "string", "description": "Unit of time"}}}, "LocationRO": {"type": "object", "properties": {"mplsLabel": {"type": "string", "description": "MPLS tunnel forward/reverse in/out label"}, "interfaceIp": {"type": "string", "description": "DEPRECATED The IP address of MPLS interface"}, "baynum": {"type": "string", "description": "Bay number"}, "mcId": {"type": "string", "description": "The identifier of the media channel"}, "fiberPairTermination": {"type": "string", "description": "The terminating fiber pair id within a Branching Unit (BU)"}, "frequency": {"type": "string", "description": "The frequency of the channel"}, "subshelf": {"type": "string"}, "wavelength": {"type": "string"}, "ringId": {"type": "string", "description": "ID of the ring"}, "eqptGrp": {"type": "string", "description": "The group ID obtained from RTRV-EQPTGRP for the SAOS card on which the entity resides"}, "port": {"type": "string"}, "leg": {"enum": ["trunk", "a1", "a2"], "type": "string", "description": "Branching Unit (BU) leg e.g. Trunk, A1 or A2"}, "slot": {"type": "string"}, "index": {"type": "string"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string", "description": "MPLS tunnel role"}, "vce": {"type": "string", "description": "The VS name of the CTP entity"}, "fic": {"type": "string", "description": "Frame identification code"}, "subport": {"type": "string"}, "neName": {"type": "string", "description": "Name of the networkConstruct. For example, the OSRP node name in controlPlane."}, "logicalPortName": {"type": "string"}, "protectionRole": {"enum": ["primary", "backup"], "type": "string", "description": "Protection role"}, "lagName": {"type": "string", "description": "Name of the LAG"}, "instance": {"type": "string"}, "locationIndex": {"items": {"$ref": "#/definitions/LocationIndexesRO"}, "type": "array", "description": "List of location indexes"}, "odu2_index": {"type": "string"}, "rapsVid": {"type": "string", "description": "R-APS VID"}, "iclName": {"type": "string", "description": "Name of the ICL"}, "channel": {"type": "string"}, "nmcId": {"type": "string", "description": "OSTi CTP for the SNC"}, "direction": {"enum": ["tx", "rx"], "type": "string", "description": "The direction of the traffic flow e.g. Tx or Rx"}, "mgmtNmcId": {"type": "string", "description": "TBD"}, "peerIp": {"type": "string", "description": "Address of the BGP peer"}, "shelf": {"type": "string"}, "peerAs": {"type": "integer", "description": "Autonomous System number of the BGP peer", "format": "int64"}, "vlan": {"type": "string", "description": "The VLAN ID of the CTP entity"}, "oduCn_index": {"type": "string"}, "lspName": {"type": "string", "description": "MPLS tunnel name"}, "virtualRingName": {"type": "string", "description": "Name of the virtual ring"}, "logicalId": {"type": "string"}, "mgmtMcId": {"type": "string", "description": "TBD"}, "primaryLspName": {"type": "string", "description": "The primary MPLS tunnel name"}, "interfaceName": {"type": "string", "description": "Interface name of the IP FTP"}, "odu4_index": {"type": "string"}, "subsubslot": {"type": "string"}, "managementType": {"enum": ["tl1", "saos", "netconf", "rest", "corba", "submarineConf"], "type": "string", "description": "Management protocol type"}, "sncId": {"type": "string", "description": "Snc id number"}, "eth_index": {"type": "string"}, "pseudoWireId": {"type": "string", "description": "DEPRECATED The identifier of Pseudo-Wire CTP"}, "srcIp": {"type": "string", "description": "Source IP of the node"}, "pseudoWireName": {"type": "string", "description": "The name of the Pseudo-Wire on the CTP"}, "rack": {"type": "string"}, "subslot": {"type": "string"}}}, "FrePlannedDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/FrePlannedRelationshipsRO"}, "attributes": {"$ref": "#/definitions/FrePlannedAttributesRO"}, "type": {"enum": ["frePlanned"], "type": "string", "description": "The fre planned type"}, "id": {"type": "string", "description": "The unique identifier of the planned fre"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "TpeCfmPackageRO": {"type": "object", "properties": {"mep": {"items": {"$ref": "#/definitions/MepEntryRO"}, "type": "array", "description": "Each entry holds information about one Maintenance Endpoint configured on this TPE"}, "cfmServiceName": {"type": "string", "description": "The name of the CFM service"}}}, "LoopbackPackageRO": {"type": "object", "properties": {"loopbackWavelength": {"type": "string", "description": "Wavelength of the loopback test; taken directly from the value of the TL1 LPBKWVL field"}, "loopbackStatus": {"type": "string", "description": "Status of the test; taken directly from the value of the TL1 LPBKSTATUS field."}}}, "MplsFbProtectedTunnelRO": {"type": "object", "properties": {"srcIp": {"type": "string", "description": "Source IP address of the tunnel protected by this FB tunnel"}, "destIp": {"type": "string", "description": "Destination IP address of the tunnel protected by this FB tunnel"}, "role": {"enum": ["ingress", "transit"], "type": "string", "description": "The role at this point of the MPLS tunnel protected by this FB tunnel"}, "name": {"type": "string", "description": "Name of the tunnel protected by this FB tunnel"}}}, "TrafficProfileParamRO": {"type": "object", "properties": {"selectFrom": {"items": {"type": "string"}, "type": "array", "description": "Alternate form of value attribute that permits a comma separated list of the choices available for selection."}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "name": {"type": "string", "description": "Name of attribute."}, "value": {"type": "string", "description": "Value of attribute."}, "location": {"enum": ["self", "intent", "farEnd", "immediateClientTpe"], "type": "string", "description": "If an input, where to find the attribute. If an output, where to set the attribute."}}}, "TunnelPathRO": {"type": "object", "properties": {"hops": {"items": {"$ref": "#/definitions/HopEntryRO"}, "type": "array"}, "pathName": {"type": "string", "description": "The name of this explicit tunnel path"}}}, "FreDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/FreRelationshipsRO"}, "attributes": {"$ref": "#/definitions/FreAttributesRO"}, "type": {"enum": ["fres", "relatedFres"], "type": "string", "description": "The FRE resource type"}, "id": {"type": "string", "description": "The unique identifier for the FRE resource"}}}, "NameToCapacityMappingRulesRO": {"type": "object", "properties": {"capacityUnit": {"type": "string", "description": "Unit of the capacity."}, "mapperRule": {"items": {"$ref": "#/definitions/MapperRuleRO"}, "type": "array"}, "mapping": {"enum": ["FIXED", "FLEXIBLE", "FLEXIBLE_GROUPED", "ALL"], "type": "string", "description": "Identifies namespace to capacity mapping."}, "noOfUnits": {"type": "integer", "description": "Number 1-80 in switching and broadband case", "format": "int32"}, "namingUnit": {"type": "string", "description": "Unit of namespace."}, "relationType": {"enum": ["ONE_TO_ONE", "ONE_TO_MANY"], "type": "string", "description": "Relation type"}}}, "VirtualTpeBWConstraintsRO": {"type": "object", "properties": {"isFre": {"default": false, "type": "boolean"}, "owningPoolAdapterType": {"type": "string"}, "unitsToConsume": {"type": "string"}, "id": {"type": "string"}, "adaptsToLayerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}}}, "MsgsLastErrorRO": {"type": "object", "properties": {"errorCode": {"type": "string", "description": "Error code for last error"}, "errorSubCode": {"type": "string", "description": "Sub error code for last error"}}}, "BgpAfiSafiRO": {"type": "object", "properties": {"grCapability": {"enum": ["enabled", "disabled"], "type": "string", "description": "GR capability"}, "name": {"enum": ["IPV4_UNICAST", "IPV4_LABELED_UNICAST"], "type": "string", "description": "Supported afi-safi names."}, "nextHopSelf": {"description": "This stores BGP Afi Safi NextHopSelf related information.", "$ref": "#/definitions/AfiSafiNextHopSelfRO"}, "activated": {"default": false, "type": "boolean", "description": "true if activated otherwise false"}, "rrEnabled": {"default": false, "type": "boolean", "description": "true/false depending on if nbr is added as route reflector client for afi and safi"}, "prefixList": {"description": "This stores BGP Afi Safi Prefix List related information.", "$ref": "#/definitions/AfiSafiPrefixListRO"}, "orf": {"description": "This stores BGP Afi Safi Orf related information.", "$ref": "#/definitions/AfiSafiOrfRO"}}}, "UserDataRO": {"type": "object"}, "AttributeMatchingRuleRO": {"type": "object", "properties": {"impact": {"enum": ["trafficImpactingWithNoMatch", "noTrafficImpactWithNoMatch"], "type": "string"}, "matchRequired": {"default": false, "type": "boolean"}, "matchingScope": {"enum": ["e2e", "local"], "type": "string"}}}, "BwRO": {"type": "object", "properties": {"available": {"type": "string", "description": "The available bandwidth left to be"}, "requested": {"type": "string", "description": "The requested bandwidth from the supporting layer, e.g. a dynamic tunnel requesting bandwidth from IP interface"}, "autoSize": {"enum": ["enable", "disable"], "type": "string", "description": "If true, the MPLS tunnel will be auto-sized by the NE"}, "used": {"type": "string", "description": "The current used bandwidth by all supported clients"}, "autoSizeLastResizeStartTime": {"type": "string", "description": "Start time of the last auto resize happened"}, "autoSizeIntervalMinutes": {"type": "string", "description": "The configured interval between auto-sizing attempts"}, "autoSizeLastResizeEndTime": {"type": "string", "description": "End time of the last auto resize happened"}, "maximum": {"type": "string", "description": "The maximum bandwidth configured for supported clients"}, "operational": {"type": "string", "description": "The current bandwidth being allocated from the supporting layer"}, "autoSizeLastResizeReason": {"type": "string", "description": "Reason of the last auto resize happened"}, "bookingFactor": {"type": "string", "description": "The booking factor of how much the bandwidth can be oversubscribed, e.g. on an IP interface"}, "minimum": {"type": "string", "description": "The minimum bandwidth configured for supported clients"}, "autoSizeLastResizeState": {"enum": ["success", "failure", "in_progress"], "type": "string", "description": "The state of the last auto-sizing attempt"}, "increment": {"type": "string", "description": "The configured bandwidth increment for auto-sizing of an MPLS tunnel"}, "autoSizeFailureAction": {"enum": ["none", "alarm", "mbb"], "type": "string", "description": "The action to be taken when auto-sizing fails: raise alarm, or make-before-break"}, "maxReservable": {"type": "string", "description": "The maximum reservable bandwidth allowed to be allocated to supported clients and it's calculated as bwBookingFactor x bwTotal"}, "profileName": {"type": "string", "description": "The name of the bandwidth profile associated with the dynamic tunnel endpoint"}, "total": {"type": "string", "description": "The total bandwidth allocated or allowed, e.g. the capacity of an IP interface"}, "autoSizingMode": {"enum": ["none", "cac", "utilization"], "type": "string", "description": "The configured auto-sizing mode"}, "unit": {"type": "string", "description": "The bandwidth unit that applies to all bandwidth attributes in this package. Available values: bps, kbps, mbps, gbps"}}}, "FreResiliencyPackageRO": {"type": "object", "properties": {"role": {"enum": ["Working", "Protecting"], "type": "string", "description": "the role of the fre"}}}, "TpeDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/TpeRelationshipsRO"}, "attributes": {"$ref": "#/definitions/TpeAttributesRO"}, "type": {"enum": ["tpes"], "type": "string", "description": "The TPE resource type"}, "id": {"type": "string", "description": "The unique identifier for the TPE resource"}}}, "LinkAttributesRO": {"type": "object", "properties": {"userLabel": {"type": "string", "description": "The user label (not necessarily unique) of the topology to be created."}, "note": {"$ref": "#/definitions/NoteRO"}, "description": {"type": "string", "description": "Short description of the topology to be created."}, "tags": {"items": {"type": "string"}, "type": "array", "description": "Reference to 3rd Party Network involved in this topology, can be re-used for other purposes in future."}}}, "MappingInteractionRuleRO": {"type": "object", "properties": {"segmentBoundaryRule": {"enum": ["mustNotOverlap"], "type": "string", "description": "The default is mustNotOverlap."}}}, "OneToOneRelationshipRO": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipDataRO"}}}, "ValidateParametersRO": {"type": "object", "properties": {"include": {"type": "string", "description": "The list of comma separated parameters (if any) to be validated against the expectation"}}}, "IndexesRO": {"type": "object"}, "FreListRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to a FRE, such as EndPointData, TpeData, FreExpectationData"}, "meta": {"description": "A metadata object that contains non-standard meta information", "$ref": "#/definitions/MetaDataRO"}, "data": {"items": {"$ref": "#/definitions/FreDataRO"}, "type": "array", "description": "An array of FREs"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "CapacityReservationRO": {"type": "object", "properties": {"endTime": {"type": "string", "format": "date-time"}, "startTime": {"type": "string", "format": "date-time"}, "usedCapacity": {"description": "Resource to track total and used capacity per client type for a TPE", "$ref": "#/definitions/CapacityRO"}}}, "LqsDataRO": {"type": "object", "properties": {"status": {"enum": ["low", "good", "upgrade", "high"], "type": "string"}, "fiber": {"$ref": "#/definitions/LqsFiberDataRO"}, "margin": {"$ref": "#/definitions/LqsMarginDataRO"}}}, "ResiliencyHandlingPackageRO": {"type": "object", "properties": {"direction": {"enum": ["Tx", "Rx"], "type": "string", "description": "the direction of the resiliency service"}, "edges": {"items": {"$ref": "#/definitions/ResiliencyHandlingEdgeRO"}, "type": "array", "description": "hold the pairs of ID of the CTPs from the physical view and its client PTP ID, for the eFRE endpoints."}, "layerRateStack": {"items": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string"}, "type": "array", "description": "ordered list of layerRates"}, "commonEdgeTpeId": {"type": "string", "description": "the ID of the common CTP in the physical view"}}}, "MetaDataRO": {"type": "object", "properties": {"absoluteTotal": {"type": "integer", "description": "The unfiltered total number of entities in the data", "format": "int64"}, "total": {"type": "integer", "description": "The total number of entities in the data", "format": "int64"}, "aggregations": {"items": {"$ref": "#/definitions/AggregationRO"}, "type": "array", "description": "The aggregated data based on a requested aggregation name and criteria"}}}, "AggregationRO": {"type": "object", "properties": {"buckets": {"items": {"$ref": "#/definitions/AggregationBucketRO"}, "type": "array", "description": "Aggregation results for different criteria"}, "name": {"type": "string", "description": "The name of the aggregation"}}}, "HopEntryRO": {"type": "object", "properties": {"hopType": {"enum": ["strict", "loose"], "type": "string", "description": "The type of this hop"}, "hopAddress": {"type": "string", "description": "The IP-data interface address for this hop"}}}, "PhotonicSpectrumPackageRO": {"type": "object", "properties": {"minFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the previous NMC."}, "signalBandWidth10DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 10 dBm less than peak power."}, "maxFreqDeadBand": {"type": "string", "description": "Upper dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "targetMinFreq": {"type": "string", "description": "Allows the automatic adjustment of the MINFREQ when any associated NMCTP are deleted. Default is MINFREQ (no target lower frequency)."}, "signalBandWidth3DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 3 dBm less than peak power."}, "minFreqDeadBand": {"type": "string", "description": "Lower dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "maxFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the next NMC."}, "frequency": {"type": "string", "description": "The central signal frequency."}, "freqResolution": {"type": "string", "description": "Indicates the recurring frequency step that is allowed to be configured on the transponder."}, "maxFreq": {"type": "string", "description": "The maximum signal frequency."}, "targetMaxFreq": {"type": "string", "description": "Allows the automatic adjustment of the MAXFREQ when any associated NMCTP are deleted. Default is MAXFREQ (no target upper frequency)."}, "wavelength": {"type": "string", "description": "The central signal wavelength."}, "wavelengthGrid ": {"type": "string", "description": "A hexadecimal number representing the vector of wavelengths that can be used by this SNC. Each bit set within the number indicates which wavelength is currently configured"}, "minFreq": {"type": "string", "description": "The minimum signal frequency."}}}, "EquipmentDataRO": {"type": "object", "properties": {"relationships": {"description": "The equipment relationships", "$ref": "#/definitions/EquipmentRelationshipsRO"}, "attributes": {"description": "The equipment attributes", "$ref": "#/definitions/EquipmentAttributesRO"}, "type": {"enum": ["equipment"], "type": "string", "description": "The equipment resource type"}, "id": {"type": "string", "description": "The unique identifier for the equipment resource"}}}, "SignalIndexRO": {"type": "object", "properties": {"index": {"type": "string", "description": "The signal index. Indicates a time slot."}, "wavelengthMax": {"type": "string", "description": "The maximum signal wavelength."}, "phy_index": {"type": "string", "description": "The physical index. Indicates a time slot."}, "width": {"type": "string", "description": "The signal width."}, "maxFreq": {"type": "string", "description": "The maximum signal frequency."}, "odu4_index": {"type": "string", "description": "The odu4 index. Indicates a time slot or tributary port number."}, "oduCn_index": {"type": "string", "description": "The oduCn index. Indicates a time slot or tributary port number."}, "channels": {"items": {"type": "string"}, "type": "array", "description": "Indicates the list of discrete channels utilized e.g. tributary slots on broadband cards. Plans are to utilize this generically for any list of discrete list of signals."}, "eth_index": {"type": "string", "description": "The eth index."}, "odu3_index": {"type": "string", "description": "The odu3 index. Indicates a time slot or tributary port number."}, "odu2_index": {"type": "string", "description": "The odu2 index. Indicates a time slot or tributary port number."}, "frequency": {"type": "string", "description": "The central signal frequency."}, "minFreq": {"type": "string", "description": "The minimum signal frequency."}, "ots_index": {"type": "string", "description": "The ots index. Indicates a time slot."}, "wavelength": {"type": "string", "description": "The signal wavelength (nm)."}, "mappingTable": {"items": {"$ref": "#/definitions/MappingTableEntryRO"}, "type": "array"}, "indexes": {"description": "Map of index attributes to represent more than one indexes per LT. Plan is to remove above odu2_index, odu4_index & oduCn_index signal attributes in future and use this one", "$ref": "#/definitions/IndexesRO"}, "wavelengthMin": {"type": "string", "description": "The minimum signal wavelength."}, "mgmtMcId": {"type": "string", "description": "The management identifier of the media channel"}}}, "FreDisplayPhotonicSpectrumDataRO": {"type": "object", "properties": {"wavelength": {"type": "string", "description": "The corresponding wavelength value for the frequency attribute"}, "frequency": {"type": "string", "description": "The frequency value for one of the underlying Endpoints"}, "channel": {"type": "string", "description": "The corresponding channel number for the frequency attribute"}}}, "RelationshipMetaDataRO": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean", "description": "Flags whether the included relationship object is partially populated or not"}}}, "FrePatchRO": {"type": "object", "properties": {"operations": {"items": {"$ref": "#/definitions/FrePatchOperationRO"}, "type": "array"}}}, "LinksRO": {"type": "object", "properties": {"last": {"type": "string", "description": "The last page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "next": {"type": "string", "description": "The next page of data", "format": "uri"}, "current": {"type": "string", "description": "The current page of data", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "FreProvisioningOperationRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/FreProvisioningOperationDataRO"}}}, "LayerProtocolRO": {"type": "object", "properties": {"termination": {"description": "The specification of the layer protocol termination (including framing, modulation etc). For example the specification of the function that takes a MAC frame and extracts the content (removing the MAC address in the process).", "$ref": "#/definitions/TerminationRO"}, "accessPoint": {"$ref": "#/definitions/AccessPointRO"}, "connectionPoint": {"$ref": "#/definitions/ConnectionPointRO"}, "layeredAttributes": {"items": {"$ref": "#/definitions/LayeredAttributeRO"}, "type": "array"}, "adaptationPools": {"items": {"$ref": "#/definitions/AdaptationPoolRO"}, "type": "array"}}}, "EquipmentSpecRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "hardwareVersion": {"type": "string", "description": "The hardware version"}, "serialNumber": {"type": "string", "description": "The serial number"}, "version": {"type": "string", "description": "The software version"}, "partNumber": {"type": "string", "description": "The part number"}, "type": {"type": "string", "description": "The type of equipment"}, "displayLabels": {"description": "Display label key/value pair map", "$ref": "#/definitions/DisplayLabelMapRO"}, "manufacturer": {"type": "string", "description": "The manufacturer"}}}, "MplsFrrRO": {"type": "object", "properties": {"frrProtected": {"default": false, "type": "boolean", "description": "If true, the tunnel is protected by fast re-route (FRR) on the headend TX MPLS CTP"}, "profileName": {"type": "string", "description": "The FRR profile name on the headend TX MPLS CTP"}, "localProtection": {"description": "Holds MPLS FRR local protection attributes for TX MPLS CTP", "$ref": "#/definitions/MplsFrrLocalProtectionRO"}, "actualProtectionRoute": {"items": {"$ref": "#/definitions/MplsFrrProtectionRouteHopRO"}, "type": "array", "description": "Actual FRR protection route on the headend TX MPLS CTP"}}}, "BfdRO": {"type": "object", "properties": {"transmitInterval": {"type": "string", "description": "The interval between transmitting BFD messages"}, "configured": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "receiveInterval": {"type": "string", "description": "The interval between receiving BFD messages"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of BFD for this endpoint"}, "role": {"enum": ["passive", "active", "any"], "type": "string", "description": "The role of BFD for this endpoint"}, "profileName": {"type": "string", "description": "The profile name associated with this set of BFD attributes"}, "operationalState": {"enum": ["up", "down"], "type": "string", "description": "The operational state of BFD for this endpoint"}}}, "MplsFrrProtectionRouteHopRO": {"type": "object", "properties": {"ip": {"type": "string", "description": "IP interface address or node loopback IP address of the current hop"}, "bwProtected": {"default": false, "type": "boolean", "description": "True when the bandwidth is protected on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}, "protectionType": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "The FB protection type on this hop for this unidirectional tunnel"}}}, "LayeredAttributeRO": {"type": "object", "properties": {"additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "layer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "loopbackPackage": {"description": "This package stores loopback information", "$ref": "#/definitions/LoopbackPackageRO"}}}, "FreProvisioningRelationshipsRO": {"type": "object", "properties": {"freExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationshipRO"}}}, "AttributePoliciesRO": {"type": "object", "properties": {"defaultAttributeSourcePolicy": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string", "description": "Source of attribute."}, "overrides": {"items": {"$ref": "#/definitions/AttributePolicyOverrideRO"}, "type": "array"}}}, "LayerTerminationRO": {"type": "object", "properties": {"adminWt": {"type": "number", "description": "Administrative weight which specifies the level of importance given to the OSRP link", "format": "double"}, "resiliencyTopologyPackage": {"description": "This package stores resiliency topology information.", "$ref": "#/definitions/ResiliencyTopologyPackageRO"}, "ttiPackage": {"description": "This package stores Tti information.", "$ref": "#/definitions/TtiPackageRO"}, "powerPackage": {"description": "This package stores power related information.", "$ref": "#/definitions/PowerPackageRO"}, "structureType": {"enum": ["dual_port", "dual_port_client_mapping", "exposed_lone_cp", "lone_adapter", "full_layer_optional_exposed_cp", "full_layer_optional_exposed_cp_and_tcp", "full_layer_fixed", "exposed_tcp", "concatenating_adapter", "concatenatable_exposed_tcp", "layer_termination_structure_type_unknown", "concatenatable_fixed", "exposed_TCP_and_CP"], "type": "string", "description": "Identifies the internal structure of the layer termination."}, "mplsPackage": {"description": "This package stores MPLS tunnel information.", "$ref": "#/definitions/MplsPackageRO"}, "layerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "boundaries": {"items": {"type": "string"}, "type": "array", "description": "Array of strings to track boundaries of Layer Termination"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of the layer termination."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "cfmPackages": {"items": {"$ref": "#/definitions/TpeCfmPackageRO"}, "type": "array", "description": "Holds data related to CFM services configured on an Ethernet service"}, "terminationState": {"enum": ["layer_termination_cannot_terminate", "layer_termination_not_terminated", "terminated_server_to_client_flow", "terminated_client_to_server_flow", "terminated_bidirectional", "layer_termination_permanently_terminated", "termination_state_unknown"], "type": "string", "description": "Whether and how this LayerTermination is terminated."}, "signalIndex": {"description": "Attribute representing a signal index (e.g. channel information, wavelength, etc).", "$ref": "#/definitions/SignalIndexRO"}, "controlPlanePackage": {"description": "The northbound model of Control Plane Package.", "$ref": "#/definitions/ControlPlanePackageRO"}, "latency": {"type": "number", "description": "Indicates the delay in microseconds.", "format": "double"}, "dynamicLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "layerProtocol": {"description": "A LayerProtocol instance is used for controlling termination and monitoring functionality. Also, it is used for controlling the adaptation (i.e. encapsulation and/or multiplexing of client signal), tandem connection monitoring, traffic conditioning and/or shaping functionality at an intermediate point along a connection.", "$ref": "#/definitions/LayerProtocolRO"}, "adjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackageRO"}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "trafficProfiles": {"items": {"$ref": "#/definitions/TrafficProfileRO"}, "type": "array", "description": "Traffic profile characteristics used to data-drive provisioning workflows."}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/BgpPackageRO"}, "active": {"default": false, "type": "boolean", "description": "Whether or not an inactive layer appears to be absent from the layer stack."}, "nativeName": {"type": "string", "description": "The name of the TPE that is native to the network element."}, "g8032Package": {"description": "This package stores information about the G8032 ring", "$ref": "#/definitions/G8032PackageRO"}, "retainedAdjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackageRO"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "serviceLabel": {"type": "string", "description": "The service-identifiying label"}, "manualAdjacencyPackage": {"description": "This package stores layer adjacency information.", "$ref": "#/definitions/AdjacencyPackageRO"}, "operationalState": {"enum": ["up", "down", "link_flapping", "abnormal"], "type": "string", "description": "The operational (actual) state of the layer termination."}, "nativeLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "bundleIds": {"items": {"type": "string"}, "type": "array", "description": "List of up to 20 protection bundles to which the OSRP link belongs"}}}, "FreRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to a FRE, such as FreData, EndPointData, TpeData, EquipmentData, EquipmentHolderData, FrePlannedData, FreExpectationData, FreDiscoveredData, ResiliencyControllerData, EncapsulatedResiliencyData"}, "data": {"$ref": "#/definitions/FreDataRO"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/LinksRO"}}}, "FreAttributesRO": {"type": "object", "properties": {"latency": {"type": "number", "description": "Indicates the delay in microseconds.", "format": "double"}, "adminWt": {"type": "number", "description": "Administrative weight which specifies the level of importance given to the OSRP link", "format": "double"}, "customerName": {"type": "string", "description": "The name of the customer for the fre."}, "resiliencyTopologyPackage": {"description": "This package stores resiliency topology information.", "$ref": "#/definitions/ResiliencyTopologyPackageRO"}, "relatedType": {"type": "string", "description": "The Type of Relation"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition this fre belongs to."}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "adminState": {"enum": ["ENABLED", "DISABLED", "NOT_APPLICABLE", "IN_SERVICE", "OUT_OF_SERVICE"], "type": "string", "description": "Indicates the administrative state of the FRE, including whether traffic has been enabled and whether the FRE should be used by clients. It is derived from the state(s) of terminating TPE(s). Disabled means that FRE is prevented from carrying traffic. Enabled means that FRE is allowed to carry traffic."}, "displayData": {"$ref": "#/definitions/FreDisplayDataRO"}, "reliability": {"enum": ["MANUAL", "AUTO"], "type": "string", "description": "Stitcher attribute to set reliability on FRE"}, "freType": {"enum": ["explicitRoute", "explicitRouteGroup", "snc", "sncGroup", "regen", "route", "resilientConfig", "osrpLine", "osrpLink", "sncp", "eline", "elan", "etree", "dropAndContinue"], "type": "string", "description": "The sub type of FRE"}, "bandwidthTriggers": {"$ref": "#/definitions/BandwidthTriggersRO"}, "userLabel": {"type": "string", "description": "The label given to the FRE by an user"}, "maxReservableBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "lqsData": {"$ref": "#/definitions/LqsDataRO"}, "topologySources": {"items": {"enum": ["discovered", "adjacency", "stitched", "connection_rule", "connection_rule_nodal", "backpropagated", "connection_rule_snc", "connection_rule_sncp", "manual", "retained"], "type": "string"}, "type": "array", "description": "Source of topology"}, "deploymentState": {"enum": ["SCHEDULED", "NOT_PRESENT_IN_NETWORK", "DEPLOYMENT_IN_PROGRESS", "PROVISIONED", "INCOMPLETE_DEPLOYMENT", "DEPLOYED", "COMPLETE_IN_NETWORK", "INCOMPLETE_PARTIAL", "INCOMPLETE_PARTIAL_IN_CONFLICT", "INCOMPLETE_READY_BEST_EFFORT", "UNDEPLOYMENT_IN_PROGRESS", "INCOMPLETE_UNDEPLOYMENT", "DISCOVERED"], "type": "string", "description": "Represents the stage that the FRE is at in the construction/deployment/discovery life cycle"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the FRE"}, "description": {"type": "string", "description": "String to store description field on service"}, "layerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "note": {"$ref": "#/definitions/NoteRO"}, "state": {"enum": ["IS", "OOS", "OOS_AUMA"], "type": "string", "description": "TO BE REMOVED. Use adminState."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "cfmPackages": {"items": {"$ref": "#/definitions/FreCfmPackageRO"}, "type": "array", "description": "Holds data related to CFM services configured on an Ethernet service"}, "deploymentStateTransaction": {"enum": ["SCHEDULED", "NOT_PRESENT_IN_NETWORK", "DEPLOYMENT_IN_PROGRESS", "PROVISIONED", "INCOMPLETE_DEPLOYMENT", "DEPLOYED", "COMPLETE_IN_NETWORK", "INCOMPLETE_PARTIAL", "INCOMPLETE_PARTIAL_IN_CONFLICT", "INCOMPLETE_READY_BEST_EFFORT", "UNDEPLOYMENT_IN_PROGRESS", "INCOMPLETE_UNDEPLOYMENT", "DISCOVERED"], "type": "string", "description": "Represents the stage that the FRE is at in the construction/deployment/discovery life cycle"}, "stitchingTriggers": {"$ref": "#/definitions/StitchingTriggersRO"}, "controlPlanePackage": {"$ref": "#/definitions/ControlPlanePackageRO"}, "userData": {"description": "User data", "$ref": "#/definitions/UserDataRO"}, "isInConflict": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE is in conflict with other FREs."}, "resiliencyPackage": {"description": "The fre resiliency package contains attributes only appear in resiliency view.", "$ref": "#/definitions/FreResiliencyPackageRO"}, "provisioningAttributes": {"description": "Indicates attributes that are used solely in the provisioning workflow. These attributes would not be reported on discovery, but aid in the provisioning workflow.", "$ref": "#/definitions/ProvisioningAttributesRO"}, "tags": {"items": {"type": "string"}, "type": "array", "description": "A set of tags for a given fre."}, "derivedAttributes": {"description": "Attributes that have been derived from other attributes and need to be stored", "$ref": "#/definitions/FreDerivedAttributesRO"}, "photonicSpectrumPackageList": {"items": {"$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "type": "array"}, "serviceClass": {"enum": ["EVC", "E_TRANSIT", "E_ACCESS", "VLAN", "TDM", "PSEUDOWIRE_LINK", "TRANSPORT_CLIENT", "PHOTONIC", "TUNNEL", "IP", "LLDP", "LAG", "OTU", "OSRP_LINK", "OSRP_LINE", "ROADM_LINE", "FIBER", "SNC", "SNCP", "ICL", "RING", "BGP_SESSION"], "type": "string", "description": "Represents the type of FRE service"}, "signalContentType": {"type": "string", "description": "Represents whether the FRE is of VLAN/VCE type for L2 devices"}, "mgmtName": {"type": "string", "description": "The name given to the FRE on the NE where applicable (e.g. VS name for SAOS based devices)"}, "mplsPackage": {"description": "This package stores MPLS tunnel information.", "$ref": "#/definitions/MplsPackageRO"}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "internalStructure": {"enum": ["SIMPLE", "SIMPLE_SWITCHED", "PROTECTED_ONE_END", "MULTI_SIMPLE", "MULTIPLE", "PROTECTED_BOTH_ENDS", "MULTIPOINT", "HUB_AND_SPOKE", "EXPLICIT", "INTERCONNECT_ONE_END", "INTERCONNECT_BOTH_ENDS", "DUAL_HOMED_ONE_END", "DUAL_HOMED_BOTH_ENDS", "MULTIPOINT_DC", "UNKNOWN"], "type": "string", "description": "Visible abstraction of the internal structure of the FRE"}, "active": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE is active, or simply a potential."}, "nativeName": {"type": "string", "description": "The name of the FRE that is native to the network element"}, "controlActivityState": {"enum": ["NONE", "ACTIVATING", "DEACTIVATING", "IDLE", "PENDING", "MODIFYING", "FAILING", "DEGRADED"], "type": "string", "description": "Represents the state of management activity being performed against this FRE."}, "domainTypes": {"items": {"type": "string"}, "type": "array", "description": "List of domains/protection scheme this FRE is included in."}, "bookingData": {"description": "Bandwidth booking data", "$ref": "#/definitions/BookingDataRO"}, "explicitRouteGroup": {"description": "Explicit Route Group", "$ref": "#/definitions/ExplicitRouteGroupRO"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "multiHighestStackLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "usedBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "retainedMaxReservableBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "groupPackage": {"description": "Group Package", "$ref": "#/definitions/GroupPackageRO"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "gneSubnetName": {"type": "string", "description": "The GNE Subnet Name of the FRE"}, "identifiers": {"items": {"$ref": "#/definitions/IdentifierRO"}, "type": "array"}, "resilienceLevel": {"enum": ["UNPROTECTED", "PARTIAL", "PROTECTED", "PROTECTED_IN_JEOPARDY"], "type": "string", "description": "Indicates the general level of resiliency under this given FRE."}, "directionality": {"enum": ["unidirectional", "bidirectional"], "type": "string", "description": "Indicates if the FRE is unidirectional or bidirectional"}, "operationState": {"enum": ["FULLY_OPERATING", "NOT_OPERATING", "DEGRADED_OPERATION", "NOT_APPLICABLE", "UNDETERMINED", "IN_SERVICE", "DEGRADED", "OUT_OF_SERVICE_EXTERNAL", "OUT_OF_SERVICE"], "type": "string", "description": "Represents the total traffic carrying capability of the FRE. Relates to flow of traffic across the FRE between endpoints."}, "networkRole": {"enum": ["IFRE", "FREAP", "FREhAP", "ROADMLINE", "IFRECP", "EFRE"], "type": "string", "description": "Determines if the FRE participates in an internal or external forwarding view or involves access points or connection points"}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/FreBgpPackageRO"}, "linkLabel": {"type": "string", "description": "A Label for OTU links"}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePoliciesRO"}, "stitchingFloorActive": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE should not have stitched client FREs."}, "bundleIds": {"items": {"type": "string"}, "type": "array", "description": "List of up to 20 protection bundles to which the OSRP link belongs"}, "routingConstraints": {"$ref": "#/definitions/RoutingConstraintsRO"}, "resiliencyHandlingPackage": {"items": {"$ref": "#/definitions/ResiliencyHandlingPackageRO"}, "type": "array", "description": " triggers stitcher building resiliency view and NSI updating layerRate in resiliency view"}}}, "ContinuousAdapterRulesPackageRO": {"type": "object", "properties": {"lowerBoundaryRule": {"enum": ["mustSnapTo6_25GHzGrid_0_768", "mustSnapTo37_5GHzGrid_0_96", "snapTo6_25GHzGrid", "snapTo50GHzGrid", "snapTo100GHzGrid", "snapTo75GHzGrid"], "type": "string", "description": "Rule that the boundary of the range must follow. Can point to a specific algorithm to be executed."}, "centerFrequencyRule": {"enum": ["transponderResolution"], "type": "string", "description": "Rule that the centerFrequency of the range must follow. Can point to a specific algorithm to be executed."}, "segmentationRule": {"enum": ["oneSegementInGroup"], "type": "string", "description": "Whether the segment can be fragmented."}, "upperBoundaryRule": {"enum": ["mustSnapTo6_25GHzGrid_0_768", "mustSnapTo37_5GHzGrid_0_96", "snapTo6_25GHzGrid", "snapTo50GHzGrid", "snapTo100GHzGrid", "snapTo75GHzGrid"], "type": "string", "description": "Rule that the boundary of the range must follow. Can point to a specific algorithm to be executed."}, "widthRule": {"enum": ["mediaChannelWidthRule", "nmcWidthRule"], "type": "string", "description": "How wide the range can be. Can point to a specific algorithm to be executed."}}}, "DisplayLabelMapRO": {"type": "object"}, "FrePlannedAttributesRO": {"type": "object", "properties": {"latency": {"type": "number", "description": "Indicates the delay in microseconds.", "format": "double"}, "adminWt": {"type": "number", "description": "Administrative weight which specifies the level of importance given to the OSRP link", "format": "double"}, "resiliencyTopologyPackage": {"description": "This package stores resiliency topology information.", "$ref": "#/definitions/ResiliencyTopologyPackageRO"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition this fre belongs to."}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "adminState": {"enum": ["ENABLED", "DISABLED", "NOT_APPLICABLE", "IN_SERVICE", "OUT_OF_SERVICE"], "type": "string", "description": "Indicates the administrative state of the FRE, including whether traffic has been enabled and whether the FRE should be used by clients. It is derived from the state(s) of terminating TPE(s). Disabled means that FRE is prevented from carrying traffic. Enabled means that FRE is allowed to carry traffic."}, "reliability": {"enum": ["MANUAL", "AUTO"], "type": "string", "description": "Stitcher attribute to set reliability on FRE"}, "freType": {"enum": ["explicitRoute", "explicitRouteGroup", "snc", "sncGroup", "regen", "route", "resilientConfig", "osrpLine", "osrpLink", "sncp", "eline", "elan", "etree", "dropAndContinue"], "type": "string", "description": "The sub type of FRE"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRuleRO"}, "resiliencyHandlingPackage": {"items": {"$ref": "#/definitions/ResiliencyHandlingPackageRO"}, "type": "array", "description": " triggers stitcher building resiliency view and NSI updating layerRate in resiliency view"}, "maxReservableBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "mplsPackage": {"description": "This package stores MPLS tunnel information.", "$ref": "#/definitions/MplsPackageRO"}, "topologySources": {"items": {"enum": ["discovered", "adjacency", "stitched", "connection_rule", "connection_rule_nodal", "backpropagated", "connection_rule_snc", "connection_rule_sncp", "manual", "retained"], "type": "string"}, "type": "array", "description": "Source of topology"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScopeRO"}, "type": "array", "description": "The sync scope for the FRE"}, "layerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "userLabel": {"type": "string", "description": "The label given to the FRE by an user"}, "photonicSpectrumPackageList": {"items": {"$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "type": "array"}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackageRO"}, "cfmPackages": {"items": {"$ref": "#/definitions/FreCfmPackageRO"}, "type": "array", "description": "Holds data related to CFM services configured on an Ethernet service"}, "explicitRouteGroup": {"description": "Explicit Route Group", "$ref": "#/definitions/ExplicitRouteGroupRO"}, "usedBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "resilienceLevel": {"enum": ["UNPROTECTED", "PARTIAL", "PROTECTED", "PROTECTED_IN_JEOPARDY"], "type": "string", "description": "Indicates the general level of resiliency under this given FRE."}, "resiliencyPackage": {"description": "The fre resiliency package contains attributes only appear in resiliency view.", "$ref": "#/definitions/FreResiliencyPackageRO"}, "description": {"type": "string", "description": "String to store description field on service"}, "state": {"enum": ["IS", "OOS", "OOS_AUMA"], "type": "string", "description": "TO BE REMOVED. Use adminState."}, "controlPlanePackage": {"$ref": "#/definitions/ControlPlanePackageRO"}, "isInConflict": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE is in conflict with other FREs."}, "signalContentType": {"type": "string", "description": "Represents whether the FRE is of VLAN/VCE type for L2 devices"}, "mgmtName": {"type": "string", "description": "The name given to the FRE on the NE where applicable (e.g. VS name for SAOS based devices)"}, "gneSubnetName": {"type": "string", "description": "The GNE Subnet Name of the FRE"}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "internalStructure": {"enum": ["SIMPLE", "SIMPLE_SWITCHED", "PROTECTED_ONE_END", "MULTI_SIMPLE", "MULTIPLE", "PROTECTED_BOTH_ENDS", "MULTIPOINT", "HUB_AND_SPOKE", "EXPLICIT", "INTERCONNECT_ONE_END", "INTERCONNECT_BOTH_ENDS", "DUAL_HOMED_ONE_END", "DUAL_HOMED_BOTH_ENDS", "MULTIPOINT_DC", "UNKNOWN"], "type": "string", "description": "Visible abstraction of the internal structure of the FRE"}, "active": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE is active, or simply a potential."}, "nativeName": {"type": "string", "description": "The name of the FRE that is native to the network element"}, "controlActivityState": {"enum": ["NONE", "ACTIVATING", "DEACTIVATING", "IDLE", "PENDING", "MODIFYING", "FAILING", "DEGRADED"], "type": "string", "description": "Represents the state of management activity being performed against this FRE."}, "domainTypes": {"items": {"type": "string"}, "type": "array", "description": "List of domains/protection scheme this FRE is included in."}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributesRO"}, "multiHighestStackLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "stitchingFloorActive": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE should not have stitched client FREs."}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "retainedMaxReservableBandwidth": {"items": {"$ref": "#/definitions/CapacityRO"}, "type": "array"}, "groupPackage": {"description": "Group Package", "$ref": "#/definitions/GroupPackageRO"}, "directionality": {"enum": ["unidirectional", "bidirectional"], "type": "string", "description": "Indicates if the FRE is unidirectional or bidirectional"}, "networkRole": {"enum": ["IFRE", "FREAP", "FREhAP", "ROADMLINE", "IFRECP", "EFRE"], "type": "string", "description": "Determines if the FRE participates in an internal or external forwarding view or involves access points or connection points"}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/FreBgpPackageRO"}, "provisioningAttributes": {"description": "Indicates attributes that are used solely in the provisioning workflow. These attributes would not be reported on discovery, but aid in the provisioning workflow.", "$ref": "#/definitions/ProvisioningAttributesRO"}, "routingConstraints": {"$ref": "#/definitions/RoutingConstraintsRO"}, "bundleIds": {"items": {"type": "string"}, "type": "array", "description": "List of up to 20 protection bundles to which the OSRP link belongs"}}}, "MplsFbRO": {"type": "object", "properties": {"excludeIp": {"type": "string", "description": "IP address excluded from the FB tunnel path"}, "protectedTunnels": {"items": {"$ref": "#/definitions/MplsFbProtectedTunnelRO"}, "type": "array"}, "frrAutoCreated": {"default": false, "type": "boolean", "description": "The flag indicating whether the FB tunnel is auto created by FRR"}, "protectedInterface": {"type": "string", "description": "Name of the interface being protected by the FB tunnel"}}}, "StitchingTriggersRO": {"type": "object", "properties": {"partitioningFreConcreteIds": {"items": {"type": "string"}, "type": "array", "description": "List of physical FRE IDs for which stitcher should add a concrete relationship to on the stitched FRE"}, "protectingFreConcreteIds": {"items": {"type": "string"}, "type": "array", "description": "List of physical FRE IDs for which stitcher should add a concrete relationship to on the stitched resiliency FRE, where there is an EncapsulatedResiliency with a protectionScheme defined."}, "backpropagateTpeId": {"type": "string", "description": "Stitcher uses backpropagte TPE id while creating FRE in physical view"}}}, "TpeRO": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Referenced sub-resources"}, "data": {"$ref": "#/definitions/TpeDataRO"}}}, "MplsFrrLocalProtectionRO": {"type": "object", "properties": {"protectionFbName": {"type": "string", "description": "Protection FB tunnel name"}, "protectionAvailable": {"default": false, "type": "boolean", "description": "True when the protection is available on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_sftp_service.json b/tapi/resources/MCP_4.0.0_sftp_service.json
deleted file mode 100644
index 18e06c8cfd8d754b4becb4c6c48549f1468805be..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_sftp_service.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0.0", "description": "Protocol Handler", "title": "Sftp Service"}, "paths": {"/api/v1/cleanup": {"post": {"responses": {"200": {"description": "OK"}, "400": {"description": "Bad request"}}, "description": "CleanUp the data directory used for sftp/sftp if size is more than the threshold size in MB", "parameters": [{"schema": {"$ref": "#/definitions/CleanUp"}, "in": "body", "description": "size threshold", "name": "body"}], "produces": ["application/json"], "tags": ["cleanup"], "summary": "CleanUp the data directory used for sftp/sftp", "consumes": ["application/json"], "operationId": "cleanup"}}, "/api/v1/checkkafka": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/KafkaUp"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/KafkaUp"}}}, "description": "checks if kafka is up and responds", "parameters": [{"schema": {"$ref": "#/definitions/KafkaUp"}, "in": "body", "description": "is kafka up", "name": "body"}], "produces": ["application/json"], "tags": ["checkkafka"], "summary": "check if kafka is up", "consumes": ["application/json"], "operationId": "checkkafka"}}, "/api/v1/checkdisk": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/DiskSize"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/DiskSize"}}}, "description": "checks if disk space is critical and responds", "parameters": [{"schema": {"$ref": "#/definitions/DiskSize"}, "in": "body", "description": "is disk  full", "name": "body"}], "produces": ["application/json"], "tags": ["checkdisk"], "summary": "check if disk space is critical", "consumes": ["application/json"], "operationId": "checkdisk"}}, "/api/v1/checkpithos": {"get": {"responses": {"200": {"description": "OK", "schema": {"$ref": "#/definitions/PithosUp"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/PithosUp"}}}, "description": "checks if pithos is up and responds", "parameters": [{"schema": {"$ref": "#/definitions/PithosUp"}, "in": "body", "description": "is pithos up", "name": "body"}], "produces": ["application/json"], "tags": ["checkpithos"], "summary": "check if pithos is up", "consumes": ["application/json"], "operationId": "checkpithos"}}, "/debug/logs": {"put": {"responses": {"200": {"description": "The newly active log level", "schema": {"$ref": "#/definitions/LogLevel"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "description": "Changes the log level", "parameters": [{"schema": {"$ref": "#/definitions/LogLevel"}, "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["debug"], "consumes": ["application/json"], "operationId": "changeLogLevel"}, "get": {"responses": {"200": {"description": "joy", "schema": {"$ref": "#/definitions/LogLevel"}}, "400": {"description": "Bad request", "schema": {"$ref": "#/definitions/ApiResponse"}}}, "produces": ["application/json"], "description": "Retrieves the currently active log level", "tags": ["debug"], "consumes": ["application/json"], "operationId": "getLogLevel"}}}, "tags": [{"name": "overlay"}], "basePath": "/sftp", "definitions": {"LogLevel": {"type": "object", "properties": {"level": {"enum": ["DEBUG", "INFO", "WARNING", "ERROR", "PANIC"], "type": "string", "description": "The log level [DEBUG,INFO,WARNING,ERROR,PANIC]"}}}, "PithosUp": {"type": "object", "properties": {"level": {"enum": ["WARNING", "CRITICAL", "OK"], "type": "string", "description": "Pithos is up or down"}}}, "ApiResponse": {"type": "object", "properties": {"message": {"type": "string"}, "code": {"type": "string"}, "level": {"type": "string"}}}, "CleanUp": {"type": "object", "properties": {"sizethreshold": {"type": "number", "description": "The size threshold in MB for cleanup of backup directory", "format": "double"}}}, "DiskSize": {"type": "object", "properties": {"level": {"enum": ["WARNING", "CRITICAL", "OK"], "type": "string", "description": "Disk space is filled up"}}}, "KafkaUp": {"type": "object", "properties": {"level": {"enum": ["WARNING", "CRITICAL", "OK"], "type": "string", "description": "Kafka is up or down"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_shelf_level_view.json b/tapi/resources/MCP_4.0.0_shelf_level_view.json
deleted file mode 100644
index 4e83fb8669d49940d689d0b61c8f5a24d1d1fe22..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_shelf_level_view.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Retrieve the Shelf Level graphics layout for equipment", "title": "Shelf level view"}, "paths": {"/slv-support/api/v1/equipmentLayouts": {"get": {"responses": {"200": {"description": "Successfully retrieved the requested list of equipment layout.", "schema": {"$ref": "#/definitions/EquipmentLayoutListRO"}}, "500": {"description": "Failed to retrieve the requested list of equipment layout.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "List of Equipment layout returned in JSON format", "parameters": [{"description": "(Optional) Site identifier", "required": false, "type": "string", "name": "siteId", "in": "query"}, {"description": "(Optional) Network construct identifier", "required": false, "type": "string", "name": "ncId", "in": "query"}, {"description": "(Optional) Resource Type", "required": false, "type": "string", "name": "resourceType", "in": "query"}, {"required": false, "type": "string", "name": "ipAddress", "in": "query"}], "produces": ["application/json"], "tags": ["slv-supportapiv1equipmentLayout"], "summary": "Retrieves equipment layouts for requested resource type.", "operationId": "getEquipmentLayout"}}, "/slv-support/api/v1/equipmentGraphics": {"get": {"responses": {"200": {"description": "Successfully retrieved the requested list of equipment graphics.", "schema": {"$ref": "#/definitions/EquipmentGraphicListRO"}}, "500": {"description": "Failed to retrieve the requested list of equipment graphics.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>List of equipment graphics returned in JSON format.<p>At least one of the following parameters must be specified:<ul><li>ncId<li>siteId</ul>", "parameters": [{"description": "(Optional) Site identifier", "required": false, "type": "string", "name": "siteId", "in": "query"}, {"description": "(Optional) Network Construct identifier", "required": false, "type": "string", "name": "ncId", "in": "query"}, {"required": false, "type": "string", "name": "ipAddress", "in": "query"}], "produces": ["application/json"], "tags": ["slv-supportapiv1equipmentGraphics"], "summary": "Retrieves equipment graphics satisfying input parameters", "operationId": "getEquipmentGraphic"}}, "/slv-support/api/v1/shelfGraphics": {"get": {"responses": {"200": {"description": "Successfully retrieved the requested list of shelf graphics.", "schema": {"$ref": "#/definitions/ShelfGraphicListRO"}}, "500": {"description": "Failed to retrieve the requested list of shelf graphics.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "<p>List of shelf graphics returned in JSON format.<p>At least one of the following parameters must be specified:<ul><li>ncId<li>siteId</ul>", "parameters": [{"description": "(Optional) Site identifier", "required": false, "type": "string", "name": "siteId", "in": "query"}, {"description": "(Optional) Network construct identifier", "required": false, "type": "string", "name": "ncId", "in": "query"}, {"required": false, "type": "string", "name": "ipAddress", "in": "query"}], "produces": ["application/json"], "tags": ["slv-supportapiv1shelfGraphics"], "summary": "Retrieves shelf graphics to satisfy input parameters", "operationId": "getShelfGraphic"}}, "/slv-support/api/v1/shelfLayouts": {"get": {"responses": {"200": {"description": "Successfully retrieved the requested list of shelf layout.", "schema": {"$ref": "#/definitions/ShelfLayoutListRO"}}, "500": {"description": "Failed to retrieve the requested list of shelf layout.", "schema": {"$ref": "#/definitions/ErrorsRO"}}, "400": {"description": "Invalid value specified for a query parameter", "schema": {"$ref": "#/definitions/ErrorsRO"}}}, "description": "List of Shelf layout returned in JSON format", "parameters": [{"description": "(Optional) Site identifier", "required": false, "type": "string", "name": "siteId", "in": "query"}, {"description": "(Optional) Network construct identifier", "required": false, "type": "string", "name": "ncId", "in": "query"}, {"description": "(Optional) Resource Type", "required": false, "type": "string", "name": "resourceType", "in": "query"}, {"required": false, "type": "string", "name": "ipAddress", "in": "query"}], "produces": ["application/json"], "tags": ["slv-supportapiv1shelfLayouts"], "summary": "Retrieves shelf layouts for requested resource type.", "operationId": "getShelfLayout"}}}, "schemes": ["http", "https"], "tags": [{"name": "slv-supportapiv1equipmentGraphics", "description": "Manage the retrieval of equipment graphics"}, {"name": "slv-supportapiv1equipmentLayout", "description": "Manage the retrieval of equipment layouts"}, {"name": "slv-supportapiv1shelfGraphics", "description": "Manage the retrieval of shelf graphics"}, {"name": "slv-supportapiv1shelfLayouts", "description": "Manage the retrieval of shelf layouts"}], "basePath": "/", "definitions": {"EquipmentLayoutListRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/EquipmentLayoutDataRO"}, "type": "array"}}}, "SlotLayoutRO": {"type": "object", "properties": {"equipmentHolderType": {"type": "string"}, "equipmentHolders": {"items": {"$ref": "#/definitions/SlotLayoutRO"}, "type": "array"}, "layoutId": {"type": "string"}, "labels": {"items": {"$ref": "#/definitions/LabelRO"}, "type": "array"}, "imageFile": {"type": "string"}, "location": {"$ref": "#/definitions/CoordinateRO"}, "equipmentRotation": {"type": "number", "format": "double"}, "id": {"type": "string"}, "dimensions": {"$ref": "#/definitions/DimensionRO"}}}, "AdditionalAttributesRO": {"type": "object"}, "OneToOneRelationshipRO": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"$ref": "#/definitions/RelationshipDataRO"}}}, "EquipmentGraphicAttributesRO": {"type": "object", "properties": {"epqId": {"type": "string"}, "siteName": {"type": "string"}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array"}, "displayNameFormat": {"type": "string"}, "ledsInfo": {"items": {"type": "string"}, "type": "array"}, "accessIdentifier": {"type": "string"}, "neName": {"type": "string"}, "description": {"type": "string"}, "layoutId": {"type": "object"}, "pattern": {"type": "string"}, "planningStatus": {"type": "string"}, "slotWidth": {"type": "number", "format": "double"}, "state": {"enum": ["IS", "OOS", "OOS_AUMA"], "type": "string"}, "version": {"type": "string"}, "location": {"$ref": "#/definitions/LocationRO"}, "ncId": {"type": "string"}, "alarmMatchableAID": {"type": "string"}, "eqpType": {"$ref": "#/definitions/EquipmentLayoutRO"}, "slotHeight": {"type": "number", "format": "double"}, "cardType": {"type": "object"}, "siteId": {"type": "string"}, "inventoryEquipmentId": {"type": "string"}, "nativeName": {"type": "string"}, "availabilityState": {"enum": ["PLANNED", "AVAILABLE", "UNVALIDATED", "INUSE"], "type": "string"}, "additionalAttributes": {"$ref": "#/definitions/AdditionalAttributesRO"}, "groupId": {"type": "string"}, "serialNumber": {"type": "string"}, "subEquipmentGraphics": {"items": {"$ref": "#/definitions/EquipmentGraphicRO"}, "type": "array"}, "partNumber": {"type": "string"}}}, "LocationIndexesRO": {"type": "object"}, "ErrorSourceRO": {"type": "object", "properties": {"parameter": {"type": "string"}, "pointer": {"type": "string"}}}, "EquipmentLayoutRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/EquipmentLayoutDataRO"}}}, "ShelfGraphicRelationshipsRO": {"type": "object", "properties": {"shelfLayout": {"$ref": "#/definitions/OneToOneRelationshipRO"}, "equipmentGraphics": {"$ref": "#/definitions/OneToManyRelationshipRO"}}}, "EquipmentLayoutDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/EquipmentLayoutRelationshipsRO"}, "attributes": {"$ref": "#/definitions/EquipmentLayoutAttributesRO"}, "type": {"enum": ["EQUIPMENT_LAYOUTS"], "type": "string"}, "id": {"type": "string"}}}, "EquipmentGraphicRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/EquipmentGraphicDataRO"}}}, "EquipmentGraphicDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/EquipmentGraphicRelationshipsRO"}, "attributes": {"$ref": "#/definitions/EquipmentGraphicAttributesRO"}, "type": {"enum": ["EQUIPMENT_GRAPHICS"], "type": "string"}, "id": {"type": "string"}}}, "ErrorRO": {"type": "object", "properties": {"source": {"$ref": "#/definitions/ErrorSourceRO"}, "code": {"type": "string"}, "detail": {"type": "string"}, "title": {"type": "string"}}}, "GeoLocationRO": {"type": "object", "properties": {"latitude": {"type": "string"}, "longitude": {"type": "string"}, "zone": {"type": "string"}}}, "LabelRO": {"type": "object", "properties": {"dimensions": {"$ref": "#/definitions/DimensionRO"}, "text": {"type": "string"}, "imageFile": {"type": "string"}, "fontSize": {"type": "number", "format": "double"}, "location": {"$ref": "#/definitions/CoordinateRO"}, "labelOffset": {"$ref": "#/definitions/CoordinateRO"}, "border": {"default": false, "type": "boolean"}}}, "ShelfLayoutListRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/ShelfLayoutDataRO"}, "type": "array"}}}, "CoordinateRO": {"type": "object", "properties": {"coordinateNvp": {"$ref": "#/definitions/CoordinateNvp"}}}, "RelationshipMetaDataRO": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean"}}}, "ShelfGraphicListRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/ShelfGraphicDataRO"}, "type": "array"}}}, "SubshelfLayoutRO": {"type": "object", "properties": {"dimensions": {"$ref": "#/definitions/DimensionRO"}, "pattern": {"type": "string"}, "subshelves": {"items": {"$ref": "#/definitions/SubshelfLayoutRO"}, "type": "array"}, "subshelfStrokeWidth": {"type": "number", "format": "double"}, "label": {"type": "string"}, "imageFile": {"type": "string"}, "location": {"$ref": "#/definitions/CoordinateRO"}, "ports": {"items": {"$ref": "#/definitions/PortLayoutRO"}, "type": "array"}, "subshelfType": {"type": "string"}, "fill": {"type": "string"}, "id": {"type": "string"}, "equipmentHolders": {"items": {"$ref": "#/definitions/SlotLayoutRO"}, "type": "array"}}}, "LocationRO": {"type": "object", "properties": {"mplsLabel": {"type": "string"}, "interfaceIp": {"type": "string"}, "baynum": {"type": "string"}, "mcId": {"type": "string"}, "fiberPairTermination": {"type": "string"}, "frequency": {"type": "string"}, "subshelf": {"type": "string"}, "wavelength": {"type": "string"}, "ringId": {"type": "string"}, "eqptGrp": {"type": "string"}, "port": {"type": "string"}, "leg": {"enum": ["trunk", "a1", "a2"], "type": "string"}, "slot": {"type": "string"}, "index": {"type": "string"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string"}, "vce": {"type": "string"}, "fic": {"type": "string"}, "subport": {"type": "string"}, "neName": {"type": "string"}, "logicalPortName": {"type": "string"}, "protectionRole": {"enum": ["primary", "backup"], "type": "string"}, "lagName": {"type": "string"}, "instance": {"type": "string"}, "locationIndex": {"items": {"$ref": "#/definitions/LocationIndexesRO"}, "type": "array"}, "odu2_index": {"type": "string"}, "rapsVid": {"type": "string"}, "iclName": {"type": "string"}, "channel": {"type": "string"}, "nmcId": {"type": "string"}, "direction": {"enum": ["tx", "rx"], "type": "string"}, "mgmtNmcId": {"type": "string"}, "peerIp": {"type": "string"}, "shelf": {"type": "string"}, "peerAs": {"type": "integer", "format": "int64"}, "vlan": {"type": "string"}, "oduCn_index": {"type": "string"}, "lspName": {"type": "string"}, "virtualRingName": {"type": "string"}, "logicalId": {"type": "string"}, "mgmtMcId": {"type": "string"}, "primaryLspName": {"type": "string"}, "interfaceName": {"type": "string"}, "odu4_index": {"type": "string"}, "subsubslot": {"type": "string"}, "managementType": {"enum": ["tl1", "saos", "netconf", "rest", "corba", "submarineConf"], "type": "string"}, "sncId": {"type": "string"}, "eth_index": {"type": "string"}, "pseudoWireId": {"type": "string"}, "srcIp": {"type": "string"}, "pseudoWireName": {"type": "string"}, "rack": {"type": "string"}, "subslot": {"type": "string"}}}, "DimensionRO": {"type": "object", "properties": {"dimensionNvp": {"$ref": "#/definitions/DimensionNvp"}}}, "ErrorsRO": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/ErrorRO"}, "type": "array"}}}, "LEDLayoutRO": {"type": "object", "properties": {"dimensions": {"$ref": "#/definitions/DimensionRO"}, "label": {"type": "string"}, "imageFile": {"type": "string"}, "location": {"$ref": "#/definitions/CoordinateRO"}, "ledType": {"type": "string"}, "ledShape": {"type": "string"}, "id": {"type": "string"}}}, "RelationshipDataRO": {"type": "object", "properties": {"type": {"type": "string"}, "id": {"type": "string"}}}, "PortLayoutRO": {"type": "object", "properties": {"hideLabel": {"default": false, "type": "boolean"}, "dimensions": {"$ref": "#/definitions/DimensionRO"}, "imageFileEmpty": {"type": "string"}, "pattern": {"type": "string"}, "label": {"type": "string"}, "location": {"$ref": "#/definitions/CoordinateRO"}, "imageFileFilled": {"type": "string"}, "labelOffset": {"$ref": "#/definitions/CoordinateRO"}, "connectorType": {"type": "string"}, "id": {"type": "string"}}}, "EquipmentGraphicRelationshipsRO": {"type": "object", "properties": {"subEquipmentGraphics": {"$ref": "#/definitions/OneToManyRelationshipRO"}, "equipmentLayout": {"$ref": "#/definitions/OneToOneRelationshipRO"}}}, "DimensionNvp": {"type": "object", "properties": {"width": {"type": "number", "format": "double"}, "depth": {"type": "number", "format": "double"}, "height": {"type": "number", "format": "double"}}}, "EquipmentLayoutAttributesRO": {"type": "object", "properties": {"leds": {"items": {"$ref": "#/definitions/LEDLayoutRO"}, "type": "array"}, "useEquipmentAlarmIndicatorBox": {"default": false, "type": "boolean"}, "locationType": {"enum": ["EXTERNAL", "INTERNAL"], "type": "string"}, "isZoomSupported": {"default": false, "type": "boolean"}, "labels": {"items": {"$ref": "#/definitions/LabelRO"}, "type": "array"}, "equipmentType": {"type": "string"}, "imageFile": {"type": "string"}, "equipmentHolders": {"items": {"$ref": "#/definitions/SlotLayoutRO"}, "type": "array"}, "fill": {"type": "string"}, "showPortBorders": {"default": false, "type": "boolean"}, "ports": {"items": {"$ref": "#/definitions/PortLayoutRO"}, "type": "array"}, "equipmentSubtype": {"type": "string"}, "dimensions": {"$ref": "#/definitions/DimensionRO"}}}, "ShelfGraphicDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/ShelfGraphicRelationshipsRO"}, "attributes": {"$ref": "#/definitions/ShelfGraphicAttributesRO"}, "type": {"enum": ["SHELF_GRAPHICS"], "type": "string"}, "id": {"type": "string"}}}, "ShelfLayoutDataRO": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/ShelfLayoutRelationshipsRO"}, "attributes": {"$ref": "#/definitions/ShelfLayoutAttributesRO"}, "type": {"enum": ["SHELF_LAYOUTS"], "type": "string"}, "id": {"type": "string"}}}, "ShelfGraphicAttributesRO": {"type": "object", "properties": {"equipmentGraphics": {"items": {"$ref": "#/definitions/EquipmentGraphicRO"}, "type": "array"}, "siteName": {"type": "string"}, "locations": {"items": {"$ref": "#/definitions/LocationRO"}, "type": "array"}, "accessIdentifier": {"type": "string"}, "neName": {"type": "string"}, "layoutId": {"type": "object"}, "pattern": {"type": "string"}, "combinedAlarmPatternOfMemberShelves": {"type": "object"}, "planningStatus": {"type": "string"}, "state": {"enum": ["IS", "OOS", "OOS_AUMA"], "type": "string"}, "version": {"type": "string"}, "ncId": {"type": "string"}, "managementSessionNcId": {"type": "string"}, "contactStatus": {"type": "string"}, "description": {"type": "string"}, "siteId": {"type": "string"}, "inventoryEquipmentId": {"type": "string"}, "additionalAttributes": {"$ref": "#/definitions/AdditionalAttributesRO"}, "geoLocation": {"$ref": "#/definitions/GeoLocationRO"}, "resourceType": {"type": "string"}, "serialNumber": {"type": "string"}, "partNumber": {"type": "string"}}}, "CoordinateNvp": {"type": "object", "properties": {"y": {"type": "number", "format": "double"}, "x": {"type": "number", "format": "double"}, "z": {"type": "number", "format": "double"}}}, "EquipmentLayoutRelationshipsRO": {"type": "object"}, "OneToManyRelationshipRO": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/RelationshipMetaDataRO"}, "data": {"items": {"$ref": "#/definitions/RelationshipDataRO"}, "type": "array"}}}, "EquipmentGraphicListRO": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/EquipmentGraphicDataRO"}, "type": "array"}}}, "ShelfLayoutAttributesRO": {"type": "object", "properties": {"normalScale": {"type": "number", "format": "double"}, "dimensions": {"$ref": "#/definitions/DimensionRO"}, "containsAlarmResourceId": {"default": false, "type": "boolean"}, "isZoomSupported": {"default": false, "type": "boolean"}, "subshelves": {"items": {"$ref": "#/definitions/SubshelfLayoutRO"}, "type": "array"}, "shelfType": {"type": "string"}, "label": {"type": "string"}, "imageFile": {"type": "string"}, "equipmentHolders": {"items": {"$ref": "#/definitions/SlotLayoutRO"}, "type": "array"}, "containsPatternDelimitter": {"type": "string"}, "rearSubshelves": {"items": {"$ref": "#/definitions/SubshelfLayoutRO"}, "type": "array"}, "partNumber": {"type": "string"}, "ports": {"items": {"$ref": "#/definitions/PortLayoutRO"}, "type": "array"}, "showIndependentNames": {"default": false, "type": "boolean"}}}, "ShelfLayoutRelationshipsRO": {"type": "object"}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_srlg.json b/tapi/resources/MCP_4.0.0_srlg.json
deleted file mode 100644
index c30fd5b45f873b73e51f105e30f35b9b31dde728..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_srlg.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Modification and deletion of SRLG", "title": "SRLG"}, "paths": {"/ifd/api/v2/srlg/{srlgValue}": {"get": {"responses": {"200": {"description": "succeed", "schema": {"$ref": "#/definitions/SrlgResourceResponseV2"}}, "404": {"description": "FRE not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "SRLG values on the fre", "required": true, "type": "string", "name": "srlgValue", "in": "path"}], "produces": ["application/json"], "tags": ["SRLG v2"], "summary": "Get Fre by SRLG value", "consumes": ["application/json"], "operationId": "getResourcesFromSrlgValue"}}, "/ifd/api/v1/srlg": {"put": {"responses": {"200": {"description": "SRLG updated"}, "404": {"description": "ROADMLINE not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<h3>Description of the Schema:</h3><p>This schema is intended for manual input of SRLG(s).  Minimally following attributes need to be provided.</p><br/><p><strong>resourceId:</strong>  FreId of the roadmline<br/><strong>resourceType:</strong> Fre<br/><strong>resourceName:</strong>  userLabel of the roadmline<br/>[<strong>Note:</strong> Either resourceId or resourceName should be provided. If both are present they will cause failure due to ambiguity.]<br/><strong>srlgSet:</strong> Is an object of plannedStartDate and list of srlgValues. If plannedStartDate is not provided IFD will default it to current date. The date format is ie. \u201cYYYY-MM-DDTHH:MM:SS.SSSZ\u201d</p><br/><p>Here is an example request:</p><pre style='font-size: smaller'><code class='json'>{\n  \"data\": {\n    \"attributes\": {\n      \"resourceName\": \"1 DWDMU PV0754A111 PV0754B111\",\n      \"resourceType\": \"Fre\",\n      \"srlgSet\": [\n        {\n          \"srlgValues\": [\n            \"10234\",\n            \"20567\"\n          ],\n          \"plannedStartDate\": \"2019-11-19T11:37:29.739Z\"\n        }\n      ]\n    }\n  }\n}\n</code></pre>", "parameters": [{"schema": {"$ref": "#/definitions/SrlgIntentRequest"}, "description": "SRLG request", "required": false, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["SRLG v1"], "summary": "Updates SRLG on roadm lines", "consumes": ["application/json"], "operationId": "putSRLG"}}, "/ifd/api/v2/srlg": {"put": {"responses": {"200": {"description": "SRLG updated"}, "404": {"description": "Entity not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<h3>Description of the Schema:</h3><p>This schema is intended for manual input of SRLG(s).  Minimally following attributes need to be provided.</p><br/><p><strong>resourceId:</strong>  Id of the resource<br/><strong>resourceType:</strong> fres <br/><strong>srlgSet:</strong> Is an object of plannedStartDate and manual srlg object. The date format is ie. \u201cYYYY-MM-DDTHH:MM:SS.SSSZ\u201d</p><br/><p>Here is an example request:</p>\n```json\n{\n  \"data\": {\n    \"attributes\": {\n      \"resourceId\": \"2000925292613460342\",\n      \"resourceType\": \"fres\",\n      \"srlgSet\": [\n        {\n          \"manual\": {\n            \"srlgStructuredValues\": [\n              {\n                \"subNetwork\": \"NewYorkRegion\",\n                \"riskType\": \"Conduit\",\n                \"riskValue\": 80023\n              }\n            ]\n          }\n        },\n        {\n          \"plannedStartDate\": \"2018-09-26T10:30:01.607413Z\",\n          \"manual\": {\n            \"srlgValues\": [\n              \"59520495\"\n            ]\n          }\n        }\n      ]\n    }\n  }\n}", "parameters": [{"schema": {"$ref": "#/definitions/SrlgIntentRequestV2"}, "description": "SRLG request", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["SRLG v2"], "summary": "Updates SRLG on given resource", "consumes": ["application/json"], "operationId": "putSRLG"}, "get": {"responses": {"200": {"description": "succeed", "schema": {"$ref": "#/definitions/SrlgIntentRequestV2"}}, "404": {"description": "SRLG not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Id of the Resource", "required": true, "type": "string", "name": "resourceId", "in": "query"}, {"description": "Resource Type: fres, networkConstructs, equipment values.", "required": true, "type": "string", "name": "resourceType", "in": "query"}, {"description": "Is Structured: Y or N", "required": false, "type": "string", "name": "isStructured", "in": "query"}, {"description": "Fetch SRLG set on the basis of time.", "required": false, "type": "string", "name": "plannedStartTime", "in": "query"}, {"description": "auto, manual, inherited, combined, propagated and discovered set.", "required": false, "type": "string", "name": "srlgType", "in": "query"}], "produces": ["application/json"], "tags": ["SRLG v2"], "summary": "Get SRLG by ID", "consumes": ["application/json"], "operationId": "getSRLG"}}, "/ifd/api/v1/srlg/{resourceId}": {"get": {"responses": {"200": {"description": "succeed", "schema": {"$ref": "#/definitions/SrlgIntentRequest"}}, "404": {"description": "SRLG not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "FreId of the Roadmline", "required": true, "type": "string", "name": "resourceId", "in": "path"}], "produces": ["application/json"], "tags": ["SRLG v1"], "summary": "Get SRLG by ID", "consumes": ["application/json"], "operationId": "getSRLG"}}, "/ifd/api/srlg": {"put": {"responses": {"200": {"description": "SRLG updated"}, "404": {"description": "Entity not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<h3>Description of the Schema:</h3><p>This schema is intended for manual input of SRLG(s).  Minimally following attributes need to be provided.</p><br/><p><strong>resourceId:</strong>  Id of the resource<br/><strong>resourceType:</strong> fres, networkConstructs, equipment <br/><strong>srlgSet:</strong> Is an object of plannedStartDate and manual srlg object. The date format is ie. \u201cYYYY-MM-DDTHH:MM:SS.SSSZ\u201d</p><br/><p>Here is an example request:</p>\n```json\n{\n  \"data\": {\n    \"attributes\": {\n      \"resourceId\": \"2000925292613460342\",\n      \"resourceType\": \"fres\",\n      \"srlgSet\": [\n        {\n          \"manual\": {\n            \"srlgStructuredValues\": [\n              {\n                \"subNetwork\": \"NewYorkRegion\",\n                \"riskType\": \"Conduit\",\n                \"riskValue\": 80023\n              }\n            ]\n          }\n        },\n        {\n          \"plannedStartDate\": \"2018-09-26T10:30:01.607413Z\",\n          \"manual\": {\n            \"srlgValues\": [\n              \"59520495\"\n            ]\n          }\n        }\n      ]\n    }\n  }\n}", "parameters": [{"schema": {"$ref": "#/definitions/SrlgIntentRequestV2"}, "description": "SRLG request", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["SRLG"], "summary": "Updates SRLG on given resource", "consumes": ["application/json"], "operationId": "putSRLG"}, "get": {"responses": {"200": {"description": "succeed", "schema": {"$ref": "#/definitions/SrlgIntentRequestV2"}}, "404": {"description": "SRLG not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Id of the Resource", "required": true, "type": "string", "name": "resourceId", "in": "query"}, {"description": "Resource Type: fres, networkConstructs, equipment values.", "required": true, "type": "string", "name": "resourceType", "in": "query"}, {"description": "Is Structured: Y or N", "required": false, "type": "string", "name": "isStructured", "in": "query"}, {"description": "Fetch SRLG set on the basis of time.", "required": false, "type": "string", "name": "plannedStartTime", "in": "query"}, {"description": "auto, manual, inherited, combined, propagated and discovered set.", "required": false, "type": "string", "name": "srlgType", "in": "query"}], "produces": ["application/json"], "tags": ["SRLG"], "summary": "Get SRLG by ID", "consumes": ["application/json"], "operationId": "getSRLG"}}, "/ifd/api/srlg/{srlgValue}": {"get": {"responses": {"200": {"description": "succeed", "schema": {"$ref": "#/definitions/SrlgResourceResponseV2"}}, "404": {"description": "FRE not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "SRLG values on the fre", "required": true, "type": "string", "name": "srlgValue", "in": "path"}], "produces": ["application/json"], "tags": ["SRLG"], "summary": "Get Fre by SRLG value", "consumes": ["application/json"], "operationId": "getResourcesFromSrlgValue"}}}, "schemes": ["http", "https"], "tags": [{"name": "SRLG", "description": "Storing/Retrieving of SRLG information on fres/networkConstructs/equipment"}, {"name": "SRLG v1", "description": "storing of SRLG information on roadmlines"}, {"name": "SRLG v2", "description": "Storing/Retrieving of SRLG information on fres/networkConstructs/equipment"}], "basePath": "/", "definitions": {"AdditionalAttributes": {"type": "object"}, "ResiliencyHandlingPackage": {"type": "object", "properties": {"direction": {"enum": ["Tx", "Rx"], "type": "string", "description": "the direction of the resiliency service"}, "edges": {"items": {"$ref": "#/definitions/ResiliencyHandlingEdge"}, "type": "array", "description": "hold the pairs of ID of the CTPs from the physical view and its client PTP ID, for the eFRE endpoints."}, "layerRateStack": {"items": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string"}, "type": "array", "description": "ordered list of layerRates"}, "commonEdgeTpeId": {"type": "string", "description": "the ID of the common CTP in the physical view"}}}, "MbbHistoryEntry": {"type": "object", "properties": {"reason": {"type": "string", "description": "Reason of the make-before-break"}, "endTime": {"type": "string", "description": "End time of the make-before-break happened"}, "result": {"type": "string", "description": "Result of the make-before-break"}, "startTime": {"type": "string", "description": "Start time of the make-before-break happened"}}}, "Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "Capacity": {"type": "object", "properties": {"layer": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "capacity": {"type": "integer", "description": "Number of potential client instances or usage instances", "format": "int32"}, "capacityCalculationRule": {"type": "string", "description": "Core logic that will be used on capacity calculation"}, "source": {"type": "string", "description": "Source of the capacity"}, "capacitySize": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacitySize"}, "maxLimit": {"type": "integer", "description": "Maximum potential client instances", "format": "int32"}, "capacityClass": {"enum": ["discrete", "continuous"], "type": "string", "description": "Discrete \u2013 b/w space is treated as a list of discrete values; this is default. Continuous \u2013 b/w space is treated as continuous segment, in the range of low/upper."}}}, "PhotonicSpectrumPackage": {"type": "object", "properties": {"minFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the previous NMC."}, "signalBandWidth10DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 10 dBm less than peak power."}, "maxFreqDeadBand": {"type": "string", "description": "Upper dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "targetMinFreq": {"type": "string", "description": "Allows the automatic adjustment of the MINFREQ when any associated NMCTP are deleted. Default is MINFREQ (no target lower frequency)."}, "signalBandWidth3DB": {"type": "string", "description": "Captures Tx Signal Bandwidth in GHz measured at 3 dBm less than peak power."}, "minFreqDeadBand": {"type": "string", "description": "Lower dead band in GHz. The dead band will be in format of 'xxxx.xxx'."}, "maxFreqGuardBand": {"type": "string", "description": "Indicates the minimum required frequency spacing for the next NMC."}, "frequency": {"type": "string", "description": "The central signal frequency."}, "freqResolution": {"type": "string", "description": "Indicates the recurring frequency step that is allowed to be configured on the transponder."}, "maxFreq": {"type": "string", "description": "The maximum signal frequency."}, "targetMaxFreq": {"type": "string", "description": "Allows the automatic adjustment of the MAXFREQ when any associated NMCTP are deleted. Default is MAXFREQ (no target upper frequency)."}, "wavelength": {"type": "string", "description": "The central signal wavelength."}, "wavelengthGrid ": {"type": "string", "description": "A hexadecimal number representing the vector of wavelengths that can be used by this SNC. Each bit set within the number indicates which wavelength is currently configured"}, "minFreq": {"type": "string", "description": "The minimum signal frequency."}}}, "Fre": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array", "description": "Resources related to a FRE, such as FreData, EndPointData, TpeData, EquipmentData, EquipmentHolderData, FrePlannedData, FreExpectationData, FreDiscoveredData, ResiliencyControllerData, EncapsulatedResiliencyData"}, "data": {"$ref": "#/definitions/FreData"}, "links": {"description": "Links related to the resource", "$ref": "#/definitions/Links"}}}, "Bfd": {"type": "object", "properties": {"transmitInterval": {"type": "string", "description": "The interval between transmitting BFD messages"}, "configured": {"default": false, "type": "boolean", "description": "True when BFD is enabled on this endpoint"}, "receiveInterval": {"type": "string", "description": "The interval between receiving BFD messages"}, "adminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of BFD for this endpoint"}, "role": {"enum": ["passive", "active", "any"], "type": "string", "description": "The role of BFD for this endpoint"}, "profileName": {"type": "string", "description": "The profile name associated with this set of BFD attributes"}, "operationalState": {"enum": ["up", "down"], "type": "string", "description": "The operational state of BFD for this endpoint"}}}, "FreDisplayData": {"type": "object", "properties": {"sncgUserlabel": {"type": "string", "description": "For ControlPlane SNCs only, the userlabel of the parent SNC group"}, "displayPhotonicSpectrumData": {"items": {"$ref": "#/definitions/FreDisplayPhotonicSpectrumData"}, "type": "array"}, "displayTopologySource": {"type": "string", "description": "The source of the FRE"}, "intentDeploymentStateString": {"enum": ["NOT_APPLICABLE", "IN_PROGRESS", "FAILED", "IN_THE_NETWORK", "NETWORK_MISMATCH_DETECTED", "PROPERTY_MISMATCH"], "type": "string", "description": "Represents the deployment state of the service intent through its life cycle"}, "operationState": {"type": "string", "description": "Represents the total traffic carrying capability of the FRE. Relates to flow of traffic across the FRE between endpoints."}, "adminState": {"type": "string", "description": "Indicates the administrative state of the FRE, including whether traffic has been enabled and whether the FRE should be used by clients. It is derived from the state(s) of terminating TPE(s). Disabled means that FRE is prevented from carrying traffic. Enabled means that FRE is allowed to carry traffic."}, "frequency": {"type": "string", "description": "The frequency value for one of the underlying Endpoints"}, "displayDeploymentState": {"enum": ["SCHEDULED", "NETWORK_MISMATCH_DETECTED", "PROPERTY_MISMATCH", "DEPLOYED", "DISCOVERED", "DEPLOYING", "MONITORING", "DEPLOYMENT_FAILED", "DELETING", "DELETE_FAILED"], "type": "string", "description": "Represents the stage that the FRE is at in the construction/deployment/discovery life cycle"}, "intentLifeCyclePhaseString": {"enum": ["SCHEDULED", "DEPLOYING", "DEPLOYED", "DELETING", "DISCOVERED"], "type": "string", "description": "Represents the different phases of the service intent through its life cycle"}, "wavelength": {"type": "string", "description": "The corresponding wavelength value for the frequency attribute"}, "channel": {"type": "string", "description": "The corresponding channel number for the frequency attribute"}}}, "MplsFrr": {"type": "object", "properties": {"frrProtected": {"default": false, "type": "boolean", "description": "If true, the tunnel is protected by fast re-route (FRR) on the headend TX MPLS CTP"}, "profileName": {"type": "string", "description": "The FRR profile name on the headend TX MPLS CTP"}, "localProtection": {"description": "Holds MPLS FRR local protection attributes for TX MPLS CTP", "$ref": "#/definitions/MplsFrrLocalProtection"}, "actualProtectionRoute": {"items": {"$ref": "#/definitions/MplsFrrProtectionRouteHop"}, "type": "array", "description": "Actual FRR protection route on the headend TX MPLS CTP"}}}, "RelationshipMetaData": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean", "description": "Flags whether the included relationship object is partially populated or not"}}}, "Note": {"type": "object", "properties": {"noteMsg": {"type": "string", "description": "The message left on the note left by the user"}, "lastUpdatedBy": {"type": "string", "description": "The name of the user that last edited the note"}, "lastUpdatedTime": {"type": "string", "description": "The time the note was last updated"}}}, "SRLGOneToManyRelationship": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/SRLGData"}, "type": "array", "description": "The SRLG one-to-many relationship"}}}, "MplsPackage": {"type": "object", "properties": {"prevHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the previous hop of this MPLS tunnel"}, "subType": {"enum": ["TP", "TE"], "type": "string", "description": "TP refers to Transport Profile; TE refers to Traffic Engineering"}, "aisSessionAdminState": {"enum": ["up", "down"], "type": "string", "description": "The administrative state of the AIS session for this MPLS tunnel"}, "mbbHistory": {"items": {"$ref": "#/definitions/MbbHistoryEntry"}, "type": "array"}, "shareSrlg": {"items": {"type": "string"}, "type": "array", "description": "A list of share SRLG values used by dynamic tunnel during provisioning."}, "TxTag": {"type": "string", "description": "The label used for traffic egressing from this endpoint"}, "facilityBypass": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is facility-bypass (FB) tunnel"}, "nextHopIp": {"type": "string", "description": "The interface address (on 6200, MAC address) of the next hop of this MPLS tunnel"}, "stickyLsp": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating a dynamic tunnel stays on the same path after change in required resources. Applicable to dynamic coRouted tunnels only."}, "tunnelType": {"enum": ["rsvp_ingress_corout", "rsvp_egress_corout", "rsvp_transit_corout", "static_ingress_corout", "static_egress_corout", "static_transit_corout", "static_ingress_unidir", "static_egress_unidir", "static_transit_unidir", "rsvp_ingress_unidir", "rsvp_transit_unidir", "static_ingress_assoc", "rsvp_ingress", "rsvp_transit", "rsvp_egress"], "type": "string", "description": "Tunnel type (static/dynamic, ingress/egress, corouted/unidrectional)"}, "bfd": {"description": "Holds BFD attributes for one LER TPE endpoint", "$ref": "#/definitions/Bfd"}, "optimization": {"enum": ["on", "off"], "type": "string", "description": "A flag indicating if tunnel optimization should be attempted by the control-plane"}, "destTunnelId": {"type": "string", "description": "The ID of the far end of this MPLS tunnel"}, "fb": {"description": "MPLS FB tunnel attributes", "$ref": "#/definitions/MplsFb"}, "destIp": {"type": "string", "description": "The IP-data interface address of the far end of this MPLS tunnel"}, "fwdIn": {"type": "string", "description": "The inward ID in the forward direction (transit)"}, "localIfNamePrevHop": {"type": "string", "description": "The local interface name of the previous hop of this MPLS tunnel (6200 only)"}, "localIfNameNextHop": {"type": "string", "description": "The local interface name of the next hop of this MPLS tunnel (6200 only)"}, "frrSignaling": {"enum": ["on", "off"], "type": "string", "description": "Deprecated by frr package and will be removed later. Flag for fast re-route capability"}, "colorGroup": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "direction": {"enum": ["bidirectional", "ingress", "egress", "unidirectional"], "type": "string", "description": "Tunnel direction. Use value bidirectional or unidirectional only and TPE attribute stackDirection since ingress and egress are ambiguous"}, "lspId": {"type": "string", "description": "The numeric ID of this MPLS tunnel"}, "srcTunnelId": {"type": "string", "description": "The ID of the near end of this MPLS tunnel"}, "aisProfileName": {"type": "string", "description": "The name of the Alarm Indication Signal profile for this MPLS tunnel"}, "optimizationInterval": {"type": "integer", "description": "The interval between tunnel optimization attempts", "format": "int32"}, "excludeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "signaled": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is dynamic; otherwise it is static"}, "diversityResource": {"enum": ["unknown", "none", "link", "srlg", "node", "srlg_and_node", "srlg_and_link", "link_and_node", "srlg_or_node", "srlg_and_link_and_node"], "type": "string", "description": "The object upon which to base diversity for the backup tunnel"}, "aisRefreshTimerUnit": {"type": "string", "description": "The units for aisRefreshTimer field"}, "fixedTtl": {"type": "string", "description": "The time-to-live for tunnel hops (1-255)"}, "lspName": {"type": "string", "description": "The name of this MPLS tunnel"}, "autoBackup": {"enum": ["on", "off"], "type": "string", "description": "A flag to signal if auto-backup tunnel creation is on or off"}, "aisRefreshTimer": {"type": "integer", "description": "The interval between each AIS refresh for this MPLS tunnel", "format": "int32"}, "nextHopIfNum": {"type": "string", "description": "The interface number of the next hop of this MPLS tunnel"}, "tunnelRole": {"enum": ["headEnd", "tailEnd", "transit"], "type": "string", "description": "The role at this point in the MPLS tunnel"}, "includeAll": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "prevHopIfNum": {"type": "string", "description": "The interface number of the previous hop of this MPLS tunnel"}, "explicitTunnel": {"description": "Holds data for the explicit tunnel path", "$ref": "#/definitions/TunnelPath"}, "includeAny": {"description": "The color group for a dynamic tunnel endpoint", "$ref": "#/definitions/ColorGroup"}, "diversityLevel": {"enum": ["strict", "maximal"], "type": "string", "description": "The diversity level of backup tunnel creation (maximal meaning best-effort)"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "A list of shared-risk link-group values assigned to this interface"}, "setupPriority": {"type": "string", "description": "The priority of the dynamic tunnel setup (0-7)"}, "revIn": {"type": "string", "description": "The inward ID in the reverse direction (transit)"}, "explicitRouteObject": {"items": {"type": "string"}, "type": "array", "description": "An ordered list of hop-by-hop IP-data interface addresses traversed by this dynamic MPLS tunnel"}, "revOut": {"type": "string", "description": "The outward ID in the reverse direction (transit)"}, "frr": {"description": "MPLS FRR details attributes", "$ref": "#/definitions/MplsFrr"}, "fwdOut": {"type": "string", "description": "The outward ID in the forward direction (transit)"}, "softPreemption": {"enum": ["enable", "disable"], "type": "string", "description": "If true, soft preemption is enabled. Applicable to dynamic TE unidirectional tunnels only."}, "optimizationIntervalUnit": {"type": "string", "description": "The unit for optimizationInterval"}, "RxTag": {"type": "string", "description": "The label used for traffic ingressing to this endpoint"}, "bw": {"description": "Holds bandwidth attributes for a dynamic tunnel endpoint or an IP interface", "$ref": "#/definitions/Bw"}, "holdPriority": {"type": "string", "description": "The priority of the dynamic tunnel steady-state (0-7)"}, "srcIp": {"type": "string", "description": "The IP-data interface address of the near end of this MPLS tunnel"}, "coRouted": {"default": false, "type": "boolean", "description": "If true, this MPLS tunnel is co-routed; otherwise it is associated"}, "frrProfile": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "Deprecated by frr package and will be removed later. The fast re-route profile for this MPLS tunnel"}, "ctrlPlaneId": {"type": "string", "description": "A generated value to uniquely identify a particular tunnel instance"}}}, "FreRelationships": {"type": "object", "properties": {"partitionFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}, "decomposedFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}, "partitionFreAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}, "partitioningFres": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}, "endPoints": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}, "configurationAndSwitchControl": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}, "decomposedFreAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}, "concreteAssociations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}, "encapsulatedResiliency": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationship"}, "composingFre": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationship"}, "freExpectations": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}, "freSwitch": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationship"}, "freDiscovered": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationship"}, "resiliencyController": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationship"}, "networkConstruct": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationship"}, "networkConstructAssociation": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationship"}, "groups": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationship"}, "srlg": {"description": "The SRLGone-to-many relationship", "$ref": "#/definitions/SRLGOneToManyRelationship"}, "frePlanned": {"description": "The one-to-one relationship", "$ref": "#/definitions/OneToOneRelationship"}, "freSwitchList": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}, "concrete": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}, "abstracts": {"description": "The one-to-many relationship", "$ref": "#/definitions/OneToManyRelationship"}}}, "SrlgIntentRequestV2": {"type": "object", "properties": {"data": {"description": "Data container carrying response of SRLG GET request", "$ref": "#/definitions/SrlgIntentRequestDataV2"}}}, "FreDisplayPhotonicSpectrumData": {"type": "object", "properties": {"wavelength": {"type": "string", "description": "The corresponding wavelength value for the frequency attribute"}, "frequency": {"type": "string", "description": "The frequency value for one of the underlying Endpoints"}, "channel": {"type": "string", "description": "The corresponding channel number for the frequency attribute"}}}, "CapacitySize": {"type": "object", "properties": {"pattern": {"description": "Identifies how the capacity size is to be interpreted : LIST is a discrete list of values, RANGE is a range in values etc...", "$ref": "#/definitions/CapacityPattern"}, "unit": {"type": "string", "description": "unit for size string value"}, "size": {"items": {"type": "string"}, "type": "array", "description": "Capacity size to be interpreted with CapacityPattern"}}}, "ExplicitRouteGroup": {"type": "object", "properties": {"groupType": {"enum": ["INCLUSION", "EXCLUSION"], "type": "string", "description": "The resource type"}}}, "SrlgResourceResponseV2": {"type": "object", "properties": {"fres": {"items": {"$ref": "#/definitions/Fre"}, "type": "array"}}}, "RoutingConstraints": {"type": "object", "properties": {"protectionClass": {"enum": ["UNPROTECTED_HIGH", "UNPROTECTED_LOW"], "type": "string", "description": "service class of protection for the SNC."}, "maxCost": {"type": "integer", "description": "Max cost", "format": "int32"}, "maxProtectCost": {"type": "integer", "description": "The maximum allowable weight/cost of the ProtectRoute", "format": "int32"}, "costCriteria": {"enum": ["Delay", "AdminWeight"], "type": "string", "description": "Defines Cost Criteria between admin wt or latency"}, "isGroupingForCoroutingRequired": {"default": false, "type": "boolean", "description": "Specifies if the FRE should be part of a group"}, "routeExclusivity": {"enum": ["Working", "WorkingProtect", "Preferred", "No", "Yes", "Disable"], "type": "string", "description": "Specifies type of route exclusivity"}, "exclusionConstraints": {"$ref": "#/definitions/AssociationObjectAttributes"}, "inclusionConstraints": {"$ref": "#/definitions/AssociationObjectAttributes"}, "homeCostPreference": {"enum": ["Mandatory", "BestEffort", "Disable"], "type": "string", "description": "Available Cost Preferences for home and protect path of SNC"}, "protectCostPreference": {"enum": ["Mandatory", "BestEffort", "Disable"], "type": "string", "description": "Available Cost Preferences for home and protect path of SNC"}, "isRouteExclusive": {"default": false, "type": "boolean", "description": "Route exclusive true/false"}, "identifier": {"type": "string", "description": "The identifier to the decomposed fre"}}}, "OneToOneRelationship": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaData"}, "data": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipData"}}}, "FreResiliencyPackage": {"type": "object", "properties": {"role": {"enum": ["Working", "Protecting"], "type": "string", "description": "the role of the fre"}}}, "LifeCycleRule": {"type": "object", "properties": {"autoDeletedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto deleted by the network and/or device (true) or must it explicitly be created (false)."}, "autoCreatedByNetwork": {"default": false, "type": "boolean", "description": "Indicates if the entity is auto created by the network and/or device (true) or must it explicitly be created (false)."}}}, "BandwidthTriggers": {"type": "object", "properties": {"dependentLinks": {"items": {"type": "string"}, "type": "array", "description": "List of dependent LLDP/LAG for the stitched FRE."}, "assignedBW": {"type": "string", "description": "Used BW by the FRE."}, "maxBW": {"type": "string", "description": "Maximum BW for the FRE."}, "dependentTunnels": {"items": {"type": "string"}, "type": "array", "description": "List of dependent Tunnels for the stitched FRE."}}}, "LqsFiberData": {"type": "object", "properties": {"reconciled": {"default": false, "type": "boolean"}, "method": {"enum": ["totalPower", "osc"], "type": "string"}, "modeledMargin": {"type": "number", "format": "double"}, "measuredLoss": {"type": "number", "format": "double"}, "modeledLoss": {"type": "number", "format": "double"}, "deltaLoss": {"type": "number", "format": "double"}}}, "AttributePolicyOverride": {"type": "object", "properties": {"attributeSource": {"type": "string", "description": "Attribute source, in case it has the value from some other references, (e.g. attributes.srlg is relationships.srlgs.id"}, "attributeName": {"type": "string", "description": "Attribute path(e.g. attribute.customerCode or relationship.endpoints)"}, "policies": {"items": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string"}, "type": "array"}}}, "SrlgStructuredValuesV2": {"type": "object", "properties": {"riskType": {"type": "string", "description": "Shared Risk Type. If user supplies it as Sting (e.g. conduit) system must translate it to mapped bit value"}, "subNetwork": {"type": "string", "description": ": SubnetworkRegion id that maps to the owning networkConstruct Region tag. The mapping of value is managed in the system."}, "riskValue": {"type": "integer", "description": "Srlg Risk Value. A number value", "format": "int32"}}}, "ControlPlanePackage": {"type": "object", "properties": {"sncRole": {"enum": ["WORKING", "PROTECT"], "type": "string", "description": "Role of SNC i.e WORKING or PROTECT"}, "configuredLatencyType": {"enum": ["disc", "manual"], "type": "string", "description": "Describe whether the latency is discovered or  manual."}, "grouped": {"default": false, "type": "boolean"}, "exclusiveRouting": {"default": false, "type": "boolean"}, "regroomAllowed": {"default": false, "type": "boolean", "description": "Indicates if re-groom operation can be performed on this SNC."}, "sncType": {"enum": ["DYNAMIC", "PERMANENT"], "type": "string"}, "rhpEnabled": {"default": false, "type": "boolean", "description": "Retain Home Path capability for the SNC."}, "ovpnIds": {"items": {"type": "string"}, "type": "array", "description": "The primary optical virtual private network ID list"}, "secOvpnIds": {"items": {"type": "string"}, "type": "array", "description": "The secondary optical virtual private network ID list"}, "meshRestorable": {"default": false, "type": "boolean"}, "sncpPackage": {"description": "Defines SNCP peer information", "$ref": "#/definitions/SncpPackage"}, "integrityCheckEnabled": {"enum": ["YES", "NO"], "type": "string", "description": "This parameter indicates the SnIC Admin State for a SNC. It can be yes or no to enable or disable SnIC on a SNC."}, "backOffPeriod": {"type": "integer", "description": "Back-off period for retrying SNC setup", "format": "int32"}}}, "GroupPackage": {"type": "object", "properties": {"aid": {"type": "string", "description": "AID of the participating sncs something like aidSnc1:aidSnc2"}, "groupId": {"type": "string", "description": "UUID of the group it will be set once Group is created by NSI"}, "groupToBeCreated": {"default": false, "type": "boolean", "description": " flag to indicate that Group needs to be created"}}}, "StructuredSrlgValues": {"type": "object", "properties": {"srlgType": {"type": "string", "description": "srlg type value of srlg"}, "srlgRisk": {"type": "string", "description": "srlg risk value of srlg"}, "controller": {"type": "string", "description": "controller value of srlg"}, "srlgPriority": {"type": "string", "description": " srlg priority value of srlg"}, "userBit": {"type": "string", "description": "user bit value of srlg"}}}, "CapacityPattern": {"type": "object", "properties": {"type": {"enum": ["LIST", "RANGE", "POOL", "PERCENTAGE"], "type": "string", "description": "Identifies Pattern type"}, "format": {"type": "string", "description": "An optional regex expression or format string describing how to parse the size string in case of multiple values, e.g. CIR:EIR"}}}, "SncpPackage": {"type": "object", "properties": {"peerOsrpNodeName": {"type": "string"}, "peerIdentifier": {"type": "string"}, "peerRole": {"enum": ["WORKING", "PROTECT"], "type": "string"}, "srcEpShared": {"default": false, "type": "boolean"}, "destEpShared": {"default": false, "type": "boolean"}}}, "Bw": {"type": "object", "properties": {"available": {"type": "string", "description": "The available bandwidth left to be"}, "requested": {"type": "string", "description": "The requested bandwidth from the supporting layer, e.g. a dynamic tunnel requesting bandwidth from IP interface"}, "autoSize": {"enum": ["enable", "disable"], "type": "string", "description": "If true, the MPLS tunnel will be auto-sized by the NE"}, "used": {"type": "string", "description": "The current used bandwidth by all supported clients"}, "autoSizeLastResizeStartTime": {"type": "string", "description": "Start time of the last auto resize happened"}, "autoSizeIntervalMinutes": {"type": "string", "description": "The configured interval between auto-sizing attempts"}, "autoSizeLastResizeEndTime": {"type": "string", "description": "End time of the last auto resize happened"}, "maximum": {"type": "string", "description": "The maximum bandwidth configured for supported clients"}, "operational": {"type": "string", "description": "The current bandwidth being allocated from the supporting layer"}, "autoSizeLastResizeReason": {"type": "string", "description": "Reason of the last auto resize happened"}, "bookingFactor": {"type": "string", "description": "The booking factor of how much the bandwidth can be oversubscribed, e.g. on an IP interface"}, "minimum": {"type": "string", "description": "The minimum bandwidth configured for supported clients"}, "autoSizeLastResizeState": {"enum": ["success", "failure", "in_progress"], "type": "string", "description": "The state of the last auto-sizing attempt"}, "increment": {"type": "string", "description": "The configured bandwidth increment for auto-sizing of an MPLS tunnel"}, "autoSizeFailureAction": {"enum": ["none", "alarm", "mbb"], "type": "string", "description": "The action to be taken when auto-sizing fails: raise alarm, or make-before-break"}, "maxReservable": {"type": "string", "description": "The maximum reservable bandwidth allowed to be allocated to supported clients and it's calculated as bwBookingFactor x bwTotal"}, "profileName": {"type": "string", "description": "The name of the bandwidth profile associated with the dynamic tunnel endpoint"}, "total": {"type": "string", "description": "The total bandwidth allocated or allowed, e.g. the capacity of an IP interface"}, "autoSizingMode": {"enum": ["none", "cac", "utilization"], "type": "string", "description": "The configured auto-sizing mode"}, "unit": {"type": "string", "description": "The bandwidth unit that applies to all bandwidth attributes in this package. Available values: bps, kbps, mbps, gbps"}}}, "FreCfmPackage": {"type": "object", "properties": {"ccmIntervalUnit": {"type": "string", "description": "The unit of interval between transmitting each message (e.g.: seconds)"}, "ccmPriority": {"type": "string", "description": "Priority of the CC messages (0-7)"}, "ccmInterval": {"type": "string", "description": "The interval between transmitting each message (e.g.: 1)"}, "ccmTransmitState": {"enum": ["ON", "OFF", "PARTIAL"], "type": "string", "description": "The transmission state of CCM (on/off)"}, "cfmOperState": {"enum": ["ENABLED", "DISABLED", "PARTIAL"], "type": "string", "description": "The operational state (enabled/disabled/partial)"}, "mdName": {"type": "string", "description": "The name of the maintenance domain"}, "maFormat": {"type": "string", "description": "The format of the maintenance association name"}, "cfmAdminState": {"enum": ["ENABLED", "DISABLED", "PARTIAL"], "type": "string", "description": "The administrative state (enabled/disabled/partial)"}, "cfmServiceName": {"type": "string", "description": "The name of the CFM service"}, "megId": {"type": "string", "description": "The ID of the maintenance entity group"}, "mdLevel": {"type": "string", "description": "The level of the maintenance domain (0-7)"}, "mdFormat": {"type": "string", "description": "The format of the maintenance domain name"}, "maName": {"type": "string", "description": "The name of the maintenance association"}}}, "ResiliencyHandlingEdge": {"type": "object", "properties": {"switchTpeId": {"type": "string", "description": "The ID of the CTPs in the physical view"}, "clientTpeId": {"type": "string", "description": "The ID of the client PTP connected to the switch"}}}, "FreData": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/FreRelationships"}, "attributes": {"$ref": "#/definitions/FreAttributes"}, "type": {"enum": ["fres"], "type": "string", "description": "The FRE resource type"}, "id": {"type": "string", "description": "The unique identifier for the FRE resource"}}}, "HopEntry": {"type": "object", "properties": {"hopType": {"enum": ["strict", "loose"], "type": "string", "description": "The type of this hop"}, "hopAddress": {"type": "string", "description": "The IP-data interface address for this hop"}}}, "Association": {"type": "object", "properties": {"nodalId": {"type": "string", "description": "The id of the resource being referenced by this association"}, "relationship": {"enum": ["networkConstructs", "tpes", "fres"], "type": "string", "description": "The association relationship resource type"}, "orderIndex": {"type": "integer", "description": "The order index value of this entry (to allow defining an entry order)", "format": "int32"}, "relationshipType": {"enum": ["concrete", "owningServer", "physical"], "type": "string", "description": "The type of association. Each value indicates what type of relationship this association is representing."}, "identifier": {"description": "Association Identifier", "$ref": "#/definitions/AssociationIdentifier"}, "id": {"type": "string", "description": "The id of the resource being referenced by this association"}}}, "SrlgIntentRequestDataV2": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/SrlgIntentRequestAttributesV2"}, "id": {"type": "string"}}}, "LqsData": {"type": "object", "properties": {"status": {"enum": ["low", "good", "upgrade", "high"], "type": "string"}, "fiber": {"$ref": "#/definitions/LqsFiberData"}, "margin": {"$ref": "#/definitions/LqsMarginData"}}}, "AssociationObjectAttributes": {"type": "object", "properties": {"associations": {"items": {"$ref": "#/definitions/Association"}, "type": "array", "description": "List of associations"}}}, "SrlgV2": {"type": "object", "properties": {"srlgValues": {"items": {"type": "string"}, "type": "array", "description": "SRLG Values set in Opaque format. If user assigns Structured SRLG in opaque format, then all optional values must be given as well"}, "srlgStructuredValues": {"items": {"$ref": "#/definitions/SrlgStructuredValuesV2"}, "type": "array"}}}, "SrlgIntentRequestAttributes": {"type": "object", "properties": {"resourceType": {"enum": ["FRE", "TPE", "NODE", "EQUIPMENT"], "type": "string", "description": "Type of the resource."}, "resourceId": {"type": "string", "description": "The resource id (fre-id) of the roadmline"}, "srlgSet": {"items": {"$ref": "#/definitions/SrlgSet"}, "type": "array", "description": "Srlg set"}, "resourceName": {"type": "string", "description": "Resource name (label) of the roadmline"}}}, "SRLGData": {"type": "object", "properties": {"type": {"enum": ["SRLG"], "type": "string", "description": "The SRLG Attribute type"}, "id": {"type": "string", "description": "The identifier value of the SRLG. It's same as the native value of structured srlg attributes"}}}, "SrlgIntentRequest": {"type": "object", "properties": {"data": {"description": "Srlg input data", "$ref": "#/definitions/SrlgIntentRequestData"}}}, "LqsMarginData": {"type": "object", "properties": {"viableAtEol": {"type": "string"}, "sdMargin": {"type": "number", "format": "double"}, "upgrMargin": {"type": "number", "format": "double"}, "valid": {"default": false, "type": "boolean"}, "minMargin": {"type": "number", "format": "double"}}}, "SrlgIntentRequestData": {"type": "object", "properties": {"requestType": {"type": "string", "description": "type of request"}, "attributes": {"description": "Attributes of an slrg intent.", "$ref": "#/definitions/SrlgIntentRequestAttributes"}, "id": {"type": "string", "description": "UUID rep"}}}, "MplsFbProtectedTunnel": {"type": "object", "properties": {"srcIp": {"type": "string", "description": "Source IP address of the tunnel protected by this FB tunnel"}, "destIp": {"type": "string", "description": "Destination IP address of the tunnel protected by this FB tunnel"}, "role": {"enum": ["ingress", "transit"], "type": "string", "description": "The role at this point of the MPLS tunnel protected by this FB tunnel"}, "name": {"type": "string", "description": "Name of the tunnel protected by this FB tunnel"}}}, "Error": {"type": "object", "properties": {"errorCode": {"type": "string"}, "errorDescription": {"type": "string"}, "errorMessage": {"type": "string"}, "meta": {"items": {"type": "object"}, "type": "array"}, "msgAttributes": {"additionalProperties": {"type": "object"}, "type": "object"}}}, "MplsFrrLocalProtection": {"type": "object", "properties": {"protectionFbName": {"type": "string", "description": "Protection FB tunnel name"}, "protectionAvailable": {"default": false, "type": "boolean", "description": "True when the protection is available on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}}}, "BookingData": {"type": "object", "properties": {"bookingFactor": {"type": "string", "description": "The factor that dictates how much overbooking is allowed."}, "assignedBandwidth": {"type": "string", "description": "The bandwidth assigned to the link."}, "assignedBandwidthUnit": {"type": "string", "description": "The unit of the bandwidth assigned to the link."}, "bandwidthLockout": {"default": false, "type": "boolean", "description": "Flag that enables/disables a link from having additional tunnel BW being consumed."}}}, "Identifier": {"type": "object"}, "RelationshipData": {"type": "object", "properties": {"type": {"type": "string", "description": "The relationship resource type"}, "id": {"type": "string", "description": "The unique identifier for the referenced resource."}}}, "StitchingTriggers": {"type": "object", "properties": {"partitioningFreConcreteIds": {"items": {"type": "string"}, "type": "array", "description": "List of physical FRE IDs for which stitcher should add a concrete relationship to on the stitched FRE"}, "protectingFreConcreteIds": {"items": {"type": "string"}, "type": "array", "description": "List of physical FRE IDs for which stitcher should add a concrete relationship to on the stitched resiliency FRE, where there is an EncapsulatedResiliency with a protectionScheme defined."}, "backpropagateTpeId": {"type": "string", "description": "Stitcher uses backpropagte TPE id while creating FRE in physical view"}}}, "ColorGroup": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color group"}, "colors": {"items": {"$ref": "#/definitions/ColorEntry"}, "type": "array"}, "name": {"type": "string", "description": "The name of the color group"}}}, "UserData": {"type": "object"}, "MplsFrrProtectionRouteHop": {"type": "object", "properties": {"ip": {"type": "string", "description": "IP interface address or node loopback IP address of the current hop"}, "bwProtected": {"default": false, "type": "boolean", "description": "True when the bandwidth is protected on this endpoint"}, "protectionInUse": {"default": false, "type": "boolean", "description": "True when the protection is in use on this endpoint"}, "protectionType": {"enum": ["none", "link_protect", "node_protect"], "type": "string", "description": "The FB protection type on this hop for this unidirectional tunnel"}}}, "Links": {"type": "object", "properties": {"last": {"type": "string", "description": "The last page of data", "format": "uri"}, "self": {"type": "string", "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", "format": "uri"}, "next": {"type": "string", "description": "The next page of data", "format": "uri"}, "current": {"type": "string", "description": "The current page of data", "format": "uri"}, "prev": {"type": "string", "description": "The previous page of data", "format": "uri"}, "first": {"type": "string", "description": "The first page of data", "format": "uri"}}}, "ResiliencyTopologyPackage": {"type": "object", "properties": {"switchTpeId": {"type": "string", "description": "Switch port client TPE"}, "resilientFreId": {"type": "string", "description": "Resilient nodal fre id"}}}, "FreAttributes": {"type": "object", "properties": {"latency": {"type": "number", "description": "Indicates the delay in microseconds.", "format": "double"}, "adminWt": {"type": "number", "description": "Administrative weight which specifies the level of importance given to the OSRP link", "format": "double"}, "customerName": {"type": "string", "description": "The name of the customer for the fre."}, "resiliencyTopologyPackage": {"description": "This package stores resiliency topology information.", "$ref": "#/definitions/ResiliencyTopologyPackage"}, "resourcePartitionInfo": {"uniqueItems": true, "items": {"type": "string"}, "type": "array", "description": "It represents which partition this fre belongs to."}, "resourceState": {"enum": ["root", "planned", "discovered", "plannedAndDiscovered", "unknown"], "type": "string", "description": "Nsi Resource State."}, "adminState": {"enum": ["ENABLED", "DISABLED", "NOT_APPLICABLE", "IN_SERVICE", "OUT_OF_SERVICE"], "type": "string", "description": "Indicates the administrative state of the FRE, including whether traffic has been enabled and whether the FRE should be used by clients. It is derived from the state(s) of terminating TPE(s). Disabled means that FRE is prevented from carrying traffic. Enabled means that FRE is allowed to carry traffic."}, "displayData": {"$ref": "#/definitions/FreDisplayData"}, "reliability": {"enum": ["MANUAL", "AUTO"], "type": "string", "description": "Stitcher attribute to set reliability on FRE"}, "freType": {"enum": ["explicitRoute", "explicitRouteGroup", "snc", "sncGroup", "regen", "route", "resilientConfig", "osrpLine", "osrpLink", "sncp", "eline", "elan", "etree", "dropAndContinue"], "type": "string", "description": "The sub type of FRE"}, "bandwidthTriggers": {"$ref": "#/definitions/BandwidthTriggers"}, "userLabel": {"type": "string", "description": "The label given to the FRE by an user"}, "maxReservableBandwidth": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "lqsData": {"$ref": "#/definitions/LqsData"}, "topologySources": {"items": {"enum": ["discovered", "adjacency", "stitched", "connection_rule", "connection_rule_nodal", "backpropagated", "connection_rule_snc", "manual", "retained"], "type": "string"}, "type": "array", "description": "Source of topology"}, "deploymentState": {"enum": ["SCHEDULED", "NOT_PRESENT_IN_NETWORK", "DEPLOYMENT_IN_PROGRESS", "PROVISIONED", "INCOMPLETE_DEPLOYMENT", "DEPLOYED", "COMPLETE_IN_NETWORK", "INCOMPLETE_PARTIAL", "INCOMPLETE_PARTIAL_IN_CONFLICT", "INCOMPLETE_READY_BEST_EFFORT", "UNDEPLOYMENT_IN_PROGRESS", "INCOMPLETE_UNDEPLOYMENT", "DISCOVERED"], "type": "string", "description": "Represents the stage that the FRE is at in the construction/deployment/discovery life cycle"}, "syncScopes": {"items": {"$ref": "#/definitions/SyncScope"}, "type": "array", "description": "The sync scope for the FRE"}, "description": {"type": "string", "description": "String to store description field on service"}, "layerRateQualifier": {"enum": ["ODUC1", "ODUC2", "ODUC2_25", "ODUC2_30", "ODUC3", "ODUC4", "ODUC4_60", "ODUC4_70", "ODUC5", "ODUC6", "ODUC7", "ODUC8", "OTUC1", "OTUC2", "OTUC2_25", "OTUC2_30", "OTUC3", "OTUC3_50", "OTUC4", "OTUC4_60", "OTUC5", "OTUC6", "OTUC7", "OTUC8", "OC3", "OC12", "OC48", "OC192", "OC768", "STM1", "STM4", "STM16", "STM64", "STM256", "ODU2", "ODU2e", "ODU3", "ODU4", "OTU2", "OTU2e", "OTU3", "OTU4", "_1GE", "_10GE", "_40GE", "_100GE", "_400GE", "_2G5", "_1G25", "_10G", "_40G", "_100G", "_150G", "_200G", "_250G", "_300G", "_350G", "_400G", "_500G", "_600G", "_700G", "_800G", "FICON1G", "FICONEXPRESS2G", "FICON4G", "FICON8G", "FICON16G", "FC100", "FC200", "FC400", "FC800", "FC1200", "FC1600", "FC3200", "UNKNOWN"], "type": "string", "description": "Provides a means to provide additional qualification attributes for a Layer Rate. For example, for beyond 100G rates OTUCn and ODUCn, the value of n, where n is a multiple of 100. For example, for beyond 100G rates with sub rate potential (i.e. OTUCn-M), this includes the n-M options where n is the number of OxUC overhead instances and M is the number of 5G tributary slots. For example, OTUC4-60 implies 4 instances of OxUC overhead, and 300G capacity (5G x 60)."}, "note": {"$ref": "#/definitions/Note"}, "state": {"enum": ["IS", "OOS", "OOS_AUMA"], "type": "string", "description": "TO BE REMOVED. Use adminState."}, "photonicSpectrumPackage": {"description": "This package stores photonic spectrum information.", "$ref": "#/definitions/PhotonicSpectrumPackage"}, "cfmPackages": {"items": {"$ref": "#/definitions/FreCfmPackage"}, "type": "array", "description": "Holds data related to CFM services configured on an Ethernet service"}, "deploymentStateTransaction": {"enum": ["SCHEDULED", "NOT_PRESENT_IN_NETWORK", "DEPLOYMENT_IN_PROGRESS", "PROVISIONED", "INCOMPLETE_DEPLOYMENT", "DEPLOYED", "COMPLETE_IN_NETWORK", "INCOMPLETE_PARTIAL", "INCOMPLETE_PARTIAL_IN_CONFLICT", "INCOMPLETE_READY_BEST_EFFORT", "UNDEPLOYMENT_IN_PROGRESS", "INCOMPLETE_UNDEPLOYMENT", "DISCOVERED"], "type": "string", "description": "Represents the stage that the FRE is at in the construction/deployment/discovery life cycle"}, "stitchingTriggers": {"$ref": "#/definitions/StitchingTriggers"}, "controlPlanePackage": {"$ref": "#/definitions/ControlPlanePackage"}, "userData": {"description": "User data", "$ref": "#/definitions/UserData"}, "isInConflict": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE is in conflict with other FREs."}, "resiliencyPackage": {"description": "The fre resiliency package contains attributes only appear in resiliency view.", "$ref": "#/definitions/FreResiliencyPackage"}, "provisioningAttributes": {"description": "Indicates attributes that are used solely in the provisioning workflow. These attributes would not be reported on discovery, but aid in the provisioning workflow.", "$ref": "#/definitions/ProvisioningAttributes"}, "tags": {"items": {"type": "string"}, "type": "array", "description": "A set of tags for a given fre."}, "derivedAttributes": {"description": "Attributes that have been derived from other attributes and need to be stored", "$ref": "#/definitions/FreDerivedAttributes"}, "photonicSpectrumPackageList": {"items": {"$ref": "#/definitions/PhotonicSpectrumPackage"}, "type": "array"}, "serviceClass": {"enum": ["EVC", "E_TRANSIT", "E_ACCESS", "VLAN", "TDM", "PSEUDOWIRE_LINK", "TRANSPORT_CLIENT", "PHOTONIC", "TUNNEL", "IP", "LLDP", "LAG", "OTU", "OSRP_LINK", "OSRP_LINE", "ROADM_LINE", "FIBER", "SNC", "SNCP", "ICL", "RING", "BGP_SESSION"], "type": "string", "description": "Represents the type of FRE service"}, "signalContentType": {"type": "string", "description": "Represents whether the FRE is of VLAN/VCE type for L2 devices"}, "mgmtName": {"type": "string", "description": "The name given to the FRE on the NE where applicable (e.g. VS name for SAOS based devices)"}, "mplsPackage": {"description": "This package stores MPLS tunnel information.", "$ref": "#/definitions/MplsPackage"}, "layerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "modelType": {"enum": ["controlPlane", "regenService", "resiliency"], "type": "string", "description": "The model type of network construct, TPE, FRE."}, "internalStructure": {"enum": ["SIMPLE", "SIMPLE_SWITCHED", "PROTECTED_ONE_END", "MULTI_SIMPLE", "MULTIPLE", "PROTECTED_BOTH_ENDS", "MULTIPOINT", "HUB_AND_SPOKE", "EXPLICIT", "INTERCONNECT_ONE_END", "INTERCONNECT_BOTH_ENDS", "DUAL_HOMED_ONE_END", "DUAL_HOMED_BOTH_ENDS", "MULTIPOINT_DC", "UNKNOWN"], "type": "string", "description": "Visible abstraction of the internal structure of the FRE"}, "active": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE is active, or simply a potential."}, "nativeName": {"type": "string", "description": "The name of the FRE that is native to the network element"}, "controlActivityState": {"enum": ["NONE", "ACTIVATING", "DEACTIVATING", "IDLE", "PENDING", "MODIFYING", "FAILING", "DEGRADED"], "type": "string", "description": "Represents the state of management activity being performed against this FRE."}, "domainTypes": {"items": {"type": "string"}, "type": "array", "description": "List of domains/protection scheme this FRE is included in."}, "bookingData": {"description": "Bandwidth booking data", "$ref": "#/definitions/BookingData"}, "explicitRouteGroup": {"description": "Explicit Route Group", "$ref": "#/definitions/ExplicitRouteGroup"}, "additionalAttributes": {"description": "Various miscellaneous attributes that do not necessarily belong in the parent resource. Attributes are populated dynamically and therefore cannot be documented here.", "$ref": "#/definitions/AdditionalAttributes"}, "multiHighestStackLayerRate": {"enum": ["ETHERNET", "OTU1", "OTU2", "OTU2e", "OTU3", "OTU4", "OTUCn", "OTSi", "OMS", "OS", "PHY", "OTS", "FICON", "FC", "ODU", "ODU0", "ODU1", "ODU2", "ODU2e", "ODU3", "ODU4", "ODUCn", "DSR", "DSR_10GE", "DSR_100GE", "DSR_ETHERNET", "ENCAPSULATION", "MPLS", "MPLS_PROTECTION", "MEDIA", "LAG", "RS", "E1", "E3", "E1_2M", "EC1", "DSR_2M", "LINE_OC3_STS3_AND_MS_STM1", "SECTION_OC3_STS3_AND_RS_STM1", "DSR_OC3_STM1", "DSR_OC12_STM4", "DSR_OC48_STM16", "DSR_OC192_STM64", "CES_IWF", "T1", "DSR_1_5M", "STS1", "STS3C", "STS12C", "STS24C", "STS48C", "DS0", "DS1", "DS3", "VT15", "VT2", "NOT_APPLICABLE", "ODUFLEX", "OTUg", "ODUg", "BGP", "G8032"], "type": "string", "description": "The transmission layer rate."}, "usedBandwidth": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "srlg": {"items": {"type": "string"}, "type": "array", "description": "Shared risk link group is used by the path computation engine to ensure that the alternate links involved in a service do not share the same shared risk link group."}, "retainedMaxReservableBandwidth": {"items": {"$ref": "#/definitions/Capacity"}, "type": "array"}, "groupPackage": {"description": "Group Package", "$ref": "#/definitions/GroupPackage"}, "lifeCycleRules": {"description": "Indicates the life cycle rules for an entity.", "$ref": "#/definitions/LifeCycleRule"}, "gneSubnetName": {"type": "string", "description": "The GNE Subnet Name of the FRE"}, "identifiers": {"items": {"$ref": "#/definitions/Identifier"}, "type": "array"}, "resilienceLevel": {"enum": ["UNPROTECTED", "PARTIAL", "PROTECTED", "PROTECTED_IN_JEOPARDY"], "type": "string", "description": "Indicates the general level of resiliency under this given FRE."}, "directionality": {"enum": ["unidirectional", "bidirectional"], "type": "string", "description": "Indicates if the FRE is unidirectional or bidirectional"}, "operationState": {"enum": ["FULLY_OPERATING", "NOT_OPERATING", "DEGRADED_OPERATION", "NOT_APPLICABLE", "UNDETERMINED", "IN_SERVICE", "DEGRADED", "OUT_OF_SERVICE_EXTERNAL", "OUT_OF_SERVICE"], "type": "string", "description": "Represents the total traffic carrying capability of the FRE. Relates to flow of traffic across the FRE between endpoints."}, "networkRole": {"enum": ["IFRE", "FREAP", "FREhAP", "ROADMLINE", "IFRECP", "EFRE"], "type": "string", "description": "Determines if the FRE participates in an internal or external forwarding view or involves access points or connection points"}, "bgpPackage": {"description": "This package stores BGP information.", "$ref": "#/definitions/FreBgpPackage"}, "linkLabel": {"type": "string", "description": "A Label for OTU links"}, "policies": {"description": "Policies for attributes.", "$ref": "#/definitions/AttributePolicies"}, "stitchingFloorActive": {"default": false, "type": "boolean", "description": "An indicator to flag when a FRE should not have stitched client FREs."}, "bundleIds": {"items": {"type": "string"}, "type": "array", "description": "List of up to 20 protection bundles to which the OSRP link belongs"}, "routingConstraints": {"$ref": "#/definitions/RoutingConstraints"}, "resiliencyHandlingPackage": {"items": {"$ref": "#/definitions/ResiliencyHandlingPackage"}, "type": "array", "description": " triggers stitcher building resiliency view and NSI updating layerRate in resiliency view"}}}, "SrlgSet": {"type": "object", "properties": {"srlgValues": {"items": {"type": "string"}, "type": "array", "description": "Srlg values"}, "id": {"type": "string", "description": "Id of the srlgset"}, "plannedStartDate": {"type": "string", "description": "Planned start date in rfc 3339 format"}, "structuredSRLGValues": {"items": {"$ref": "#/definitions/StructuredSrlgValues"}, "type": "array", "description": "structuredSRLGValues"}}}, "AttributePolicies": {"type": "object", "properties": {"defaultAttributeSourcePolicy": {"enum": ["plannedOverDiscovered", "discoveredOverPlanned"], "type": "string", "description": "Source of attribute."}, "overrides": {"items": {"$ref": "#/definitions/AttributePolicyOverride"}, "type": "array"}}}, "SrlgSetV2": {"type": "object", "properties": {"plannedStartDate": {"type": "string", "description": "Expectation Planned Start Date."}, "auto": {"$ref": "#/definitions/SrlgV2"}, "manual": {"$ref": "#/definitions/SrlgV2"}, "discovered": {"$ref": "#/definitions/SrlgV2"}, "combined": {"$ref": "#/definitions/SrlgV2"}, "inherited": {"$ref": "#/definitions/SrlgV2"}, "propagated": {"$ref": "#/definitions/SrlgV2"}}}, "ColorEntry": {"type": "object", "properties": {"bitmask": {"type": "string", "description": "The 32-bit hexadecimal bitmask of the color"}, "name": {"type": "string", "description": "The name of the color"}}}, "SyncScope": {"type": "object", "properties": {"name": {"items": {"type": "string"}, "type": "array", "description": "The synchronization scope name"}, "context": {"type": "string", "description": "The synchronization scope context"}}}, "FreDerivedAttributes": {"type": "object", "properties": {"intentDeploymentState": {"enum": ["READY_TO_DEPLOY", "DEPLOYMENT_IN_PROGRESS", "INCOMPLETE_DEPLOYMENT", "COMPLETE_FULLY_READY", "INCOMPLETE_NOT_READY", "INCOMPLETE_NOT_READY_CONFLICT", "INCOMPLETE_READY_BEST_EFFORT", "UNDEPLOYMENT_IN_PROGRESS", "INCOMPLETE_UNDEPLOYMENT", "WAITING_TO_ADOPT"], "type": "string", "description": "Represents the intent deployment stage that the FRE is at in the construction/deployment/discovery life cycle"}, "intentLifeCyclePhase": {"enum": ["WAITING_TO_DEPLOY", "DEPLOYING", "ASSURING", "RETIRING", "ADOPTING_DISCOVERED"], "type": "string", "description": "Represents the intent life cycle stage that the FRE is at in the construction/deployment/discovery life cycle"}}}, "MplsFb": {"type": "object", "properties": {"excludeIp": {"type": "string", "description": "IP address excluded from the FB tunnel path"}, "protectedTunnels": {"items": {"$ref": "#/definitions/MplsFbProtectedTunnel"}, "type": "array"}, "frrAutoCreated": {"default": false, "type": "boolean", "description": "The flag indicating whether the FB tunnel is auto created by FRR"}, "protectedInterface": {"type": "string", "description": "Name of the interface being protected by the FB tunnel"}}}, "ProvisioningAttributes": {"type": "object"}, "TunnelPath": {"type": "object", "properties": {"hops": {"items": {"$ref": "#/definitions/HopEntry"}, "type": "array"}, "pathName": {"type": "string", "description": "The name of this explicit tunnel path"}}}, "AssociationIdentifier": {"type": "object"}, "SrlgIntentRequestAttributesV2": {"type": "object", "properties": {"resourceType": {"enum": ["NETWORK_CONSTRUCTS", "TPES", "FRES", "EQUIPMENT"], "type": "string"}, "resourceId": {"type": "string", "description": "Resource id of the resource"}, "srlgSet": {"items": {"$ref": "#/definitions/SrlgSetV2"}, "type": "array", "description": "Represents the SRLG set. Can be either combined/auto/manual/inherited/propagated/discovered depending on the parent container"}}}, "FreBgpPackage": {"type": "object", "properties": {"sessionState": {"enum": ["IDLE", "CONNECT", "ACTIVE", "OPENSENT", "OPENCONFIRM", "ESTABLISHED"], "type": "string", "description": "BGP states"}, "protocolVersion": {"type": "string", "description": "Lower of negotiatedBgpVersion reported on both BGP CTP's."}, "sessionType": {"enum": ["IBGP", "EBGP"], "type": "string", "description": "IBGP/EBGP depending on peerAs number is same as local or different."}}}, "OneToManyRelationship": {"type": "object", "properties": {"meta": {"description": "The relationship type and identifier", "$ref": "#/definitions/RelationshipMetaData"}, "data": {"items": {"$ref": "#/definitions/RelationshipData"}, "type": "array", "description": "The one-to-many relationship"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_submarine.json b/tapi/resources/MCP_4.0.0_submarine.json
deleted file mode 100644
index cb6bc8859127c57625442373307ca89f2b771567..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_submarine.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "0.0.4", "description": "Submarine repeater scans\n", "title": "Submarine"}, "paths": {"/submarine/api/v1/srs/trendData": {"get": {"responses": {"200": {"description": "Successfully retrieved Trends data.", "schema": {"type": "object", "properties": {"data": {"items": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"trendReadings": {"items": {"type": "object", "properties": {"parameterNative": {"type": "string"}, "values": {"items": {"type": "object", "properties": {"startTime": {"type": "string"}, "value": {"type": "string"}}}, "type": "array"}, "power": {"type": "string"}}}, "type": "array"}, "type": {"type": "string"}, "id": {"type": "string"}}}}}, "type": "array"}}, "title": "trendsData"}}, "500": {"description": "Retrieval of Trends data failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "summary": "Get trend details", "description": "Get trend details for family A, B, C and D type repeaters", "parameters": [{"required": true, "type": "string", "description": "Scan Id of a scan", "name": "scanId", "in": "query"}, {"required": true, "type": "string", "description": "Address of the repeater", "name": "repeaterAddress", "in": "query"}, {"required": true, "type": "string", "description": "Start time, valid time format is YYYY-MM-DDTHH:MM:SSZ", "name": "startTime", "in": "query"}, {"required": true, "type": "string", "description": "End Time, valid time format is YYYY-MM-DDTHH:MM:SSZ", "name": "endTime", "in": "query"}, {"enum": ["C", "L"], "name": "band", "required": false, "in": "query", "type": "string", "description": "Band Type, Required for FAMILY_D"}], "tags": ["Trend view"]}}, "/submarine/api/v1/srs/export": {"post": {"responses": {"200": {"description": "All the files have been successfully exported"}, "500": {"description": "Export failed"}}, "summary": "Export data", "description": "Use this API to export scan data.\n\nPrerequisite: \n", "parameters": [{"schema": {"$ref": "#/definitions/ids"}, "required": true, "description": "Scan Ids of the scans to be exported", "name": "ids", "in": "body"}], "tags": ["Export"]}}, "/submarine/api/v1/srs/commitCableSystem": {"post": {"responses": {"200": {"description": "Cable system configuration is Added to inventory / Remove from inventory successfully", "schema": {"type": "object", "properties": {"status": {"type": "string"}}, "title": "CableSystemUpdateConfirmationMessage"}}, "500": {"description": "Failed to Add to inventory / Remove from inventory cable system configuration, details error message are provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters"}}, "summary": "Commit cable system configuration for a customer", "description": "Use this API to Add to inventory OR Remove from inventory cable system configuration\n\nPrerequisite: Customer specific SLTEs and TEMs servers are enrolled as mentioned in descriptor files.\n", "parameters": [{"schema": {"$ref": "#/definitions/commitCableSystem"}, "required": true, "description": "Add to inventory / Remove from inventory cable system for a customer\n 1) Use operation_type as 'commit / cleanup' to apply cable descriptors changes on the network\n", "name": "data", "in": "body"}], "tags": ["Add to inventory / Remove from inventory cable system configuration"]}}, "/submarine/api/v1/srs/upload": {"post": {"responses": {"200": {"description": "All the files have been successfully imported", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "Successfully Imported"}}, "202": {"description": "Some of the files could not be imported", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "Partially imported"}}, "409": {"description": "Already imported", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "Already imported"}}, "500": {"description": "Import failed", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "Import failed"}}}, "summary": "Import scan result, cable system, repeater system and slte files", "description": "Use this API to import scan result, cable system, repeater system and slte files.\n\nPrerequisite: \n", "parameters": [{"required": true, "type": "string", "description": "Type of file to be imported\n 1) 'Scan Details' to import scan results\n 2) 'cableSystem' to import cable system file\n 3) 'repeaterSystem' to import repeater system file \n 4) 'slteSystem' to import SLTE", "name": "importType", "in": "formData"}, {"required": true, "type": "file", "description": "The file which has to be imported", "name": "file", "in": "formData"}, {"required": false, "type": "string", "description": "Cable system name. Should be used while importing repeater system file or slte system file", "name": "name", "in": "query"}, {"required": false, "type": "string", "description": "To enable or disable reimport check\n 1) 'True' to enable reimport check\n 2) 'False' to disable reimport check", "name": "reImport", "in": "formData"}], "tags": ["Import"]}, "delete": {"responses": {"200": {"description": "Successfully deleted descriptor file record."}, "500": {"description": "Deletion of descriptor file failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not delete descriptor files."}}, "summary": "Delete repeater, slte and cable descriptor files", "description": "Use this API to delete the repeater system, slte system or cable system file.\n\nPrerequisite: Cable system, slte system file must have been imported.\n", "parameters": [{"required": true, "type": "string", "description": "Type of the descriptor file to be deleted\n 1) 'repeaterSystem' to delete repeater system file \n 2) 'slteSystem' to delete slte system file \n 3) 'cableSystem' to delete cable system file", "name": "deleteType", "in": "query"}, {"schema": {"$ref": "#/definitions/deleteDescriptorFile"}, "required": true, "description": "1) 'repeater_attribute' to delete repeater system file \n 2) 'slte_attribute' to delete slte system file \n 3) 'cable_attribute' to delete cable system file", "name": "data", "in": "body"}], "tags": ["Delete repeater, slte and cable descriptor files"]}, "get": {"responses": {"200": {"description": "Successfully retrieved data", "schema": {"type": "object", "properties": {"data": {"items": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"additionalAttributes": {"type": "object"}, "cableStations": {"items": {"type": "string"}, "type": "array"}, "cableStationsCount": {"type": "integer"}, "description": {"type": "string"}, "name": {"type": "string"}, "branchingUnitsCount": {"type": "integer"}, "cableSystemFileName": {"type": "string"}, "customerNamesCount": {"type": "integer"}, "powerNetworkName": {"items": {"type": "string"}, "type": "array"}, "repeaterSystemFileName": {"items": {"type": "string"}, "type": "array"}, "branchingUnits": {"items": {"type": "string"}, "type": "array"}, "customerNames": {"items": {"type": "string"}, "type": "array"}}}, "type": {"type": "string"}, "id": {"type": "string"}}}, "type": "array"}}, "title": "Cable system details"}}, "500": {"description": "Request failed", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "Request failed"}}, "400": {"description": "Request failed", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "Request failed"}}}, "summary": "Get cable system, repeater system, slte details", "description": "Use this API to fetch cable system, repeater system, slte details", "parameters": [{"required": true, "type": "string", "description": "Type of data to be fetched\n 1) 'cableSystem' to fetch cable system details\n 2) 'repeaterSystem' to fetch repeater system details\n 3) 'slteSystem' to fetch SLTE details", "name": "detailsType", "in": "query"}, {"type": "string", "description": "Cable system name. Should be used while fetching repeater data or slte data", "name": "name", "in": "query"}], "tags": ["Cable System Details"]}}, "/submarine/api/v1/wetplant/components": {"delete": {"responses": {"200": {"description": "Successfully deleted optical power data."}, "500": {"description": "Deletion of optical power data failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not delete optical power data."}}, "summary": "Delete optical power data ", "description": "Use this API to delete the optical power data of all wetplant components for given cable system.\n", "parameters": [{"required": true, "type": "string", "description": "Cable system name", "name": "cableSystem", "in": "query"}], "tags": ["Delete optical power data "]}, "get": {"responses": {"200": {"description": "Successfully retrieved requested data.", "schema": {"type": "object", "properties": {"data": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"opmCurrent": {"items": {"type": "object", "properties": {"parameterNative": {"type": "string"}, "values": {"type": "string"}}}, "type": "array"}}}, "type": {"type": "string"}}}}, "title": "wetplantData"}}, "500": {"description": "Failed", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "Failed"}}, "400": {"description": "Bad Request", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "Bad Request"}}}, "summary": "Get wetplant details", "description": "Use this API to get wetplant components and their optical powers details like opm history and opm current data.", "parameters": [{"required": true, "type": "string", "description": "Type of resource\n 1) 'opmDetails' to get the components data\n 2) 'opmHistory' to get the historical data\n 3) 'opmCurrent' to get the current opm data", "name": "resourceType", "in": "query"}, {"required": true, "type": "string", "description": "Name of the cable system", "name": "cableSystem", "in": "query"}, {"required": false, "type": "string", "description": "IP Address of Tems Server, required when resourceType is either 'opmCurrent' or 'opmHistory'", "name": "temsServer", "in": "query"}, {"required": false, "type": "string", "description": "Name of component, required when resourceType is either 'opmCurrent' or 'opmHistory'", "name": "componentName", "in": "query"}, {"required": false, "type": "string", "description": "Date and time from when the data is required, valid format is YYYY-MM-DDTHH:MM:SSZ, required when resourceType is 'opmHistory'", "name": "fromDate", "in": "query"}, {"required": false, "type": "string", "description": "Date and time upto which the data is required, valid format is YYYY-MM-DDTHH:MM:SSZ, required when resourceType is 'opmHistory'", "name": "toDate", "in": "query"}], "tags": ["Wetplant Components"]}}, "/submarine/api/v1/srs/scanThreshold": {"post": {"responses": {"200": {"description": "Baseline successfully saved.", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "BaselineConfirmationMessage"}}, "500": {"description": "Scan Schedule failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters"}}, "summary": "Save baseline details", "description": "Use this API to set baseline of a scan for each repeater system.", "parameters": [{"schema": {"$ref": "#/definitions/scanThreshold"}, "required": true, "description": "Baseline parameters to be saved", "name": "scanThreshold", "in": "body"}], "tags": ["Set baseline scan"]}, "get": {"responses": {"200": {"description": "Successfully retrieved baseline data.", "schema": {"type": "object", "properties": {"data": {"items": {"type": "object", "properties": {"attributes": {"properties": {"additionalAttributes": {"type": "object", "properties": {}}, "baselineDetails": {"type": "object", "properties": {}}, "neDetails": {"type": "object", "properties": {"facilityAid": {"type": "string"}, "scanId": {"type": "string"}, "rptrSysFamily": {"type": "string"}, "ncId": {"type": "string"}}}}}}}, "type": "array"}}, "title": "Baseline details"}}, "500": {"description": "Data failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "summary": "Get baseline details", "description": "Use this api to set baseline of a scan for each repeater system.", "parameters": [{"required": true, "type": "string", "description": "scanId of the scan to be baselined", "name": "scanId", "in": "query"}], "tags": ["Set baseline scan"]}}, "/submarine/api/v1/srs/historyScans": {"get": {"responses": {"200": {"description": "Successfully retrieved history scans.", "schema": {"type": "object", "properties": {"data": {"items": {"type": "object", "properties": {"status": {"type": "string"}, "ne_name": {"type": "string"}, "scan_id": {"type": "string"}, "start_time": {"type": "string"}, "run_by": {"type": "string"}, "facility_aid": {"type": "string"}, "is_baseline": {"type": "string"}, "nc_id": {"type": "string"}, "completed_time": {"type": "string"}, "rptr_sys_family": {"type": "string"}}}, "type": "array"}}, "title": "ScanHistoryData"}}, "500": {"description": "Retrieval of scan history data failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find ncId parameter."}}, "summary": "Get History scan details", "description": "Use this API to fetch the scan history data.\n\nPrerequisite: \n", "parameters": [{"required": false, "type": "string", "description": "ncId of the NE for which history scans need to be retrieved", "name": "ncId", "in": "query"}], "tags": ["History scans"]}}, "/submarine/api/v1/srs/scheduleScan": {"post": {"responses": {"200": {"description": "Scan successfully scheduled.", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "ScanScheduledConfirmationMessage"}}, "500": {"description": "Scan Schedule failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters"}}, "summary": "Schedule a scan", "description": "Use this API to view a submarine Scheduled scan.\n\nPrerequisite: NE must be enrolled with ISS/OSIC card.\n", "parameters": [{"schema": {"$ref": "#/definitions/scheduleScan"}, "required": true, "description": "Scan parameters to be Scheduled", "name": "scheduleScan", "in": "body"}], "tags": ["Schedule scans"]}, "delete": {"responses": {"200": {"description": "Successfully deleted scan record."}, "500": {"description": "Deletion of Schedule Scan record failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find Schedule scanId parameter."}}, "summary": "Delete Schedule Scan Record", "description": "Use this API to delete the Scheduled scan record for a particular Schedule ID.\n\nPrerequisite: Schedule Scan record must exist for specified scheduleId.\n", "parameters": [{"schema": {"$ref": "#/definitions/ids"}, "required": true, "description": "Schedule Scan Ids of the scans to be deleted", "name": "ids", "in": "body"}], "tags": ["Schedule scans"]}, "get": {"responses": {"200": {"description": "Successfully retrieved Scheduled Scan data.", "schema": {"type": "object", "properties": {"data": {"items": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"additionalAttributes": {"type": "object", "properties": {}}, "scheduleDetails": {"type": "object", "properties": {"scheduleTime": {"type": "string"}, "nextExecutionTime": {"type": "string"}, "scheduleFrequency": {"type": "string"}, "scheduleWeeklyDays": {"type": "object", "properties": {"wed": {"type": "string"}, "sun": {"type": "string"}, "fri": {"type": "string"}, "tue": {"type": "string"}, "mon": {"type": "string"}, "thu": {"type": "string"}, "sat": {"type": "string"}}}, "dayofMonth": {"type": "string"}}}, "scheduleId": {"type": "string"}, "scheduleName": {"type": "string"}, "neDetails": {"type": "object", "properties": {"neType": {"type": "string"}, "neName": {"type": "string"}, "ncId": {"type": "string"}}}}}, "repeaterAID": {"type": "string"}}}, "type": "array"}}, "title": "Schedule Scan data"}}, "500": {"description": "Retrieval of Scheduled scan data failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "summary": "Get Schedule Details", "description": "Use this API to fetch the Schedule scan details for a particular scan.\n\nPrerequisite: SRS Schedule Scan must exist for specified Schedule scan id.\n", "parameters": [{"required": false, "type": "string", "description": "Scan Id of a particular scan", "name": "scheduleId", "in": "query"}, {"required": false, "type": "string", "description": "NC Id of a particular scan", "name": "ncId", "in": "query"}], "tags": ["Schedule scans"]}}, "/submarine/api/v1/srs/configUbmd2Loss": {"post": {"responses": {"200": {"description": "Scan successfully initiated.", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "ScanInitaiedConfirmationMessage"}}, "500": {"description": "Scan initiation failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find ncId parameter."}}, "summary": "Configure UBMD2 loss", "description": "Use this API to configure UBMD2 loss data", "parameters": [{"schema": {"$ref": "#/definitions/configLoss"}, "required": true, "description": "Config loss parameters for specified repeater system.", "name": "configLosses", "in": "body"}], "tags": ["Configuration loss"]}, "get": {"responses": {"200": {"description": "Successfully retrieved configure loss data.", "schema": {"type": "object", "properties": {"tx_loss": {"type": "string"}, "rx_loss": {"type": "string"}}, "title": "ConfigureLossData"}}, "500": {"description": "Retrieval of config loss data failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find ncId,facId parameter."}}, "summary": "Get config loss Details", "description": "Use this API to configure UBMD2 loss for each repeater system.", "parameters": [{"required": true, "type": "string", "description": "ncId of the network element", "name": "ncId", "in": "query"}, {"required": true, "type": "string", "description": "Family type of repeater system", "name": "facilityAid", "in": "query"}], "tags": ["Configuration loss"]}}, "/submarine/api/v1/srs/cableSystemDetails": {"get": {"responses": {"200": {"description": "Successfully retrieved data.", "schema": {"type": "object", "properties": {"data": {"items": {"type": "object", "properties": {"deviceName": {"type": "string"}, "deviceType": {"type": "string"}, "longitude": {"type": "string"}, "lattitude": {"type": "string"}}}, "type": "array"}}, "title": "topologyData or attributes or repeaters"}}, "500": {"description": "Retrieval of data failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters."}}, "summary": "Get cable system topology view, attributes and repeaters details", "description": "Use this API to fetch cable system topology, attributes and repeaters details.\n\nPrerequisite: Cable system, repeater and slte descriptor files should be imported.\n", "parameters": [{"required": true, "type": "string", "description": "Tab name inside topology page.\n 1) 'Topology' to view topology details\n 2) 'Attributes' to view cable attribute details\n 3) 'Repeater' to view repeater details", "name": "resourceType", "in": "query"}, {"required": true, "type": "string", "description": "Cable system name", "name": "cableSystem", "in": "query"}, {"required": false, "type": "string", "description": "Enter cable station to query Topology or Repeaters", "name": "cableStation", "in": "query"}, {"required": false, "type": "string", "description": "Enter segment to query Repeater", "name": "segment", "in": "query"}, {"required": false, "type": "string", "description": "Enter customer name to query Topology or Repeater", "name": "customer", "in": "query"}, {"required": false, "type": "string", "description": "Enter fiber pair to query Repeater or Topology", "name": "fiberPair", "in": "query"}], "tags": ["Cable system Details"]}}, "/submarine/api/v1/srs/scanRepeaters": {"post": {"responses": {"200": {"description": "Scan successfully initiated.", "schema": {"type": "object", "properties": {"status": {"type": "string"}, "message": {"type": "string"}}, "title": "ScanInitaiedConfirmationMessage"}}, "500": {"description": "Scan initiation failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find ncId parameter."}}, "summary": "Initatiate new scan", "description": "Use this API to start/view a submarine scan.\n\nPrerequisite: NE must be enrolled with ISS/OSIC card.\n", "parameters": [{"required": true, "type": "string", "description": "NC ID of Network element", "name": "ncId", "in": "query"}, {"schema": {"$ref": "#/definitions/scanNow"}, "required": true, "description": "Scan params needed to initiate the scan.", "name": "scanParams", "in": "body"}], "tags": ["Manage repeaters scan"]}, "delete": {"responses": {"200": {"description": "Successfully deleted scan record."}, "500": {"description": "Deletion of scan record failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find scanId parameter."}}, "summary": "Delete Scan Record", "description": "Use this API to delete the scan record for a particular scanid.\n\nPrerequisite: Scan record must exist for specified scanId.\n", "parameters": [{"schema": {"$ref": "#/definitions/ids"}, "required": true, "description": "Scan Id of the scan to be deleted", "name": "ids", "in": "body"}], "tags": ["Manage repeaters scan"]}, "get": {"responses": {"200": {"description": "Successfully retrieved scan details.", "schema": {"type": "object", "properties": {"data": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"additionalAttributes": {"type": "object"}, "scanData": {"items": {"type": "object", "properties": {"familyType": {"type": "object", "properties": {"value": {"type": "string"}}}, "span_loss_x": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "repeater_address": {"type": "object", "properties": {"value": {"type": "string"}}}, "iff_y": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "iff_x": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "raw_hex_x": {"type": "object", "properties": {"value": {"type": "string"}}}, "raw_hex_y": {"type": "object", "properties": {"value": {"type": "string"}}}, "scan_id": {"type": "object", "properties": {"value": {"type": "string"}}}, "pump_current_x": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "label": {"type": "object", "properties": {"value": {"type": "string"}}}, "raw_pump_current_x": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "raw_pump_current_y": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "status": {"type": "object", "properties": {"value": {"type": "string"}}}, "direction": {"type": "object", "properties": {"value": {"type": "string"}}}, "span_loss_y": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "pump_current_y": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "output_x": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "output_y": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "raw_sll_x": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "raw_sll_y": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "RepeaterSystem": {"type": "object", "properties": {"value": {"type": "string"}}}, "result_time": {"type": "object", "properties": {"value": {"type": "string"}}}, "raw_rll_y": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "raw_rll_x": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "input_x": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}, "input_y": {"type": "object", "properties": {"alarmSeverity": {"type": "string"}, "value": {"type": "string"}}}}}, "type": "array"}}}, "type": {"type": "string"}, "id": {"type": "string"}}}}, "title": "ScanDetailsData"}}, "500": {"description": "Retrieval of scan data failed, error message provided in logs and response."}, "400": {"description": "Bad request. Invalid parameters, could not find scanId parameter."}}, "summary": "Get Scan Details", "description": "Use this API to fetch the scan details for a particular scan.\n\nPrerequisite: SRS scan must exist for specified scan id.\n", "parameters": [{"required": true, "type": "string", "description": "Scan Id of a particular scan", "name": "scanId", "in": "query"}, {"required": true, "type": "string", "description": "Family type of the repeater system", "name": "rptr_sys_family", "in": "query"}, {"required": false, "type": "string", "description": "Scan data of given band, applicable for FAMILY_D", "name": "band", "in": "query"}], "tags": ["Manage repeaters scan"]}}}, "schemes": ["http", "https"], "produces": ["application/json"], "basePath": "/", "tags": [{"name": "Manage repeaters scan", "description": "Starts a new submarine Repeater Scan"}, {"name": "History scans", "description": "Get history scans"}, {"name": "Schedule scans", "description": "Schedule a Scan"}, {"name": "Configuration loss", "description": "Get configuration loss"}, {"name": "Set baseline scan", "description": "Set baseline scan"}, {"name": "Import", "description": "Import scan data, cable system, slte system, repeater system files. Delete repeater system, slte system and cable system files"}, {"name": "Export", "description": "Export data to file"}, {"name": "Cable system Details", "description": "Get cable system logical view, attributes and repeaters"}, {"name": "Commit / Cleanup cable system configuration", "description": "Commit / Cleanup cable system configuration for a customer"}, {"name": "Trend view", "description": "Trend view of scan"}, {"name": "Wetplant Components", "description": "Get the Wetplant component's optical power details"}], "definitions": {"deleteDescriptorFile": {"type": "object", "description": "Repeater, Slte, Cable descriptor files to be deleted", "properties": {"data": {"type": "object", "properties": {"attributes": {"properties": {"repeater_attributes": {"type": "object", "properties": {"file_name": {"type": "string"}, "cable_system_name": {"type": "string"}}}, "cable_attributes": {"type": "object", "properties": {"cable_system_name": {"type": "string"}}}, "slte_attributes": {"type": "object", "properties": {"cable_system_name": {"type": "string"}, "customer_name": {"type": "string"}}}}}}}}}, "configLoss": {"type": "object", "description": "Config loss parameters for specified repeater system.", "properties": {"facilityAid": {"type": "string", "description": "Facility "}, "rxLoss": {"type": "string", "description": "Rx loss in db"}, "ncId": {"type": "string", "description": "ncId of the network element.."}, "txLoss": {"type": "string", "description": "Tx loss in db"}}}, "ids": {"type": "object", "description": "Scan Ids of the scans to be deleted/exported", "properties": {"ids": {"items": {"type": "string"}, "type": "array"}}}, "commitCableSystem": {"type": "object", "description": "Add to inventory /Remove from inventory cable system configuration", "properties": {"data": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"operation_type": {"type": "string"}, "slte_attributes": {"type": "object", "properties": {"cable_system_name": {"type": "string"}, "customer_name": {"type": "string"}}}}}}}}}, "scanThreshold": {"type": "object", "description": "Set baseline parameteres", "properties": {"data": {"items": {"type": "object", "properties": {"attributes": {"properties": {"baselineDetails": {"properties": {}}, "neDetails": {"properties": {"facilityAid": {"type": "string"}, "scanId": {"type": "string"}, "rptrSysFamily": {"type": "string"}, "ncId": {"type": "string"}}}}}}}, "type": "array"}}}, "scheduleScan": {"type": "object", "description": "Schedule Scan parameteres", "properties": {"attributes": {"properties": {"scheduleDetails": {"properties": {"scheduleTime": {"default": "2030-09-30T06:46:43+05:30", "type": "string"}, "scheduleFrequency": {"default": "ONCE", "type": "string"}, "scheduleWeeklyDays": {"properties": {"wed": {"default": "OFF", "type": "string"}, "sun": {"default": "OFF", "type": "string"}, "fri": {"default": "OFF", "type": "string"}, "tue": {"default": "OFF", "type": "string"}, "mon": {"default": "OFF", "type": "string"}, "thu": {"default": "OFF", "type": "string"}, "sat": {"default": "OFF", "type": "string"}}}, "dayofMonth": {"default": "20", "type": "string"}}}, "neDetails": {"properties": {"neType": {"default": "6500", "type": "string"}, "neName": {"default": "TID-1", "type": "string"}, "ncId": {"default": "3983102e-9d66-3820-xxx-9b7a042c6539", "type": "string"}}}, "scheduleName": {"default": "Schedule-1", "type": "string"}}}, "repeaterAID": {"default": "OTM2-0-0", "type": "string"}}}, "scanNow": {"type": "object", "description": "Parameters for initiating scan.", "properties": {"facilityAid": {"type": "string", "description": "Facility AID of the repeater system on which scan need to be initiated."}, "label": {"type": "string", "description": "scan label."}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_test_and_diagnostics.json b/tapi/resources/MCP_4.0.0_test_and_diagnostics.json
deleted file mode 100644
index fcf45857dbfe213ea3849c1f329e517783162c00..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_test_and_diagnostics.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Perform test and diagnostics operations for fault isolation and diagnostics purpose", "title": "Test and diagnostics"}, "paths": {"/tdc/api/v1/tests/pwOperations": {"post": {"responses": {"404": {"description": "Testing resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Start test request accepted", "schema": {"$ref": "#/definitions/TestResultsRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "409": {"description": "Device is LOA", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/PwTestRo"}, "description": "Pseudowire test request.<p>Options for type are ping and traceroute.<p>Keys of testParameters are count, encapType, packetSize, replyMode, segment, and timeout.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["tdcapiv1tests"], "summary": "Start a Pseudowire test: ping", "consumes": ["application/json"], "operationId": "startPwTest"}}, "/tdc/api/v2/diag/operMeas/powerPms": {"post": {"responses": {"404": {"description": "Resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Request accepted", "schema": {"$ref": "#/definitions/OperMeasRO"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request. Input validation error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves optical power PM data for a given service or a given ROADM line", "parameters": [{"schema": {"$ref": "#/definitions/OpticalPowerRequest"}, "description": "Optical Power(PMs) request data", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["tdcapiv2diagoperMeas"], "summary": "Retrieves Optical Power PM data for a given service", "consumes": ["application/json"], "operationId": "startPowerDiag"}}, "/tdc/api/v1/tests/{testId}/cancel": {"delete": {"responses": {"404": {"description": "Test is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Test cancelled", "schema": {"$ref": "#/definitions/TestResultsRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"required": true, "type": "string", "name": "testId", "in": "path"}], "produces": ["application/json"], "tags": ["tdcapiv1tests"], "summary": "Cancel an in progress test", "consumes": ["application/json"], "operationId": "cancelInProgressTest"}}, "/tdc/api/v1/tests/cfmOperations": {"post": {"responses": {"404": {"description": "Testing resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Start test request accepted", "schema": {"$ref": "#/definitions/TestResultsRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "409": {"description": "Testing resource is under testing or device is LOA", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/CfmTestRo"}, "description": "CFM test request.<p>Options for type are loopback, linktrace.<p>Options for idType of remotePoint are macAddress, tpes.<p>Keys of testParameters for loopback are count, data, interval, priority and timeout.<p>Keys of testParameters for linktrace are priority and ttl.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["tdcapiv1tests"], "summary": "Start a CFM test: linktrace, loopback", "consumes": ["application/json"], "operationId": "startCfmTest"}}, "/tdc/api/v1/diag/fiberloss": {"get": {"responses": {"404": {"description": "Resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Request accepted.", "schema": {"$ref": "#/definitions/FiberLossResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves the measured fiber loss data on per uni-directional links along the specified service path. <p>.", "parameters": [{"description": "One or multiple service or link FRE id(s) separated by comma.", "required": true, "type": "string", "name": "freIds", "in": "query"}], "produces": ["application/json"], "tags": ["tdcapiv1diagfiberloss"], "summary": "Retrieve measured fiber loss data on the path of one service", "consumes": ["application/json"], "operationId": "getFiberLossData"}}, "/tdc/api/v1/tests/Description": {"get": {"responses": {"200": {"description": "request is OK", "schema": {"$ref": "#/definitions/TestCapabilitiesRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>This API is designed to identify what diagnostic test types are supported on a selected service/tunnel for <u>blueplanet</u> UI component to use.<p>The test capabilities includes:<ul><li>Supporting diagnostic test types and the test type description text<li>Service endpoints of each supporting test type:<ul><li> for CFM service, the service endpoint(s) with MEP configured will be included<li> for MPLS service, the PW(s) service endpoint(s) will be included, as well as the service endpoints of the LSP tunnel(s) which the PW(s) is configured on<li> for LSP tunnel, the LSP service endpoints will be included, as well as the service endpoint(s) of the PW(s) which are configured on this tunnel.</ul><li>The name and range of the supporting test parameters per NE of the service endpoint</ul>.", "parameters": [{"description": "FRE id", "required": false, "type": "string", "name": "freId", "in": "query"}], "produces": ["application/json"], "tags": ["tdcapiv1tests"], "summary": "Retrieve test capabilities of a specific FRE.", "operationId": "getTestCapabilities"}}, "/tdc/api/v1/tests/tdmOperations": {"post": {"responses": {"404": {"description": "Testing resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Start test request accepted", "schema": {"$ref": "#/definitions/TestResultsRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "409": {"description": "Testing resource is under testing or device is LOA", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/TdmLbTestRo"}, "description": "Test request", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["tdcapiv1tests"], "summary": "Start a tdm test", "consumes": ["application/json"], "operationId": "startTdmTest"}}, "/tdc/api/v2/diag/operMeas/facilities": {"post": {"responses": {"404": {"description": "Resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Request accepted", "schema": {"$ref": "#/definitions/OperMeasRO"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request. Input validation error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves historical operational measurements data for a given facility on a given Network Element", "parameters": [{"schema": {"$ref": "#/definitions/OperMeasFacRequest"}, "description": "Operational Measurement (facility) request data", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["tdcapiv2diagoperMeas"], "summary": "Retrieves historical operational measurements data for a given facility", "consumes": ["application/json"], "operationId": "startFacilityDiag"}}, "/tdc/api/v2/diag/operMeas": {"post": {"responses": {"404": {"description": "Resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Request accepted", "schema": {"$ref": "#/definitions/OperMeasRO"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request. Input validation error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves current and most recent operational measurements at client layer and supporting line layers of service endpoints", "parameters": [{"schema": {"$ref": "#/definitions/OperMeasRouteRequest"}, "description": "Request for operational measurements data  for a full route", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["tdcapiv2diagoperMeas"], "summary": "Retrieves current operational measurements for a broadband service or infrastructure service ", "consumes": ["application/json"], "operationId": "startRouteDiag"}}, "/tdc/api/v1/diag/spectral": {"get": {"responses": {"404": {"description": "Resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Request accepted.", "schema": {"$ref": "#/definitions/SpectralResponse"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves spectral data which describes the spectral usage at OTSi layer along the specified service path. <p>The spectral data are presented in the TPE as <I>usedCapacity<I>.", "parameters": [{"description": "One or multiple service FRE id(s) separated by comma.", "required": true, "type": "string", "name": "freIds", "in": "query"}], "produces": ["application/json"], "tags": ["tdcapiv1diagspectral"], "summary": "Retrieve spectral data on the path of one service", "consumes": ["application/json"], "operationId": "getSpectralDiagData"}}, "/tdc/api/v1/configProperties": {"put": {"responses": {"201": {"description": "request is accepted for adding", "schema": {"$ref": "#/definitions/PropResponseRo"}}, "200": {"description": "request is accepted for updating", "schema": {"$ref": "#/definitions/PropResponseRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/PropRequestRo"}, "description": "Property create/update request.<p>Name of the attributes holds the new/to-be-updated property name.<p>Value of the attributes holds the new/to-be-updated property value.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["tdcapiv1configProperties"], "summary": "Add/update a property by property name.", "operationId": "createUpdateProp"}, "get": {"responses": {"200": {"description": "request is OK", "schema": {"$ref": "#/definitions/PropResponseRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "produces": ["application/json"], "description": "", "tags": ["tdcapiv1configProperties"], "summary": "Retrieve all properties.", "operationId": "getAllProps"}}, "/tdc/api/v1/configProperties/{propertyName}": {"delete": {"responses": {"200": {"description": "request is accepted", "schema": {"$ref": "#/definitions/PropResponseRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "property name", "required": true, "type": "string", "name": "propertyName", "in": "path"}], "produces": ["application/json"], "tags": ["tdcapiv1configProperties"], "summary": "Delete a property by property name.", "operationId": "deletePropByName"}, "get": {"responses": {"200": {"description": "request is OK", "schema": {"$ref": "#/definitions/PropResponseRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "Property name", "required": true, "type": "string", "name": "propertyName", "in": "path"}], "produces": ["application/json"], "tags": ["tdcapiv1configProperties"], "summary": "Retrieve property by property name.", "operationId": "getPropValueByName"}}, "/tdc/api/v1/tests": {"get": {"responses": {"200": {"description": "request is OK", "schema": {"$ref": "#/definitions/TestListRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Test type is not supported", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"enum": ["benchmark", "cfmLinktrace", "cfmLoopback", "loopback", "lspPing", "lspTraceroute", "tdmLoopback", "pwPing"], "description": "Optional, test type", "required": false, "in": "query", "type": "string", "name": "testType"}, {"description": "Optional, service FRE id", "required": false, "type": "string", "name": "freId", "in": "query"}, {"description": "Optional, One or multiple test point TPE id(s) separated by comma", "required": false, "type": "string", "name": "tpeIds", "in": "query"}, {"description": "Optional, One or multiple test network construct id(s) separated by comma", "required": false, "type": "string", "name": "ncIds", "in": "query"}, {"description": "Optional, partial or full user annotation", "required": false, "type": "string", "name": "userAnnotation", "in": "query"}], "produces": ["application/json"], "tags": ["tdcapiv1tests"], "summary": "Retrieve test results list.", "operationId": "getTestList"}}, "/tdc/api/v1/pageLoad/load": {"get": {"responses": {"200": {"description": "request is OK", "schema": {"$ref": "#/definitions/TestCapabilitiesRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "<p>This API is designed to identify what diagnostic test types are supported on a selected service/tunnel for <u>blueplanet</u> UI component to use.<p>The test capabilities includes:<ul><li>Supporting diagnostic test types and the test type description text<li>Service endpoints of each supporting test type:<ul><li> for CFM service, the service endpoint(s) with MEP configured will be included<li> for MPLS service, the PW(s) service endpoint(s) will be included, as well as the service endpoints of the LSP tunnel(s) which the PW(s) is configured on<li> for LSP tunnel, the LSP service endpoints will be included, as well as the service endpoint(s) of the PW(s) which are configured on this tunnel.</ul><li>The name and range of the supporting test parameters per NE of the service endpoint</ul>.", "parameters": [{"description": "FRE id", "required": false, "type": "string", "name": "freId", "in": "query"}, {"description": "Included information. Allowable values are testCapabilities, ccStatus, lspOperationalStatus, pwOperationalStatus, tdmStatus (comma separated for multiple)", "required": false, "type": "string", "name": "includedInformation", "in": "query"}], "produces": ["application/json"], "tags": ["tdcapiv1pageLoad"], "summary": "Retrieve test capabilities and operational status (ccm, pw, lsp, tdm) of a specific FRE.", "operationId": "getPageLoadInformation"}}, "/tdc/api/v1/operationalStatus": {"get": {"responses": {"200": {"description": "request is OK", "schema": {"$ref": "#/definitions/OperStatusResultsRo"}}, "404": {"description": "Resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "A service FRE id.", "required": true, "type": "string", "name": "freId", "in": "query"}, {"enum": ["ccStatus", "lspOperationalStatus", "pwOperationalStatus", "tdmStatus"], "description": "Type of operational status", "required": true, "in": "query", "type": "string", "name": "osTypeString"}], "produces": ["application/json"], "tags": ["tdcapiv1operationalStatus"], "summary": "Retrieve operational status.", "operationId": "getOperStatus"}}, "/tdc/api/v1/diag/pms/prfbers": {"get": {"responses": {"200": {"description": "Request accepted", "schema": {"$ref": "#/definitions/PmDiagResponse"}}, "404": {"description": "Resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request. Input validation error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API tests pre-FEC BER values at service endpoints against system wide thresholds. <p>", "parameters": [{"description": "Test pre-FEC BER for the given list of service freIds", "items": {"type": "string"}, "required": true, "collectionFormat": "multi", "in": "query", "type": "array", "name": "freIds"}, {"description": "(Optional) Test Pre-FEC BER with reset untimed IDF (default false). If reset, MCP will reset untimed IDF 15 Secs after service channel becomes DOC managed, wait for another 15 sec and then retrieve pre-FEC BER data from untimed bin for the test;Otherwise, MCP will retrieve pre-FEC BER data from untimed bin directly for the test", "required": false, "type": "boolean", "name": "resetIdf", "in": "query"}, {"description": "(Optional) The Pre-FEC Signal Degrade Threshold (BER, default 1.36E-3)", "format": "double", "required": false, "in": "query", "type": "number", "name": "degradeThreshold"}, {"description": "(Optional) The Pre-FEC Signal Fail Threshold (BER, default 3.80E-3)", "format": "double", "required": false, "in": "query", "type": "number", "name": "failThreshold"}], "produces": ["application/json"], "tags": ["tdcapiv1diagpmsprfbers"], "summary": "Test pre-FEC BER for the given list of provisioned services or infrastructure links", "operationId": "checkPrefecBer"}}, "/tdc/api/v1/diag/spectral/allocations": {"get": {"responses": {"404": {"description": "Resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Request accepted.", "schema": {"$ref": "#/definitions/SpectralAllocRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API retrieves spectral allocation data which describes the spectrum usage at OTSi layer for each roadm lines along service path. <p>The spectral allocation data are presented in photonic services as <I>photonicSpectrumPackage<I>.", "parameters": [{"description": "One or multiple service FRE id(s) separated by comma.", "required": true, "type": "string", "name": "freIds", "in": "query"}], "produces": ["application/json"], "tags": ["tdcapiv1diagspectral"], "summary": "Retrieve spectral allocation data for path", "consumes": ["application/json"], "operationId": "getSpectralAllocData"}}, "/tdc/api/v2/diag/operMeas/reset": {"post": {"responses": {"404": {"description": "Resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Request accepted", "schema": {"$ref": "#/definitions/PmResetRO"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Bad request. Input validation error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "This API resets current operational measurements data for a broadband service or infrastructure service", "parameters": [{"schema": {"$ref": "#/definitions/PmResetRequest"}, "description": "Operational PM reset request data", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["tdcapiv2diagoperMeas"], "summary": "Reset current operational measurements for a broadband service or infrastructure service", "consumes": ["application/json"], "operationId": "resetPms"}}, "/tdc/api/v1/tests/benchmarkOperations": {"post": {"responses": {"404": {"description": "Testing resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Start test request accepted", "schema": {"$ref": "#/definitions/TestResultsRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "409": {"description": "Testing resource is under testing or device is LOA", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/BmTestRo"}, "description": "Test request", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["tdcapiv1tests"], "summary": "Start a benchmark test", "consumes": ["application/json"], "operationId": "startBmTest"}}, "/tdc/api/v1/tests/lspOperations": {"post": {"responses": {"404": {"description": "Testing resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Start test request accepted", "schema": {"$ref": "#/definitions/TestResultsRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "409": {"description": "Device is LOA", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/LspTestRo"}, "description": "LSP test request.<p>Options for type are ping, traceroute.<p>Keys of testParameters for ping are count, encapType, packetSize, replyMode, timeout and ttl.<p>Keys of testParameters for traceroute are encapType, replyMode, timeout and ttl.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["tdcapiv1tests"], "summary": "Start a LSP test: ping, traceroute", "consumes": ["application/json"], "operationId": "startLspTest"}}, "/tdc/api/v1/tests/loopbackOperations": {"post": {"responses": {"404": {"description": "Testing resource is not found", "schema": {"$ref": "#/definitions/Errors"}}, "202": {"description": "Start test request accepted", "schema": {"$ref": "#/definitions/TestResultsRo"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "Invalid input", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/LbTestRo"}, "description": "Loopback test request.", "required": true, "name": "body", "in": "body"}], "produces": ["application/json"], "tags": ["tdcapiv1tests"], "summary": "Start a photonics loopback test", "consumes": ["application/json"], "operationId": "startLbTest"}}, "/tdc/api/v1/tests/{testId}": {"get": {"responses": {"200": {"description": "request is OK", "schema": {"$ref": "#/definitions/TestResultsRo"}}, "404": {"description": "Test is not found", "schema": {"$ref": "#/definitions/Errors"}}, "500": {"description": "Internal system error", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"description": "test identifier", "required": true, "type": "string", "name": "testId", "in": "path"}], "produces": ["application/json"], "tags": ["tdcapiv1tests"], "summary": "Retrieve test record for a specific testId", "operationId": "getTestRecordById"}}}, "schemes": ["http", "https"], "tags": [{"name": "tdcapiv1configProperties", "description": "Manage the test and diagnostics configuration properties"}, {"name": "tdcapiv1diagfiberloss", "description": "Retrieves fiber loss data"}, {"name": "tdcapiv1diagpmsprfbers", "description": "Test Pre-FEC (Forward Error Correction) Bit Error Rate"}, {"name": "tdcapiv1diagspectral", "description": "Retrieves spectral data"}, {"name": "tdcapiv1operationalStatus", "description": "Retrieves operational status"}, {"name": "tdcapiv1pageLoad", "description": "Perform testing operations"}, {"name": "tdcapiv1tests", "description": "Perform testing operations"}, {"name": "tdcapiv2diagoperMeas", "description": "Retrieve or Reset Operational Measurements for a service"}], "basePath": "/", "definitions": {"AdditionalAttributes": {"type": "object"}, "OperMeasRO": {"type": "object", "properties": {"meta": {"$ref": "#/definitions/MetaData"}, "data": {"$ref": "#/definitions/OperMeasData"}}}, "ErrorSource": {"type": "object", "properties": {"parameter": {"type": "string"}, "pointer": {"type": "string"}}}, "Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "PmReading": {"type": "object", "properties": {"parameterNative": {"type": "string"}, "binState": {"type": "string"}, "binType": {"type": "string"}, "value": {"type": "string"}, "alert": {"type": "string"}, "threshold": {"type": "string"}, "frequency": {"type": "string"}, "startTime": {"type": "string"}, "reportingFacility": {"type": "string"}, "facilityType": {"type": "string"}, "parameter": {"type": "string"}}}, "PmResetRequest": {"type": "object", "properties": {"data": {"$ref": "#/definitions/PmResetContext"}}}, "PmResetSummary": {"type": "object", "properties": {"status": {"type": "string"}, "error": {"type": "string"}}}, "PropResponseRo": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/PropertyData"}, "type": "array"}}}, "PmResetRO": {"type": "object", "properties": {"data": {"$ref": "#/definitions/PmResetData"}}}, "TimeRange": {"type": "object", "properties": {"startTime": {"type": "string"}, "endTime": {"type": "string"}, "type": {"enum": ["relative", "absolute"], "type": "string"}, "value": {"type": "string"}, "unit": {"enum": ["days", "minutes", "months", "weeks"], "type": "string"}}}, "PwTestRo": {"type": "object", "properties": {"data": {"$ref": "#/definitions/MplsTestData"}}}, "FiberLossRelationships": {"type": "object", "properties": {"fre": {"$ref": "#/definitions/OneToOneRelationship"}}}, "PropertyData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/Attributes"}, "type": {"enum": ["PROPERTY_DATA", "DELETED_PROP_DATA"], "type": "string"}, "id": {"type": "string"}}}, "OperMeasDataAttributes": {"type": "object", "properties": {"timeStamp": {"type": "string"}, "pmFacilities": {"items": {"$ref": "#/definitions/PmFacility"}, "type": "array"}, "pmType": {"enum": ["CHANNEL_POWER", "TOTAL_POWER", "OSC_POWER", "PREFEC_BER", "SPECTRUM", "OPER_MEASMNT"], "type": "string"}, "granularity": {"type": "string"}}}, "PmData": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/PmDataRelationships"}, "attributes": {"$ref": "#/definitions/PmDataAttributes"}, "type": {"enum": ["PM_DIAGNOSTICS"], "type": "string"}, "id": {"type": "string"}}}, "PmResetDataAttributes": {"type": "object", "properties": {"resetSummary": {"$ref": "#/definitions/PmResetSummary"}, "resetTime": {"type": "string"}, "pmFacilities": {"items": {"$ref": "#/definitions/PmResetFacResult"}, "type": "array"}, "granularity": {"type": "string"}}}, "Relationships": {"type": "object", "properties": {"osData": {"$ref": "#/definitions/OneToManyRelationship"}, "fres": {"$ref": "#/definitions/OneToManyRelationship"}}}, "Attributes": {"type": "object"}, "TestRelationships": {"type": "object", "properties": {"tpes": {"$ref": "#/definitions/OneToManyRelationship"}, "networkConstructs": {"$ref": "#/definitions/OneToManyRelationship"}}}, "FiberLossData": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/FiberLossRelationships"}, "attributes": {"$ref": "#/definitions/FiberLossAttrs"}, "type": {"enum": ["fiberLossData"], "type": "string"}, "id": {"type": "string"}}}, "OperMeasFacContext": {"type": "object", "properties": {"ncName": {"type": "string"}, "synchronous": {"default": false, "type": "boolean"}, "range": {"$ref": "#/definitions/TimeRange"}, "granularity": {"enum": ["bin_24_hour", "bin_15_minute"], "type": "string"}, "reportingFacility": {"type": "string"}, "parameterNatives": {"items": {"type": "string"}, "type": "array"}}}, "TestCapabilities": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/TestCapRelationships"}, "attributes": {"$ref": "#/definitions/Attributes"}, "type": {"enum": ["TEST_CAPABILITIES"], "type": "string"}}}, "OneToOneRelationship": {"type": "object", "properties": {"data": {"$ref": "#/definitions/RelationshipData"}}}, "OperStatusResultsRo": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array"}, "data": {"$ref": "#/definitions/OperStatusData"}}}, "TestResultsRo": {"type": "object", "properties": {"data": {"$ref": "#/definitions/TestResults"}}}, "PmValue": {"type": "object", "properties": {"binState": {"type": "string"}, "frequency": {"type": "string"}, "value": {"type": "string"}, "startTime": {"type": "string"}, "alert": {"type": "string"}}}, "SpectralResponse": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array"}, "data": {"$ref": "#/definitions/SpectralResults"}}}, "FiberLossResultsRelationships": {"type": "object", "properties": {"fiberLossData": {"$ref": "#/definitions/OneToManyRelationship"}}}, "PmDataAttributes": {"type": "object", "properties": {"timeStamp": {"type": "string"}, "pmType": {"enum": ["CHANNEL_POWER", "TOTAL_POWER", "OSC_POWER", "PREFEC_BER", "SPECTRUM", "OPER_MEASMNT"], "type": "string"}, "diagResults": {"$ref": "#/definitions/AdditionalAttributes"}, "pmTpes": {"items": {"$ref": "#/definitions/PmTpe"}, "type": "array"}}}, "PropertyRequestData": {"type": "object", "properties": {"attributes": {"$ref": "#/definitions/Attributes"}}}, "SpectralData": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/SpectralDataRelationships"}, "type": {"enum": ["spectralData"], "type": "string"}, "id": {"type": "string"}}}, "BasePmReading": {"type": "object", "properties": {"direction": {"type": "string"}, "display": {"type": "string"}, "binType": {"type": "string"}, "directionNative": {"type": "string"}, "locationNative": {"type": "string"}, "values": {"items": {"$ref": "#/definitions/PmValue"}, "type": "array"}, "location": {"type": "string"}, "threshold": {"type": "string"}, "parameterNative": {"type": "string"}, "parameter": {"type": "string"}, "id": {"type": "string"}, "unit": {"type": "string"}}}, "RelationshipMetaData": {"type": "object", "properties": {"partiallyPopulated": {"default": false, "type": "boolean"}}}, "SpectralAllocRo": {"type": "object", "properties": {"included": {"items": {"type": "object"}, "type": "array"}, "data": {"$ref": "#/definitions/SpectralData"}}}, "PmDataRelationships": {"type": "object", "properties": {"fres": {"$ref": "#/definitions/OneToManyRelationship"}, "tpes": {"$ref": "#/definitions/OneToManyRelationship"}}}, "SpectralDataRelationships": {"type": "object", "properties": {"spectralRoadmlines": {"$ref": "#/definitions/OneToManyRelationship"}}}, "TestDescriptions": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/TestDesRelationships"}, "attributes": {"$ref": "#/definitions/Attributes_"}, "type": {"enum": ["TEST_DESCRIPTIONS"], "type": "string"}, "id": {"type": "string"}}}, "LbTestRo": {"type": "object", "properties": {"data": {"$ref": "#/definitions/LbTestData"}}}, "RelationshipData": {"type": "object", "properties": {"type": {"type": "string"}, "id": {"type": "string"}}}, "LspTestRo": {"type": "object", "properties": {"data": {"$ref": "#/definitions/MplsTestData"}}}, "TdmLbTestData": {"type": "object", "properties": {"userAnnotation": {"type": "string"}, "freId": {"type": "string"}, "localTpeId": {"type": "string"}, "type": {"enum": ["tdmLoopback"], "type": "string"}, "testParameters": {"$ref": "#/definitions/AdditionalAttributes"}}}, "MetaData": {"type": "object", "properties": {"descriptors": {"items": {"type": "string"}, "type": "array"}, "delimiter": {"type": "string"}}}, "OperMeasFacRequest": {"type": "object", "properties": {"data": {"$ref": "#/definitions/OperMeasFacContext"}}}, "OpticalPowerContext": {"type": "object", "properties": {"pollInterval": {"type": "integer", "format": "int32"}, "pmType": {"enum": ["CHANNEL_POWER", "TOTAL_POWER", "OSC_POWER", "PREFEC_BER", "SPECTRUM", "OPER_MEASMNT"], "type": "string"}, "synchronous": {"default": false, "type": "boolean"}, "freIds": {"items": {"type": "string"}, "type": "array"}}}, "PmFacilityRelationships": {"type": "object", "properties": {"ncIds": {"$ref": "#/definitions/OneToOneRelationship"}, "measurementPointTpes": {"$ref": "#/definitions/OneToOneRelationship"}}}, "PmTpe": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/CtpPtpRelationships"}, "isReporting": {"default": false, "type": "boolean"}, "pmReadings": {"items": {"$ref": "#/definitions/PmReading"}, "type": "array"}, "reportingFacility": {"type": "string"}, "portDir": {"enum": ["IN", "OUT"], "type": "string"}, "tpeId": {"type": "string"}}}, "LbTestData": {"type": "object", "properties": {"userAnnotation": {"type": "string"}, "localTpeId": {"type": "string"}, "type": {"enum": ["loopback"], "type": "string"}, "testParameters": {"$ref": "#/definitions/AdditionalAttributes"}}}, "FiberLossAttrs": {"type": "object", "properties": {"fiberLoss": {"type": "object"}}}, "MplsTestData": {"type": "object", "properties": {"localTpeId": {"type": "string"}, "remotePoint": {"$ref": "#/definitions/RemotePoint"}, "freId": {"type": "string"}, "testParameters": {"$ref": "#/definitions/AdditionalAttributes"}, "userAnnotation": {"type": "string"}, "type": {"enum": ["ping", "traceroute"], "type": "string"}}}, "CtpPtpRelationships": {"type": "object", "properties": {"measurementpointTpes": {"$ref": "#/definitions/OneToOneRelationship"}}}, "PmResetFacResult": {"type": "object", "properties": {"status": {"type": "string"}, "resourceId": {"type": "string"}, "errors": {"type": "string"}, "ncName": {"type": "string"}, "aid": {"type": "string"}}}, "CfmTestRo": {"type": "object", "properties": {"data": {"$ref": "#/definitions/CfmTestData"}}}, "OneToManyRelationship": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/RelationshipData"}, "type": "array"}}}, "OperMeasDataRelationships": {"type": "object", "properties": {"fres": {"$ref": "#/definitions/OneToManyRelationship"}, "networkConstructs": {"$ref": "#/definitions/OneToManyRelationship"}}}, "Error": {"type": "object", "properties": {"source": {"$ref": "#/definitions/ErrorSource"}, "code": {"type": "string"}, "detail": {"type": "string"}, "title": {"type": "string"}}}, "BmTestData": {"type": "object", "properties": {"userAnnotation": {"type": "string"}, "freId": {"type": "string"}, "generatorId": {"type": "string"}, "type": {"enum": ["benchmark"], "type": "string"}, "testParameters": {"$ref": "#/definitions/AdditionalAttributes"}}}, "FiberLossResponse": {"type": "object", "properties": {"included": {"items": {"$ref": "#/definitions/FiberLossData"}, "type": "array"}, "data": {"$ref": "#/definitions/FiberLossResults"}}}, "TestResultsAttrs": {"type": "object", "properties": {"localTpeId": {"type": "string"}, "testParameters": {"$ref": "#/definitions/AdditionalAttributes"}, "lastUpdateTime": {"type": "string", "format": "date-time"}, "localNcId": {"type": "string"}, "remoteNcs": {"items": {"type": "string"}, "type": "array"}, "testStatus": {"enum": ["CANCELLED", "CANCELLING", "COMPLETED", "COMPLETING", "FAILED", "IN_PROGRESS", "PENDING", "STARTED", "CANCELED", "CANCELING"], "type": "string"}, "testResults": {"items": {"$ref": "#/definitions/AdditionalAttributes"}, "type": "array"}, "startTime": {"type": "string", "format": "date-time"}, "remotePoints": {"items": {"type": "string"}, "type": "array"}, "testType": {"enum": ["BENCHMARK", "CFM_LINKTRACE", "CFM_LOOPBACK", "LOOPBACK", "LSP_PING", "LSP_TRACEROUTE", "PW_PING", "PW_TRACEROUTE", "TDM_LOOPBACK"], "type": "string"}}}, "TestCapRelationships": {"type": "object", "properties": {"fres": {"$ref": "#/definitions/OneToOneRelationship"}, "testDescriptions": {"$ref": "#/definitions/OneToManyRelationship"}}}, "PropRequestRo": {"type": "object", "properties": {"data": {"$ref": "#/definitions/PropertyRequestData"}}}, "CfmTestData": {"type": "object", "properties": {"localTpeId": {"type": "string"}, "remotePoint": {"$ref": "#/definitions/RemotePoint"}, "freId": {"type": "string"}, "testParameters": {"$ref": "#/definitions/AdditionalAttributes"}, "userAnnotation": {"type": "string"}, "type": {"enum": ["linktrace", "loopback"], "type": "string"}}}, "PmFacility": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/PmFacilityRelationships"}, "resourceDir": {"type": "string"}, "pmReadings": {"items": {"$ref": "#/definitions/BasePmReading"}, "type": "array"}, "ncName": {"type": "string"}, "resourceId": {"type": "string"}, "ncSubnet": {"type": "string"}, "cardType": {"type": "string"}, "startTime": {"type": "string"}, "reportingFacility": {"type": "string"}, "facilityType": {"type": "string"}, "id": {"type": "string"}, "linkEdgeTpeId": {"type": "string"}}}, "PmResetContext": {"type": "object", "properties": {"granularity": {"enum": ["UNTIMED", "BASELINE"], "type": "string"}, "freIds": {"items": {"type": "string"}, "type": "array"}}}, "OperMeasData": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/OperMeasDataRelationships"}, "attributes": {"$ref": "#/definitions/OperMeasDataAttributes"}, "type": {"enum": ["OPER_MEASUREMENTS", "POWER_PMS"], "type": "string"}, "id": {"type": "string"}}}, "FiberLossResults": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/FiberLossResultsRelationships"}, "type": {"enum": ["measuredFiberLossResults"], "type": "string"}, "id": {"type": "string"}}}, "PmDiagResponse": {"type": "object", "properties": {"data": {"$ref": "#/definitions/PmData"}}}, "OperStatusData": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/Relationships"}, "attributes": {"$ref": "#/definitions/Attributes"}, "type": {"enum": ["OPERATIONAL_STATUS"], "type": "string"}, "id": {"type": "string"}}}, "Attributes_": {"type": "object"}, "OperMeasRouteContext": {"type": "object", "properties": {"granularity": {"enum": ["untimed", "bin_24_hour", "bin_15_minute"], "type": "string"}, "synchronous": {"default": false, "type": "boolean"}, "freIds": {"items": {"type": "string"}, "type": "array"}}}, "TestCapabilitiesRo": {"type": "object", "properties": {"included": {"items": {"$ref": "#/definitions/TestDescriptions"}, "type": "array"}, "data": {"$ref": "#/definitions/TestCapabilities"}}}, "TestDesRelationships": {"type": "object", "properties": {"tpes": {"$ref": "#/definitions/OneToManyRelationship"}}}, "TestResults": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/TestRelationships"}, "attributes": {"$ref": "#/definitions/TestResultsAttrs"}, "type": {"enum": ["TEST_RESULTS"], "type": "string"}, "id": {"type": "string"}}}, "RemotePoint": {"type": "object", "properties": {"idType": {"enum": ["macAddress", "tpes"], "type": "string"}, "id": {"type": "string"}}}, "OpticalPowerRequest": {"type": "object", "properties": {"data": {"$ref": "#/definitions/OpticalPowerContext"}}}, "BmTestRo": {"type": "object", "properties": {"data": {"$ref": "#/definitions/BmTestData"}}}, "PmResetData": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/OperMeasDataRelationships"}, "attributes": {"$ref": "#/definitions/PmResetDataAttributes"}, "id": {"type": "string"}}}, "TestListRo": {"type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/TestResults"}, "type": "array"}}}, "OperMeasRouteRequest": {"type": "object", "properties": {"data": {"$ref": "#/definitions/OperMeasRouteContext"}}}, "SpectralResults": {"type": "object", "properties": {"relationships": {"$ref": "#/definitions/Relationships"}, "type": {"enum": ["spectralResults"], "type": "string"}, "id": {"type": "string"}}}, "TdmLbTestRo": {"type": "object", "properties": {"data": {"$ref": "#/definitions/TdmLbTestData"}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_topic_management.json b/tapi/resources/MCP_4.0.0_topic_management.json
deleted file mode 100644
index 18cb89bbb3d771fccc3dc5b00ab95bca8e94090c..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_topic_management.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "1.0", "description": "Specification for managing and monitoring Kafka topics", "title": "Topic Management"}, "paths": {"/kafka-rest/api/v1/topics": {"post": {"responses": {"201": {"description": "Topics created"}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "409": {"description": "Conflict", "schema": {"$ref": "#/definitions/Errors"}}, "207": {"description": "Multi status", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The request has invalid parameters", "schema": {"$ref": "#/definitions/Errors"}}}, "description": "", "parameters": [{"schema": {"$ref": "#/definitions/PostTopics"}, "required": false, "name": "body", "in": "body"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Topic Management"], "summary": "Creates a topic with the provided configuration", "consumes": ["application/json"], "operationId": "createTopic"}}, "/kafka-rest/api/v1/monitor/{topicName}": {"get": {"responses": {"200": {"description": "Request was successful", "schema": {"$ref": "#/definitions/TopicState"}}, "404": {"description": "Consumer group info for topic not found"}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The request has invalid parameters"}}, "description": "", "parameters": [{"required": true, "type": "string", "name": "topicName", "in": "path"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Topic Monitoring"], "summary": "Returns topic state", "operationId": "getTopicState"}}, "/kafka-rest/api/v1/topics/{topicName}": {"put": {"responses": {"408": {"description": "Timeout"}, "404": {"description": "Topic not found"}, "204": {"description": "Request was successful"}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The request has invalid parameters"}}, "description": "", "parameters": [{"required": true, "type": "string", "name": "topicName", "in": "path"}, {"schema": {"$ref": "#/definitions/PutTopic"}, "required": false, "name": "body", "in": "body"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Topic Management"], "summary": "ONLY USE DURING MAINTENANCE WINDOW!! Alters a topic and its metadata", "consumes": ["application/json"], "operationId": "alterTopic"}, "delete": {"responses": {"404": {"description": "Topic not found"}, "204": {"description": "Delete successful"}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "408": {"description": "Timeout"}}, "description": "", "parameters": [{"required": true, "type": "string", "name": "topicName", "in": "path"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Topic Management"], "summary": "ONLY USE DURING MAINTENANCE WINDOW!! Deletes a topic and its metadata", "consumes": ["application/json"], "operationId": "deleteTopic"}, "get": {"responses": {"200": {"description": "Request was successful", "schema": {"$ref": "#/definitions/GetTopic"}}, "404": {"description": "Topic not found"}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "408": {"description": "Timeout"}}, "description": "", "parameters": [{"required": true, "type": "string", "name": "topicName", "in": "path"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Topic Management"], "summary": "Returns a topic and its metadata", "consumes": ["application/json", "application/vnd.api+json"], "operationId": "getTopic"}}, "/kafka-rest/api/v1/monitor/{topicName}/{consumerGroup}": {"get": {"responses": {"200": {"description": "Request was successful", "schema": {"$ref": "#/definitions/ConsumerGroupState"}}, "404": {"description": "Consumer group info for topic not found"}, "500": {"description": "The server encountered an error while processing the request", "schema": {"$ref": "#/definitions/Errors"}}, "400": {"description": "The request has invalid parameters"}}, "description": "", "parameters": [{"required": true, "type": "string", "name": "topicName", "in": "path"}, {"required": true, "type": "string", "name": "consumerGroup", "in": "path"}], "produces": ["application/vnd.api+json", "application/json"], "tags": ["Topic Monitoring"], "summary": "Returns a topic state with respect to a consumergroup", "operationId": "getTopicConsumer"}}}, "tags": [{"name": "Topic Management"}, {"name": "Topic Monitoring"}], "basePath": "/", "definitions": {"PutTopic": {"required": ["data"], "type": "object", "properties": {"data": {"$ref": "#/definitions/Topic"}}, "example": {"data": {"attributes": {"replicationFactor": 3, "meta": {"replicationType": "simpel"}, "config": {"retention.bytes": 2560000, "retention.ms": 604800000}, "partitions": 12}, "type": "topic", "id": "bp.nsi.v2_0.changes.nc"}}}, "Errors": {"type": "object", "properties": {"errors": {"items": {"$ref": "#/definitions/Error"}, "type": "array"}}}, "PostTopics": {"required": ["data"], "type": "object", "properties": {"data": {"items": {"$ref": "#/definitions/Topic"}, "type": "array"}}, "example": {"data": [{"attributes": {"replicationFactor": 3, "meta": {"replicationType": "simpel"}, "config": {"retention.bytes": 2560000, "retention.ms": 604800000}, "partitions": 12}, "type": "topic", "id": "bp.nsi.v2_0.changes.nc"}]}}, "Partition": {"type": "object", "properties": {"replicas": {"items": {"type": "string"}, "type": "array"}, "isr": {"items": {"type": "string"}, "type": "array"}, "partition": {"type": "integer", "format": "int32"}, "lastCommittedOffset": {"type": "integer", "format": "int64"}, "logSize": {"type": "integer", "format": "int64"}, "leader": {"type": "string"}}}, "Topic": {"required": ["id", "type", "attributes"], "type": "object", "description": "A Topic has a name (id), is of type Topic and has attributes reflecting its configuration", "properties": {"attributes": {"required": ["replicationFactor", "partitions", "config", "meta"], "type": "object", "properties": {"replicationFactor": {"type": "integer", "description": "Replication factor", "format": "int32"}, "created": {"type": "string"}, "creator": {"type": "string"}, "meta": {"additionalProperties": {"type": "string"}, "type": "object"}, "config": {"additionalProperties": {"type": "string"}, "type": "object", "description": "The configuration of the topic as outlined in Kafkas documentation"}, "partitions": {"type": "integer", "description": "The number of partitions for the topic", "format": "int32"}}}, "type": {"enum": ["topic"], "type": "string"}, "id": {"type": "string", "description": "The topic name"}}}, "ConsumerGroupState": {"type": "object", "properties": {"data": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"topic": {"type": "string"}, "consumerGroup": {"type": "string"}, "consumers": {"items": {"$ref": "#/definitions/ConsumerState"}, "type": "array"}}}, "type": {"enum": ["consumerState"], "type": "string"}, "id": {"type": "string", "description": "consumergroup"}}}}}, "ConsumerState": {"type": "object", "properties": {"consumerId": {"type": "string"}, "clientId": {"type": "string"}, "partitions": {"items": {"$ref": "#/definitions/Partition"}, "type": "array"}}}, "Error": {"type": "object", "properties": {"status": {"type": "string"}, "code": {"type": "string"}, "detail": {"type": "string"}, "title": {"type": "string"}}}, "GetTopic": {"required": ["data"], "type": "object", "properties": {"data": {"$ref": "#/definitions/Topic"}}, "example": {"data": {"attributes": {"replicationFactor": 3, "meta": {"replicationType": "simpel"}, "config": {"retention.bytes": 2560000, "retention.ms": 604800000}, "partitions": 12}, "type": "topic", "id": "bp.nsi.v2_0.changes.nc"}}}, "TopicState": {"type": "object", "properties": {"data": {"type": "object", "properties": {"attributes": {"type": "object", "properties": {"topic": {"type": "string"}, "partitions": {"items": {"$ref": "#/definitions/Partition"}, "type": "array"}}}, "type": {"enum": ["topicState"], "type": "string"}, "id": {"type": "string", "description": "consumergroup"}}}}}}, "swagger": "2.0"}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_viability.json b/tapi/resources/MCP_4.0.0_viability.json
deleted file mode 100644
index 8d0207b95963f603874a4353a3326d56d4306f35..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_viability.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "v1", "description": "Viability REST API", "title": "Viability"}, "paths": {"/viability/api/v1/ViableRoutes/InsertViabilityData": {}, "/viability/api/v1/ViableRoutes/ViabilityData": {"put": {"responses": {"200": {"description": "Success"}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}, "400": {"description": "Bad Request", "schema": {"$ref": "#/definitions/Error"}}}, "parameters": [{"schema": {"$ref": "#/definitions/VerificationPathDetail"}, "description": "", "required": false, "name": "vp", "in": "body"}], "produces": ["text/plain", "application/json", "text/json"], "tags": ["ViableRoutes"], "summary": "Inserts or updates the VP info received from the user into the database.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "PutViabilityData"}, "post": {"responses": {"500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}}, "parameters": [{"schema": {"$ref": "#/definitions/VerificationPathList"}, "description": "", "required": false, "name": "insertVPRequest", "in": "body"}], "produces": ["text/plain", "application/json", "text/json"], "tags": ["ViableRoutes"], "summary": "Inserts the VP info received from oneplanner into the database.", "consumes": ["application/json-patch+json", "application/json", "text/json", "application/*+json"], "operationId": "InsertViabilityData"}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/VerificationPathList"}}, "500": {"description": "Server Error", "schema": {"$ref": "#/definitions/Error"}}}, "description": "If no freIds are given in the request, then all the verification paths are returned from the database.\r\nIf the freids are given in the request, then those verification paths are returned which contain the freIds given in the request.", "parameters": [{"description": "(Optional) List of comma-separated freIds", "required": false, "type": "string", "name": "freIds", "in": "query"}], "produces": ["application/json"], "tags": ["ViableRoutes"], "summary": "Gets the VP info from the database.", "consumes": [], "operationId": "GetViabilityData"}}}, "swagger": "2.0", "definitions": {"ErrorSource": {"type": "object", "properties": {"parameter": {"type": "string"}, "pointer": {"type": "string"}}}, "VerificationPathDetail": {"required": ["vpName", "aEndVpEndPoint", "zEndVpEndPoint", "status", "vpOmsRoute", "vpSourceNcid", "vpDestinationNcid"], "type": "object", "properties": {"vpSourceNodeName": {"type": "string"}, "status": {"enum": ["NilOnepVPStatus", "Passed", "Failed", "Tentative", "RequiresValidation", "Unknown", "MaxOnepVPStatus"], "type": "string"}, "aEndVpEndPoint": {"$ref": "#/definitions/VpEndPointDetail"}, "vpOmsRoute": {"uniqueItems": false, "items": {"$ref": "#/definitions/VPOmsRoute"}, "type": "array"}, "pmd": {"type": "number", "format": "double"}, "csWavelengthStatusGrid": {"type": "string"}, "vpType": {"enum": ["Fix", "FtvFlex", "SncFlex", "FtvGridded", "SncGridded"], "type": "string"}, "wavelengthrange": {"type": "integer", "format": "int64"}, "startFrequency": {"type": "number", "format": "double"}, "minDispersion": {"type": "number", "format": "double"}, "mcMixType": {"enum": ["NA", "Pure", "Mix"], "type": "string"}, "modulationClass": {"enum": ["MC_UNKNOWN", "MC_UNDEFINED", "MC_40G", "MC_10GNGM", "MC_10G", "MC_2G5", "MC_40GULH", "MC_100G", "MC_100GWL3", "MC_100GWL316QAM", "MC_100GWL34ASK", "MC_100GWL38QAM", "MC_56GBAUD_200G", "MC_56GBAUD_300G", "MC_56GBAUD_400G", "MC_35GBAUD_150G", "MC_35GBAUD_200G", "MC_56GBAUD_350G", "MC_56GBAUD_250G", "MC_56GBAUD_150G", "MC_56GBAUD_100G", "MC_35GBAUD_250G", "MC_35GBAUD_100G", "MC_CUSTOM1", "MC_CUSTOM2", "MC_CUSTOM3", "MC_CUSTOM4", "MC_CUSTOM5", "MC_CUSTOM6"], "type": "string"}, "parentLongPathVpId": {"type": "string"}, "vpName": {"type": "string"}, "maxDispersion": {"type": "number", "format": "double"}, "amplifiedSpanCount": {"type": "integer", "format": "int64"}, "vpDestinationNcid": {"type": "string"}, "zEndVpEndPoint": {"$ref": "#/definitions/VpEndPointDetail"}, "fiberLatency": {"type": "number", "format": "double"}, "validationResult": {"$ref": "#/definitions/ValidationResult"}, "vpDestinationNodeName": {"type": "string"}, "channelSpacing": {"type": "number", "format": "double"}, "txSnrBias": {"type": "number", "format": "double"}, "vpSourceNcid": {"type": "string"}, "mateVpName": {"type": "string"}, "wavelengthInHex": {"type": "string"}, "opsEnabled": {"type": "boolean"}, "endFrequency": {"type": "number", "format": "double"}}}, "VPOmsRoute": {"required": ["freid", "aEndNcid", "routeIndex", "zEndNcid"], "type": "object", "properties": {"zEndNcid": {"type": "string"}, "aEndNcid": {"type": "string"}, "aEndNodeName": {"type": "string"}, "length": {"type": "number", "format": "double"}, "freid": {"type": "string"}, "omsTlName": {"type": "string"}, "routeIndex": {"type": "integer", "format": "int64"}, "zEndNodeName": {"type": "string"}}}, "ValidationResult": {"type": "object", "properties": {"rcvPowerMax": {"type": "number", "format": "double"}, "rcvDispersionMargin": {"type": "number", "format": "double"}, "rcvPowerMin": {"type": "number", "format": "double"}, "failureReasonSeverity": {"enum": ["Info", "Warning", "Error"], "type": "string"}, "failureReasonDescription": {"type": "string"}, "requiredReceiverPowerMax": {"type": "number", "format": "double"}, "lowDispersionMargin": {"type": "number", "format": "double"}, "calcMode": {"enum": ["NilOnepVPMode", "Normal", "Estimation", "Normal40GOnly", "MaxOnepVPMode"], "type": "string"}, "requiredReceiverPowerMin": {"type": "number", "format": "double"}, "highDispersionMargin": {"type": "number", "format": "double"}, "failureReasonSummary": {"type": "string"}, "failureReasonType": {"type": "string"}, "rcvOsnrMargin": {"type": "number", "format": "double"}, "allocMarginPdl": {"type": "number", "format": "double"}, "simulatedOsnr": {"type": "number", "format": "double"}, "maxRxPower": {"type": "number", "format": "double"}, "rcvDispersionMarginMax": {"type": "number", "format": "double"}, "transmitterPowerReduction": {"type": "number", "format": "double"}, "mpi": {"type": "number", "format": "double"}, "dispersionShiftFiberType": {"enum": ["NDSF", "ELEAF", "LEAF", "TWRS", "TWPLUS", "TWC", "DSF", "LS", "OTHER", "TERA", "TWREACH", "PSC", "NDSF_LWP", "EX2000", "EX3000", "TERAWAVE_ULL", "METROCOR", "UNKNOWN"], "type": "string"}, "rcvPowerMinMargin": {"type": "number", "format": "double"}, "e2pn": {"type": "number", "format": "double"}, "prfber": {"type": "number", "format": "double"}, "rcvPowerMaxMargin": {"type": "number", "format": "double"}, "optimumDispersionShift": {"type": "number", "format": "double"}, "adjustedReceiverOsnr": {"type": "number", "format": "double"}, "minOpsRxPowerLevel": {"type": "number", "format": "double"}, "estimatedPadValue": {"type": "number", "format": "double"}, "leVerificationCertification": {"enum": ["None", "DV_Certified", "FTV_Certified", "ROD_Certified", "ALENEO_Certified"], "type": "string"}, "pmdOutage": {"type": "number", "format": "double"}}}, "VpEndPointDetail": {"required": ["dwdmInterface", "cmdType"], "type": "object", "properties": {"dwdmInterface": {"enum": ["UNKNOWN", "DT10GCMB", "DT10GWT", "DTREGEN", "GENERIC_DWDM", "LH_OC48", "OM5000_2P5G_FLEX_OCLD", "OM5000_2P5G_FLEX_OTR_1310", "OM5000_2P5G_FLEX_OTR_850", "OM5000_10G_MOTR_VCAT", "OM5000_10G_OTR", "OM5000_10G_OTR_LAN", "OM5000_10G_ULTRA_OTR_RS8", "OM5000_10G_ULTRA_OTR_SCFEC", "OM5000_10G_ULTRA_OTR_LAN", "OM5000_10G_ULTRA_OTR_FC1200", "OM5000_10G_TUNABLE_OTR", "OM5000_10G_MOTR", "OM5000_10G_MOTR_XR", "OM5000_10G_TUNABLE_MOTR", "OM3500_10G", "OM3500_2P5G", "OME_10G_NGM", "OME_10G_NGM2", "OME_10GbE_NGM", "OME_10G_OTU2", "OME_2P5G", "OME_OTR_10GE_LAN", "OME_OTR_MULTI_SERVICE", "OME_NGM_WT_SONET_SDH_REGIONAL", "OME_NGM_WT_10GE_LAN_REGIONAL", "OME_NGM_WT_OTU", "OME_NGM_WT_OTU_REGIONAL", "OMETOTSC10GSSWSCFEC", "OMETOTSCOTU210G7SCFEC", "OMESMUX10G7SCFEC", "OMETDWDM10G7SCFECAM", "OMETOTSC10GBE11G1SCFEC", "OMEEDC40GOCLDEPMD", "OM5KTOTR10GBE10G7", "OM5KTMOTROTN10G7SCFEC", "MERS10GEEMLXFP", "OM5KOTRFC4004G", "OM5KMOTRFCGBE2G5", "OMEDWDM2X2G5SFP", "OMEEDC40GOCLD", "OMEEDC40GOCLDR", "OMEEDC40GOCLDM", "OMETOTSCFC120011G3SCFEC", "XFPDWDM_NTK588AA_DV_10G7RS8", "XFPDWDM_NTK588AA_DV_11G1RS8", "OMEEDC40GOCLDHSRX", "OMEEDC40GOCLDSUB", "OMEEDC40GOCLDULH", "OMEEDC40GOCLDULHSUB", "OMEEDC100GOCLDEPMD", "OMEEDC100GOCLD", "OMEEDC100GOCLDR", "OMEEDC100GOCLDM", "OMEEDC100GOCLDSUB", "OMEEDC10G7SUB", "OMEEDC11G1SUB", "XFPDWDM_NTK588AA_DV_10G7SCFEC", "XFPDWDM_NTK588AA_DV_11G1SCFEC", "XFPDWDM_NTK583AA_10G7RS8", "XFPDWDM_NTK583AA_11G1RS8", "XFPDWDM_NTK583AA_10G7SCFEC", "XFPDWDM_NTK583AA_11G1SCFEC", "XFPDWDM_NTK587EA_HU_10G7RS8", "XFPDWDM_NTK587EA_HU_11G1RS8", "XFPDWDM_NTK587AA_10G7RS8", "XFPDWDM_NTK587AA_11G1RS8", "CD5430_XFPDWDM_1609002900_10G7FEC6DB", "CD5430_XFPDWDM_1609002900_10G7FEC8DB", "EDC40GWVSELOCLDEPMDCLD", "EDC40GWVSELOCLDCLD", "EDC40GWVSELOCLDRCLD", "EDC40GWVSELOCLDMCLD", "OMEEDC40GOCLDCOLORLESSSUB", "OMEEDC40GOCLDCOLORLESSMH", "OMEEDC100GOCLDCOLORLESSEPMD", "OMEEDC100GOCLDCOLORLESS", "OMEEDC100GOCLDCOLORLESSR", "OMEEDC100GOCLDCOLORLESSM", "OMEEDC100GOCLDCOLORLESSSUB", "OMEEDC100GOCLDCOLORLESSMH", "SFPDWDM_NTK586AA_HW_2G7", "XFPDWDM_NTK583AB_10G7RS8", "XFPDWDM_NTK583AB_11G1RS8", "XFPDWDM_NTK583AB_10G7SCFEC", "XFPDWDM_NTK583AB_11G1SCFEC", "XFPDWDM_NTK589_CBAND_10G7RS8", "XFPDWDM_NTK589_CBAND_11G1RS8", "XFPDWDM_NTK589_CBAND_10G7SCFEC", "XFPDWDM_NTK589_CBAND_11G1SCFEC", "EDC100GWL3OCLDMCLD", "EDC100GWL3OCLDRCLD", "EDC100GWL3OCLDECLD", "EDC100GWL3OCLDLHCLD", "EDC100GWL3OCLDPCLD", "EDC100GWL3OCLDSUBCLD", "TSLM_1_134_5468_900", "TSLM_1_134_5468_901", "TSLM_1_134_5468_903", "OSLM_1_134_5466_900", "OSLM_1_134_5466_901", "OSLM_1_134_5466_903", "EDC40GWVSELOCLDEPMDCLS", "EDC40GWVSELOCLDCLS", "EDC40GWVSELOCLDRCLS", "EDC40GWVSELOCLDMCLS", "EDC100GWL3OCLDMCLS", "EDC100GWL3OCLDRCLS", "EDC100GWL3OCLDECLS", "EDC100GWL3OCLDLHCLS", "EDC100GWL3OCLDPCLS", "TSLM_1_134_5468_904", "OSLM_1_134_5466_904", "OSLM_1_134_5466_905", "TSLM_1_134_5468_905", "OSLM_1_134_5466_904CLS", "TSLM_1_134_5468_904CLS", "OSLM_1_134_5466_900CLS", "TSLM_1_134_5468_900CLS", "OSLM_1_134_5466_903CLS", "TSLM_1_134_5468_903CLS", "OSLM_1_134_5466_901CLS", "TSLM_1_134_5468_901CLS", "OSLM_1_134_5466_905CLS", "TSLM_1_134_5468_905CLS", "OSLM_1_134_5466_904CNTLS", "TSLM_1_134_5468_904CNTLS", "OSLM_1_134_5466_900CNTLS", "TSLM_1_134_5468_900CNTLS", "OSLM_1_134_5466_903CNTLS", "TSLM_1_134_5468_903CNTLS", "OSLM_1_134_5466_901CNTLS", "TSLM_1_134_5468_901CNTLS", "OSLM_1_134_5466_905CNTLS", "TSLM_1_134_5468_905CNTLS", "EDC100GWL3OCLDECNTLS", "EDC100GWL3OCLDPCNTLS", "EDC100GWL3OCLDLHCNTLS", "EDC100GWL3OCLDRCNTLS", "EDC100GWL3OCLDMCNTLS", "EDC100GWL3OCLDSUBCNTLS", "EDC40GWVSELOCLDEPMDCNTLS", "EDC40GWVSELOCLDCNTLS", "EDC40GWVSELOCLDRCNTLS", "EDC40GWVSELOCLDMCNTLS", "EDC40GWVSELOCLDSUBCLD", "EDC40GWVSELOCLDSUBCLS", "EDC40GWVSELOCLDSUBCNTLS", "FLEX3WL3EMDMQPSKCLD1A", "FLEX3WL3EMDMQPSKCLD1A_SDD", "FLEX3WL3EMDMQPSKCLD2A", "FLEX3WL3EMDMQPSKCLD2A_SDD", "FLEX3WL3EMDMQPSKCLD3A_SDD", "FLEX3WL3EMDMQPSKCLD4A_SDD", "FLEX3WL3EMDMQPSKCLD5A", "FLEX3WL3EMDMQPSKCLD5A_SDD", "FLEX3WL3EMDMQPSKCLS1A", "FLEX3WL3EMDMQPSKCLS1A_SDD", "FLEX3WL3EMDMQPSKCLS2A", "FLEX3WL3EMDMQPSKCLS2A_SDD", "FLEX3WL3EMDMQPSKCLS3A_SDD", "FLEX3WL3EMDMQPSKCLS4A_SDD", "FLEX3WL3EMDMQPSKCLS5A", "FLEX3WL3EMDMQPSKCLS5A_SDD", "FLEX3WL3EMDMQPSKCNTLS1A", "FLEX3WL3EMDMQPSKCNTLS1A_SDD", "FLEX3WL3EMDMQPSKCNTLS2A", "FLEX3WL3EMDMQPSKCNTLS2A_SDD", "FLEX3WL3EMDMQPSKCNTLS3A_SDD", "FLEX3WL3EMDMQPSKCNTLS4A_SDD", "FLEX3WL3EMDMQPSKCNTLS5A", "FLEX3WL3EMDMQPSKCNTLS5A_SDD", "FLEX3WL3EMDM16QAMCLD1", "FLEX3WL3EMDM16QAMCLD2", "FLEX3WL3EMDM16QAMCLD3", "FLEX3WL3EMDM16QAMCLD4", "FLEX3WL3EMDM16QAMCLD5", "FLEX3WL3EMDM16QAMCLS1", "FLEX3WL3EMDM16QAMCLS2", "FLEX3WL3EMDM16QAMCLS3", "FLEX3WL3EMDM16QAMCLS4", "FLEX3WL3EMDM16QAMCLS5", "FLEX3WL3EMDM16QAMCNTLS1", "FLEX3WL3EMDM16QAMCNTLS2", "FLEX3WL3EMDM16QAMCNTLS3", "FLEX3WL3EMDM16QAMCNTLS4", "FLEX3WL3EMDM16QAMCNTLS5", "FLEX3WL3EMDMQPSKCLD1B", "FLEX3WL3EMDMQPSKCLD1B_SDD", "FLEX3WL3EMDMQPSKCLD2B", "FLEX3WL3EMDMQPSKCLD2B_SDD", "FLEX3WL3EMDMQPSKCLD3B_SDD", "FLEX3WL3EMDMQPSKCLD4B_SDD", "FLEX3WL3EMDMQPSKCLD5B", "FLEX3WL3EMDMQPSKCLD5B_SDD", "FLEX3WL3EMDMQPSKCLS1B", "FLEX3WL3EMDMQPSKCLS1B_SDD", "FLEX3WL3EMDMQPSKCLS2B", "FLEX3WL3EMDMQPSKCLS2B_SDD", "FLEX3WL3EMDMQPSKCLS3B_SDD", "FLEX3WL3EMDMQPSKCLS4B_SDD", "FLEX3WL3EMDMQPSKCLS5B", "FLEX3WL3EMDMQPSKCLS5B_SDD", "FLEX3WL3EMDMQPSKCNTLS1B", "FLEX3WL3EMDMQPSKCNTLS1B_SDD", "FLEX3WL3EMDMQPSKCNTLS2B", "FLEX3WL3EMDMQPSKCNTLS2B_SDD", "FLEX3WL3EMDMQPSKCNTLS3B_SDD", "FLEX3WL3EMDMQPSKCNTLS4B_SDD", "FLEX3WL3EMDMQPSKCNTLS5B", "FLEX3WL3EMDMQPSKCNTLS5B_SDD", "XCVR_T80W01", "EDC100GWL3OCLDSUBCLS", "WL3NMDM4ASKCLD1", "WL3NMDM4ASKCLD2", "WL3NMDMQPSKCLD3", "WL3NMDM4ASKCLS1", "WL3NMDM4ASKCLS2", "WL3NMDMQPSKCLS3", "WL3NMDM4ASKCNTLS1", "WL3NMDM4ASKCNTLS2", "WL3NMDMQPSKCNTLS3", "WL3NMDM4ASKCS1", "WL3NMDM4ASKCS2", "WL3NMDMQPSKCS3", "WL3EMDMQPSKCS1B", "WL3EMDMQPSKCS1B_SDD", "WL3EMDMQPSKCS2B", "WL3EMDMQPSKCS2B_SDD", "WL3EMDMQPSKCS3B_SDD", "WL3EMDMQPSKCS4B_SDD", "WL3EMDMQPSKCS5B", "WL3EMDMQPSKCS5B_SDD", "EDC100GWL3MDMCS1", "EDC100GWL3MDMCS2", "EDC100GWL3MDMCS3", "EDC100GWL3MDMCS4", "EDC100GWL3MDMCS5", "EDC100GWL3MDMCS6", "EDC100GWL3MDMCS7", "EDC100GWL3MDMCS8", "TSLM_1_134_5468_900CS", "TSLM_1_134_5468_901CS", "TSLM_1_134_5468_903CS", "TSLM_1_134_5468_904CS", "TSLM_1_134_5468_905CS", "OSLM_1_134_5466_900CS", "OSLM_1_134_5466_901CS", "OSLM_1_134_5466_903CS", "OSLM_1_134_5466_904CS", "OSLM_1_134_5466_905CS", "WL3EMDMQPSKCS1", "WL3EMDMQPSKCS2", "WL3EMDMQPSKCS5", "WL3EMDMQPSKCS1_SDD", "WL3EMDMQPSKCS2_SDD", "WL3EMDMQPSKCS3_SDD", "WL3EMDMQPSKCS4_SDD", "WL3EMDMQPSKCS5_SDD", "WL3EMDM16QAMCS1", "WL3EMDM16QAMCS2", "WL3EMDM16QAMCS3", "WL3EMDM16QAMCS4", "WL3EMDM16QAMCS5", "WL3NMDMAMP4ASKCLD", "WL3NMDMAMP4ASKCLS", "WL3NMDMAMP4ASKCNTLS", "WL3NMDMAMP4ASKCS", "WL3NMDMQPSKCNTLS", "WL3NMDM4ASKCNTLS3", "WL3NMDM4ASKCNTLS4", "WL3NMDMQPSKCLD4", "WL3NMDMQPSKCLS4", "WL3NMDMQPSKCNTLS4", "WL3NMDMQPSKCS4", "WL3NMDMQPSKCLD5", "WL3NMDMQPSKCLS5", "WL3NMDMQPSKCNTLS5", "WL3NMDMQPSKCS5", "WL3NMDMQPSKCLD6", "WL3NMDMQPSKCLS6", "WL3NMDMQPSKCNTLS6", "WL3NMDMQPSKCS6", "WL3NMDM4ASKCLD5", "WL3NMDM4ASKCLD6", "WL3NMDM4ASKCLS5", "WL3NMDM4ASKCLS6", "WL3NMDM4ASKCNTLS5", "WL3NMDM4ASKCNTLS6", "WL3NMDM4ASKCS5", "WL3NMDM4ASKCS6", "WL3EMDM8QAMCLD3", "WL3EMDM8QAMCLS3", "WL3EMDM8QAMCNTLS3", "WL3EMDM8QAMCS3", "WL3EMDM8QAMCLD2", "WL3EMDM8QAMCLS2", "WL3EMDM8QAMCNTLS2", "WL3EMDM8QAMCS2", "WL3EMDM8QAMCLD4", "WL3EMDM8QAMCLS4", "WL3EMDM8QAMCNTLS4", "WL3EMDM8QAMCS4", "WL3EMDM8QAMCLD5", "WL3EMDM8QAMCLS5", "WL3EMDM8QAMCNTLS5", "WL3EMDM8QAMCS5", "WL3EMDM8QAMCLD1", "WL3EMDM8QAMCLS1", "WL3EMDM8QAMCNTLS1", "WL3EMDM8QAMCS1", "SFP_1609201900_RS8", "SFP_1609201900_NULL", "FLEX3WL3MDMQPSKCLS6A", "FLEX3WL3EMDMQPSKCLD7A_SDD", "FLEX3WL3EMDMQPSKCLS7A_SDD", "FLEX3WL3EMDMQPSKCNTLS7A_SDD", "WL3EMDMQPSKCS7_SDD", "FLEX3WL3EMDMQPSKCLD8A", "FLEX3WL3EMDMQPSKCLS8A", "FLEX3WL3EMDMQPSKCNTLS8A", "WL3EMDMQPSKCS8", "WL3EMDM16QAMCS6", "WL3EMDM16QAMCS7", "FLEX3WL3EMDM16QAMCNTLS6", "FLEX3WL3EMDM16QAMCNTLS7", "FLEX3WL3EMDM16QAMCLD6", "FLEX3WL3EMDM16QAMCLD7", "FLEX3WL3EMDM16QAMCLS6", "FLEX3WL3EMDM16QAMCLS7", "WL3NMDMQPSKCNTLS7", "FLEX3WL3MDMQPSKCLD2B_1862002901", "FLEX3WL3MDMQPSKCLD2B_1862003901", "FLEX3WL3MDMQPSKCLD1B_1862004900", "FLEX3WL3MDMQPSKCLD1B_1862005900", "FLEX3WL3MDM16QAMCLD2_1862002901", "FLEX3WL3MDM16QAMCLD2_1862003901", "FLEX3WL3MDM16QAMCLD1_1862004900", "FLEX3WL3MDM16QAMCLD1_1862005900", "WL3EMDM8QAMCLD1_1862004900", "WL3EMDM8QAMCLD1_1862005900", "WL3NMDM4ASKCS3", "WL3NMDM4ASKCLD3", "WL3NMDM4ASKCLS3", "WL3NMDM4ASKCNTLS7", "WL3NMDMQPSKCLD7", "WL3NMDMQPSKCLS7", "WL3NMDMQPSKCNTLS8", "WL3NMDMQPSKCS7", "WL3NMDMQPSKCLD8", "WL3NMDMQPSKCLS8", "WL3NMDMQPSKCNTLS9", "WL3NMDMQPSKCS8", "WL3NMDM4ASKCLD9", "WL3NMDM4ASKCLS9", "WL3NMDM4ASKCNTLS8", "WL3NMDM4ASKCS9", "WL3NMDMQPSKCLD1", "WL3NMDMQPSKCLD2", "WL3NMDM4ASKCLD4", "WL3NMDM4ASKCLD7", "WL3NMDMQPSKCLS1", "WL3NMDMQPSKCLS2", "WL3NMDM4ASKCLS4", "WL3NMDM4ASKCLS7", "WL3NMDMQPSKCS1", "WL3NMDMQPSKCS2", "WL3NMDM4ASKCS4", "WL3NMDM4ASKCS7", "FLEX3WL3EMDM16QAMCLD2WS", "FLEX3WL3EMDM16QAMCLS2WS", "FLEX3WL3EMDM16QAMCNTLS2WS", "WL3EMDM16QAMCS2WS", "FLEX3WL3EMDMQPSKCLD2AWS", "FLEX3WL3EMDMQPSKCLS2AWS", "FLEX3WL3EMDMQPSKCNTLS2AWS", "WL3EMDMQPSKCS2WS", "WL3EMDM8QAMCLD2WS", "WL3EMDM8QAMCLS2WS", "WL3EMDM8QAMCNTLS2WS", "WL3EMDM8QAMCS2WS", "FLEX3WL3EMDM16QAMCLD2WS_DC", "FLEX3WL3EMDM16QAMCLS2WS_DC", "FLEX3WL3EMDM16QAMCNTLS2WS_DC", "WL3EMDM16QAMCS2WS_DC", "FLEX3WL3EMDMQPSKCLD2AWS_DC", "FLEX3WL3EMDMQPSKCLS2AWS_DC", "FLEX3WL3EMDMQPSKCNTLS2AWS_DC", "WL3EMDMQPSKCS2WS_DC", "WL3EMDM8QAMCLD2WS_DC", "WL3EMDM8QAMCLS2WS_DC", "WL3EMDM8QAMCNTLS2WS_DC", "WL3EMDM8QAMCS2WS_DC", "WLCFP2ACOBQPSKCLD", "WLCFP2ACOBQPSKCLS", "WLCFP2ACOBQPSKCNTLS", "WLCFP2ACOCQPSKCLD", "WLCFP2ACOCQPSKCLS", "WLCFP2ACOCQPSKCNTLS", "WLCFP2ACOAQPSKCLD", "WLCFP2ACOAQPSKCLS", "WLCFP2ACOAQPSKCNTLS", "FLEX3WL3EMDMQPSKCLD1A_NTK539FJ", "FLEX3WL3EMDM16QAMCLD1_NTK539FJ", "FLEX3WL3EMDMQPSKCLD1A_1345550906", "FLEX3WL3EMDM16QAMCLD1_1345550907", "FLEX3WL3EMDM16QAMCLD3_1345550900", "FLEX3WL3EMDMQPSKCLD3A_SDD_1345550900", "FLEX3WL3EMDM16QAMCLD1_1345550901", "FLEX3WL3EMDMQPSKCLD1A_1345550901", "FLEX3WL3EMDM16QAMCLD2_1345550903", "FLEX3WL3EMDMQPSKCLD2A_1345550903", "FLEX3WL3EMDM16QAMCLD4_1345550904", "FLEX3WL3EMDMQPSKCLD4A_SDD_1345550904", "FLEX3WL3EMDM16QAMCLD5_1345550905", "FLEX3WL3EMDMQPSKCLD5A_1345550905", "FLEX3WL3EMDMQPSKCLD1A_NTK539UJ", "WLAI56GBd200GCLD", "WLAI56GBd200GCLS", "WLAI56GBd200GCNTLS", "WLAI56GBd200GCS", "WLAI56GBd300GCLD", "WLAI56GBd300GCLS", "WLAI56GBd300GCNTLS", "WLAI56GBd300GCS", "WLAI56GBd400GCLD", "WLAI56GBd400GCLS", "WLAI56GBd400GCNTLS", "WLAI56GBd400GCS", "WLAI35GBd200GCLD_V2_1", "WLAI35GBd200GCLS_V2_1", "WLAI35GBd200GCNTLS_V2_1", "WLAI35GBd200GCS_V2_1", "WLAI35GBd150GCLD_V2_1", "WLAI35GBd150GCLS_V2_1", "WLAI35GBd150GCNTLS_V2_1", "WLAI35GBd150GCS_V2_1", "WLAI56GBd200GCLD_1861600900", "WLAI56GBd200GCLD_1861601900", "WLAI56GBd200GCLD_1861602900", "WLAI56GBd200GCLD_1861603900", "WLAI56GBd300GCLD_1861600900", "WLAI56GBd300GCLD_1861601900", "WLAI56GBd300GCLD_1861602900", "WLAI56GBd300GCLD_1861603900", "WLAI56GBd400GCLD_1861600900", "WLAI56GBd400GCLD_1861601900", "WLAI56GBd400GCLD_1861602900", "WLAI56GBd400GCLD_1861603900", "WLCFP2ACOCQPSKCLD_1345560900", "FLEX3WL3MDMQPSKCNTLS6A", "WLAI56GBd150GCLD_V2_1", "WLAI56GBd150GCLS_V2_1", "WLAI56GBd150GCNTLS_V2_1", "WLAI56GBd150GCS_V2_1", "WLAI56GBd100GCLD_V2_1", "WLAI56GBd100GCLS_V2_1", "WLAI56GBd100GCNTLS_V2_1", "WLAI56GBd100GCS_V2_1", "WLAI35GBd250GCLD_V2_1", "WLAI35GBd250GCLS_V2_1", "WLAI35GBd250GCNTLS_V2_1", "WLAI35GBd250GCS_V2_1", "WLAI35GBd100GCLD_V2_1", "WLAI35GBd100GCLS_V2_1", "WLAI35GBd100GCNTLS_V2_1", "WLAI35GBd100GCS_V2_1", "WLAI56GBd350GCLD_V2_1", "WLAI56GBd350GCLS_V2_1", "WLAI56GBd350GCNTLS_V2_1", "WLAI56GBd350GCS_V2_1", "WLAI56GBd250GCLD_V2_1", "WLAI56GBd250GCLS_V2_1", "WLAI56GBd250GCNTLS_V2_1", "WLAI56GBd250GCS_V2_1", "WLAI56GBd200GCLD_V2_1", "WLAI56GBd200GCLS_V2_1", "WLAI56GBd200GCNTLS_V2_1", "WLAI56GBd200GCS_V2_1", "WLAI56GBd300GCLD_V2_1", "WLAI56GBd300GCLS_V2_1", "WLAI56GBd300GCNTLS_V2_1", "WLAI56GBd300GCS_V2_1", "WLAI56GBd400GCLD_V2_1", "WLAI56GBd400GCLS_V2_1", "WLAI56GBd400GCNTLS_V2_1", "WLAI56GBd400GCS_V2_1", "FLEX3WL3EMDMQPSKCLD2AWS_1862002902", "FLEX3WL3EMDMQPSKCLD2AWS_1862003902", "FLEX3WL3EMDM16QAMCLD2WS_1862002902", "FLEX3WL3EMDM16QAMCLD2WS_1862003902", "WLAI56GBd400GCLD_V2_2", "WLAI56GBd350GCLD_V2_2", "WLAI56GBd300GCLD_V2_2", "WLAI56GBd250GCLD_V2_2", "WLAI56GBd200GCLD_V2_2", "WLAI56GBd150GCLD_V2_2", "WLAI56GBd100GCLD_V2_2", "WLAI35GBd250GCLD_V2_2", "WLAI35GBd200GCLD_V2_2", "WLAI35GBd150GCLD_V2_2", "WLAI35GBd100GCLD_V2_2", "WLAI56GBd400GCLS_V2_2", "WLAI56GBd350GCLS_V2_2", "WLAI56GBd300GCLS_V2_2", "WLAI56GBd250GCLS_V2_2", "WLAI56GBd200GCLS_V2_2", "WLAI56GBd150GCLS_V2_2", "WLAI56GBd100GCLS_V2_2", "WLAI35GBd250GCLS_V2_2", "WLAI35GBd200GCLS_V2_2", "WLAI35GBd150GCLS_V2_2", "WLAI35GBd100GCLS_V2_2", "WLAI56GBd400GCNTLS_V2_2", "WLAI56GBd350GCNTLS_V2_2", "WLAI56GBd300GCNTLS_V2_2", "WLAI56GBd250GCNTLS_V2_2", "WLAI56GBd200GCNTLS_V2_2", "WLAI56GBd150GCNTLS_V2_2", "WLAI56GBd100GCNTLS_V2_2", "WLAI35GBd250GCNTLS_V2_2", "WLAI35GBd200GCNTLS_V2_2", "WLAI35GBd150GCNTLS_V2_2", "WLAI35GBd100GCNTLS_V2_2", "WLAI56GBd400GCS_V2_2", "WLAI56GBd350GCS_V2_2", "WLAI56GBd300GCS_V2_2", "WLAI56GBd250GCS_V2_2", "WLAI56GBd200GCS_V2_2", "WLAI56GBd150GCS_V2_2", "WLAI56GBd100GCS_V2_2", "WLAI35GBd250GCS_V2_2", "WLAI35GBd200GCS_V2_2", "WLAI35GBd150GCS_V2_2", "WLAI35GBd100GCS_V2_2", "WLAI56GBd400GCLD_V2_3", "WLAI56GBd350GCLD_V2_3", "WLAI56GBd300GCLD_V2_3", "WLAI56GBd250GCLD_V2_3", "WLAI56GBd200GCLD_V2_3", "WLAI56GBd150GCLD_V2_3", "WLAI56GBd100GCLD_V2_3", "WLAI35GBd250GCLD_V2_3", "WLAI35GBd200GCLD_V2_3", "WLAI35GBd150GCLD_V2_3", "WLAI35GBd100GCLD_V2_3", "WLAI56GBd400GCLS_V2_3", "WLAI56GBd350GCLS_V2_3", "WLAI56GBd300GCLS_V2_3", "WLAI56GBd250GCLS_V2_3", "WLAI56GBd200GCLS_V2_3", "WLAI56GBd150GCLS_V2_3", "WLAI56GBd100GCLS_V2_3", "WLAI35GBd250GCLS_V2_3", "WLAI35GBd200GCLS_V2_3", "WLAI35GBd150GCLS_V2_3", "WLAI35GBd100GCLS_V2_3", "WLAI56GBd400GCNTLS_V2_3", "WLAI56GBd350GCNTLS_V2_3", "WLAI56GBd300GCNTLS_V2_3", "WLAI56GBd250GCNTLS_V2_3", "WLAI56GBd200GCNTLS_V2_3", "WLAI56GBd150GCNTLS_V2_3", "WLAI56GBd100GCNTLS_V2_3", "WLAI35GBd250GCNTLS_V2_3", "WLAI35GBd200GCNTLS_V2_3", "WLAI35GBd150GCNTLS_V2_3", "WLAI35GBd100GCNTLS_V2_3", "WLAI56GBd400GCS_V2_3", "WLAI56GBd350GCS_V2_3", "WLAI56GBd300GCS_V2_3", "WLAI56GBd250GCS_V2_3", "WLAI56GBd200GCS_V2_3", "WLAI56GBd150GCS_V2_3", "WLAI56GBd100GCS_V2_3", "WLAI35GBd250GCS_V2_3", "WLAI35GBd200GCS_V2_3", "WLAI35GBd150GCS_V2_3", "WLAI35GBd100GCS_V2_3", "WLAI56GBd400GCLD_V2_4", "WLAI56GBd350GCLD_V2_4", "WLAI56GBd300GCLD_V2_4", "WLAI56GBd250GCLD_V2_4", "WLAI56GBd200GCLD_V2_4", "WLAI56GBd150GCLD_V2_4", "WLAI56GBd100GCLD_V2_4", "WLAI35GBd250GCLD_V2_4", "WLAI35GBd200GCLD_V2_4", "WLAI35GBd150GCLD_V2_4", "WLAI35GBd100GCLD_V2_4", "WLAI56GBd400GCLS_V2_4", "WLAI56GBd350GCLS_V2_4", "WLAI56GBd300GCLS_V2_4", "WLAI56GBd250GCLS_V2_4", "WLAI56GBd200GCLS_V2_4", "WLAI56GBd150GCLS_V2_4", "WLAI56GBd100GCLS_V2_4", "WLAI35GBd250GCLS_V2_4", "WLAI35GBd200GCLS_V2_4", "WLAI35GBd150GCLS_V2_4", "WLAI35GBd100GCLS_V2_4", "WLAI56GBd400GCNTLS_V2_4", "WLAI56GBd350GCNTLS_V2_4", "WLAI56GBd300GCNTLS_V2_4", "WLAI56GBd250GCNTLS_V2_4", "WLAI56GBd200GCNTLS_V2_4", "WLAI56GBd150GCNTLS_V2_4", "WLAI56GBd100GCNTLS_V2_4", "WLAI35GBd250GCNTLS_V2_4", "WLAI35GBd200GCNTLS_V2_4", "WLAI35GBd150GCNTLS_V2_4", "WLAI35GBd100GCNTLS_V2_4", "WLAI56GBd400GCS_V2_4", "WLAI56GBd350GCS_V2_4", "WLAI56GBd300GCS_V2_4", "WLAI56GBd250GCS_V2_4", "WLAI56GBd200GCS_V2_4", "WLAI56GBd150GCS_V2_4", "WLAI56GBd100GCS_V2_4", "WLAI35GBd250GCS_V2_4", "WLAI35GBd200GCS_V2_4", "WLAI35GBd150GCS_V2_4", "WLAI35GBd100GCS_V2_4", "WLCFP2ACOA4ASKCLD", "WLCFP2ACOA4ASKCLS", "WLCFP2ACOA4ASKCNTLS", "WLCFP2ACOA4ASKCLD2", "WLCFP2ACOA4ASKCLS2", "WLCFP2ACOA4ASKCNTLS2", "WLAI56GBd400GCLD_V2_1_NTK538FR", "WLAI56GBd350GCLD_V2_1_NTK538FR", "WLAI56GBd300GCLD_V2_1_NTK538FR", "WLAI56GBd250GCLD_V2_1_NTK538FR", "WLAI56GBd200GCLD_V2_1_NTK538FR", "WLAI56GBd150GCLD_V2_1_NTK538FR", "WLAI56GBd100GCLD_V2_1_NTK538FR", "WLAI35GBd250GCLD_V2_1_NTK538FR", "WLAI35GBd200GCLD_V2_1_NTK538FR", "WLAI35GBd150GCLD_V2_1_NTK538FR", "WLAI35GBd100GCLD_V2_1_NTK538FR", "WLAI56GBd400GCLD_V2_2_NTK538FR", "WLAI56GBd350GCLD_V2_2_NTK538FR", "WLAI56GBd300GCLD_V2_2_NTK538FR", "WLAI56GBd250GCLD_V2_2_NTK538FR", "WLAI56GBd200GCLD_V2_2_NTK538FR", "WLAI56GBd150GCLD_V2_2_NTK538FR", "WLAI56GBd100GCLD_V2_2_NTK538FR", "WLAI35GBd250GCLD_V2_2_NTK538FR", "WLAI35GBd200GCLD_V2_2_NTK538FR", "WLAI35GBd150GCLD_V2_2_NTK538FR", "WLAI35GBd100GCLD_V2_2_NTK538FR", "WLAI56GBd400GCLD_V2_1_186_1601_900", "WLAI56GBd300GCLD_V2_1_186_1601_900", "WLAI56GBd250GCLD_V2_1_186_1601_900", "WLAI56GBd200GCLD_V2_1_186_1601_900", "WLAI56GBd150GCLD_V2_1_186_1601_900", "WLAI35GBd200GCLD_V2_1_186_1601_900", "WLAI35GBd150GCLD_V2_1_186_1601_900", "WLAI56GBd400GCLD_V2_1_186_1603_900", "WLAI56GBd300GCLD_V2_1_186_1603_900", "WLAI56GBd250GCLD_V2_1_186_1603_900", "WLAI56GBd200GCLD_V2_1_186_1603_900", "WLAI56GBd150GCLD_V2_1_186_1603_900", "WLAI35GBd200GCLD_V2_1_186_1603_900", "WLAI35GBd150GCLD_V2_1_186_1603_900", "WLAI56GBd400GCLD_V2_2_186_1601_900", "WLAI56GBd350GCLD_V2_2_186_1601_900", "WLAI56GBd300GCLD_V2_2_186_1601_900", "WLAI56GBd250GCLD_V2_2_186_1601_900", "WLAI56GBd200GCLD_V2_2_186_1601_900", "WLAI56GBd150GCLD_V2_2_186_1601_900", "WLAI56GBd100GCLD_V2_2_186_1601_900", "WLAI35GBd250GCLD_V2_2_186_1601_900", "WLAI35GBd200GCLD_V2_2_186_1601_900", "WLAI35GBd150GCLD_V2_2_186_1601_900", "WLAI35GBd100GCLD_V2_2_186_1601_900", "WLAI56GBd400GCLD_V2_2_186_1603_900", "WLAI56GBd350GCLD_V2_2_186_1603_900", "WLAI56GBd300GCLD_V2_2_186_1603_900", "WLAI56GBd250GCLD_V2_2_186_1603_900", "WLAI56GBd200GCLD_V2_2_186_1603_900", "WLAI56GBd150GCLD_V2_2_186_1603_900", "WLAI56GBd100GCLD_V2_2_186_1603_900", "WLAI35GBd250GCLD_V2_2_186_1603_900", "WLAI35GBd200GCLD_V2_2_186_1603_900", "WLAI35GBd150GCLD_V2_2_186_1603_900", "WLAI35GBd100GCLD_V2_2_186_1603_900", "WLAI56GBd350GCLD_V2_1_186_1601_900", "WLAI56GBd100GCLD_V2_1_186_1601_900", "WLAI35GBd250GCLD_V2_1_186_1601_900", "WLAI35GBd100GCLD_V2_1_186_1601_900", "WLAI56GBd350GCLD_V2_1_186_1603_900", "WLAI56GBd100GCLD_V2_1_186_1603_900", "WLAI35GBd250GCLD_V2_1_186_1603_900", "WLAI35GBd100GCLD_V2_1_186_1603_900", "WL3EMDM8QAMCLD2WS_1862002902", "WL3EMDM8QAMCLD2WS_1862003902", "WLAI56GBd200GCLD_1861606900", "WLAI56GBd300GCLD_1861606900", "WLAI56GBd400GCLD_1861606900", "WLAI56GBd400GCLD_V2_1_186_1606_900", "WLAI56GBd350GCLD_V2_1_186_1606_900", "WLAI56GBd300GCLD_V2_1_186_1606_900", "WLAI56GBd250GCLD_V2_1_186_1606_900", "WLAI56GBd200GCLD_V2_1_186_1606_900", "WLAI56GBd150GCLD_V2_1_186_1606_900", "WLAI56GBd100GCLD_V2_1_186_1606_900", "WLAI35GBd250GCLD_V2_1_186_1606_900", "WLAI35GBd200GCLD_V2_1_186_1606_900", "WLAI35GBd200GCLD_V2_2_186_1606_900", "WLAI35GBd150GCLD_V2_1_186_1606_900", "WLAI35GBd100GCLD_V2_1_186_1606_900", "WLAI56GBd400GCLD_V2_2_186_1606_900", "WLAI56GBd350GCLD_V2_2_186_1606_900", "WLAI56GBd300GCLD_V2_2_186_1606_900", "WLAI56GBd250GCLD_V2_2_186_1606_900", "WLAI56GBd200GCLD_V2_2_186_1606_900", "WLAI56GBd150GCLD_V2_2_186_1606_900", "WLAI56GBd100GCLD_V2_2_186_1606_900", "WLAI35GBd250GCLD_V2_2_186_1606_900", "WLAI35GBd150GCLD_V2_2_186_1606_900", "WLAI35GBd100GCLD_V2_2_186_1606_900", "WLAI56GBd200GCLD_1920001900", "WLAI56GBd300GCLD_1920001900", "WLAI56GBd400GCLD_1920001900", "WLAI56GBd400GCLD_V2_1_192_0001_900", "WLAI56GBd350GCLD_V2_1_192_0001_900", "WLAI56GBd300GCLD_V2_1_192_0001_900", "WLAI56GBd250GCLD_V2_1_192_0001_900", "WLAI56GBd200GCLD_V2_1_192_0001_900", "WLAI56GBd150GCLD_V2_1_192_0001_900", "WLAI56GBd100GCLD_V2_1_192_0001_900", "WLAI35GBd250GCLD_V2_1_192_0001_900", "WLAI35GBd200GCLD_V2_1_192_0001_900", "WLAI35GBd200GCLD_V2_2_192_0001_900", "WLAI35GBd150GCLD_V2_1_192_0001_900", "WLAI35GBd100GCLD_V2_1_192_0001_900", "WLAI56GBd400GCLD_V2_2_192_0001_900", "WLAI56GBd350GCLD_V2_2_192_0001_900", "WLAI56GBd300GCLD_V2_2_192_0001_900", "WLAI56GBd250GCLD_V2_2_192_0001_900", "WLAI56GBd200GCLD_V2_2_192_0001_900", "WLAI56GBd150GCLD_V2_2_192_0001_900", "WLAI56GBd100GCLD_V2_2_192_0001_900", "WLAI35GBd250GCLD_V2_2_192_0001_900", "WLAI35GBd150GCLD_V2_2_192_0001_900", "WLAI35GBd100GCLD_V2_2_192_0001_900", "OTHER_DWDM_1", "OTHER_DWDM_2", "OTHER_DWDM_3", "OTHER_DWDM_4", "OTHER_DWDM_5", "OTHER_DWDM_6", "OTHER_DWDM_7", "OTHER_DWDM_8", "OTHER_DWDM_9", "OTHER_DWDM_10", "FOREIGN_DWDM_1", "FOREIGN_DWDM_2", "FOREIGN_DWDM_3", "FOREIGN_DWDM_4", "FOREIGN_DWDM_5", "FOREIGN_DWDM_6", "FOREIGN_DWDM_7", "FOREIGN_DWDM_8", "FOREIGN_DWDM_9", "FOREIGN_DWDM_10", "FOREIGN_DWDM_11", "FOREIGN_DWDM_12", "FOREIGN_DWDM_13", "FOREIGN_DWDM_14", "FOREIGN_DWDM_15", "FOREIGN_DWDM_16", "FOREIGN_DWDM_17", "FOREIGN_DWDM_18", "FOREIGN_DWDM_19", "FOREIGN_DWDM_20", "UNMODELED_QPSK100G", "UNMODELED_4ASK100G", "UNMODELED_8QAM150G", "UNMODELED_16QAM200G", "UNMODELED_EDC40G"], "type": "string"}, "coadmAmpType": {"enum": ["LIM", "LIM3", "MLA", "SLA", "DLA", "MLA2", "MLA3", "OME_MLA", "OME_SLA", "OME_MLA2", "OME_MLA3", "OME_LIM", "OME_MLA2v", "OME_XLA", "OME_SAM", "OME_ESAM", "OME_FGA", "OME_PASSIVE_OSC_FILTER", "OME_Dummy_XLA", "none", "TSERIES_RLA", "RLA_1x5", "RSERIES_RLA"], "type": "string"}, "demuxAmpType": {"enum": ["LIM", "LIM3", "MLA", "SLA", "DLA", "MLA2", "MLA3", "OME_MLA", "OME_SLA", "OME_MLA2", "OME_MLA3", "OME_LIM", "OME_MLA2v", "OME_XLA", "OME_SAM", "OME_ESAM", "OME_FGA", "OME_PASSIVE_OSC_FILTER", "OME_Dummy_XLA", "none", "TSERIES_RLA", "RLA_1x5", "RSERIES_RLA"], "type": "string"}, "diaSplitterCouplerType": {"enum": ["CMDA", "BMD2", "none"], "type": "string"}, "diaWssType": {"enum": ["UNKNOWN", "Wss1x5_50GHz", "Wss1x5_100GHz", "Wss1x9_100GHz", "Wss1x9_50GHz", "Wss1x2_100GHz", "Wss1x2_50GHz", "WSS1x2_50GHzSS", "WSS1x9_50GHzTCC", "WSS1x2_100GHzSS", "WSS1x4_100GHzSS", "WSS1x9_50GHz2SLOT", "WSS1x9_Flex", "none", "WSSTwin_1x20", "WSSTwin_1x21", "WSS1x9_Flex_LB", "RLA1x5_WSS", "RLA_12x1_WSS"], "type": "string"}, "diaAmpType": {"enum": ["LIM", "LIM3", "MLA", "SLA", "DLA", "MLA2", "MLA3", "OME_MLA", "OME_SLA", "OME_MLA2", "OME_MLA3", "OME_LIM", "OME_MLA2v", "OME_XLA", "OME_SAM", "OME_ESAM", "OME_FGA", "OME_PASSIVE_OSC_FILTER", "OME_Dummy_XLA", "none", "TSERIES_RLA", "RLA_1x5", "RSERIES_RLA"], "type": "string"}, "cmdType": {"enum": ["CMD4", "CMD4plus", "CMD8", "CPL_SCMD4", "OME_SCMD4", "SCMD8O", "SCMD8F", "CMD44_100GHz", "CMD44_50GHz", "eCMD44_100GHz", "eCMD44_50GHz", "CCMD12", "CCMD8x16", "CCMD16x12", "CCMD8x4", "OBMD1x8", "InternalOtsCMD", "CMD64", "CCMD16", "None"], "type": "string"}, "splitterCouplerType": {"enum": ["CMDA", "BMD2", "none"], "type": "string"}, "padList": {"type": "string"}, "wssType": {"enum": ["UNKNOWN", "Wss1x5_50GHz", "Wss1x5_100GHz", "Wss1x9_100GHz", "Wss1x9_50GHz", "Wss1x2_100GHz", "Wss1x2_50GHz", "WSS1x2_50GHzSS", "WSS1x9_50GHzTCC", "WSS1x2_100GHzSS", "WSS1x4_100GHzSS", "WSS1x9_50GHz2SLOT", "WSS1x9_Flex", "none", "WSSTwin_1x20", "WSSTwin_1x21", "WSS1x9_Flex_LB", "RLA1x5_WSS", "RLA_12x1_WSS"], "type": "string"}}}, "Error": {"type": "object", "properties": {"source": {"$ref": "#/definitions/ErrorSource"}, "code": {"type": "string"}, "detail": {"type": "string"}, "title": {"type": "string"}}}, "VerificationPathList": {"type": "object", "properties": {"VerificationPaths": {"uniqueItems": false, "items": {"$ref": "#/definitions/VerificationPathDetail"}, "type": "array"}}}}}
\ No newline at end of file
diff --git a/tapi/resources/MCP_4.0.0_watcher.json b/tapi/resources/MCP_4.0.0_watcher.json
deleted file mode 100644
index 378e7235b738107e6f92bccee7d1ea2ac652b64f..0000000000000000000000000000000000000000
--- a/tapi/resources/MCP_4.0.0_watcher.json
+++ /dev/null
@@ -1 +0,0 @@
-{"info": {"version": "6.5.4", "description": "Watcher application api", "title": "Watcher"}, "paths": {"/watchers/{uuid}": {"put": {"responses": {"200": {"description": "WatcherCreate", "schema": {"$ref": "#/definitions/WatcherCreate"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"schema": {"$ref": "#/definitions/WatcherUpdate"}, "name": "Body", "in": "body"}, {"x-go-name": "Uuid", "required": true, "type": "string", "name": "uuid", "in": "path"}], "tags": ["Watchers"], "summary": "Update existing Watcher.", "operationId": "updateWatcher", "description": "This will update  Watcher."}, "get": {"responses": {"200": {"description": "Watcher", "schema": {"$ref": "#/definitions/Watcher"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"x-go-name": "Uuid", "required": true, "type": "string", "name": "uuid", "in": "path"}], "tags": ["Watchers"], "summary": "Retrieve single Watcher.", "operationId": "readWatcher", "description": "Retrieve single Watcher."}, "delete": {"responses": {"204": {"description": "Delete204", "schema": {"$ref": "#/definitions/Delete204"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"x-go-name": "Uuid", "required": true, "type": "string", "name": "uuid", "in": "path"}], "tags": ["Watchers"], "summary": "Delete Watcher.", "operationId": "deleteWatcher", "description": "Delete Watcher."}}, "/watchers/{uuid}/triggers": {"get": {"responses": {"200": {"description": "Watcher", "schema": {"$ref": "#/definitions/Watcher"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"x-go-name": "Uuid", "required": true, "type": "string", "name": "uuid", "in": "path"}], "tags": ["Watchers"], "summary": "Retrieve IDs of items which triggered the Watcher.", "operationId": "readWatcherTriggers", "description": "Retrieve Retrieve IDs of items which triggered the Watcher."}}, "/sounds": {"get": {"responses": {"200": {"description": "SoundPath", "schema": {"items": {"$ref": "#/definitions/SoundPath"}, "type": "array"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "summary": "List all sound file available in the server.", "description": "List all available sound files.", "tags": ["Admin"], "operationId": "soundFilenames"}}, "/sounds/{filename}": {"get": {"responses": {"200": {"description": "Empty", "schema": {"$ref": "#/definitions/Empty"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"x-go-name": "Filename", "required": true, "type": "string", "name": "filename", "in": "path"}], "tags": ["Admin"], "summary": "List all sound file available in the server.", "operationId": "readSound", "description": "List all available sound files."}}, "/import/onecontrol": {"post": {"responses": {"200": {"description": "OneCImporterResult", "schema": {"$ref": "#/definitions/OneCImporterResult"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"schema": {"$ref": "#/definitions/OneCImporter"}, "name": "Body", "in": "body"}], "tags": ["Admin"], "summary": "Import watchers in CSV file from  OneControl.", "operationId": "importOneC", "description": "Import watchers."}}, "/resource-attrs": {"get": {"responses": {"200": {"description": "RsAttr", "schema": {"items": {"$ref": "#/definitions/RsAttr"}, "type": "array"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"x-go-name": "Uuid", "type": "string", "name": "uuid", "in": "query"}], "tags": ["Admin"], "summary": "Retrieve all possible attributes of a resource.", "operationId": "getResourceAttrs", "description": "Retrieve all possible attributes of a resource."}}, "/meters/{uuid}": {"get": {"responses": {"200": {"description": "RsAttr", "schema": {"items": {"$ref": "#/definitions/RsAttr"}, "type": "array"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"x-go-name": "Uuid", "required": true, "type": "string", "name": "uuid", "in": "path"}, {"x-go-name": "Force", "type": "boolean", "name": "force", "in": "query"}], "tags": ["Admin"], "summary": "Retrieve available meters for a particular resource", "operationId": "findMeters", "description": "Retrieve available meters for a particular resource from heroic"}}, "/config": {"put": {"responses": {"200": {"description": "AppConfig", "schema": {"$ref": "#/definitions/AppConfig"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"schema": {"$ref": "#/definitions/BaseAppConfig"}, "name": "Body", "in": "body"}], "tags": ["Admin"], "summary": "Update AppConfig.", "operationId": "updateConfig", "description": "Will update AppConfig."}, "get": {"responses": {"200": {"description": "AppConfig", "schema": {"$ref": "#/definitions/AppConfig"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "summary": "Retrieve App configuration.", "description": "This return current AppConfig .", "tags": ["Admin"], "operationId": "readConfig"}}, "/watchers": {"post": {"responses": {"201": {"description": "Watcher", "schema": {"$ref": "#/definitions/Watcher"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"schema": {"$ref": "#/definitions/WatcherCreate"}, "name": "Body", "in": "body"}], "tags": ["Watchers"], "summary": "Create new Watcher.", "operationId": "createWatcher", "description": "This will create a new Watcher."}, "get": {"responses": {"200": {"description": "Watcher", "schema": {"items": {"$ref": "#/definitions/Watcher"}, "type": "array"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"x-go-name": "Sort", "items": {"type": "string"}, "type": "array", "name": "sort", "in": "query"}, {"x-go-name": "Filter", "items": {"type": "string"}, "type": "array", "name": "filter", "in": "query"}, {"x-go-name": "Paging", "type": "string", "name": "paging", "in": "query"}, {"x-go-name": "Facets", "items": {"type": "string"}, "type": "array", "name": "facets", "in": "query"}], "tags": ["Watchers"], "summary": "Retrieve all watchers.", "operationId": "readWatchers", "description": "This will read and return watchers from DB."}}, "/logs": {"put": {"responses": {"204": {"description": "Delete204", "schema": {"$ref": "#/definitions/Delete204"}}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "parameters": [{"schema": {"$ref": "#/definitions/Logging"}, "name": "Body", "in": "body"}], "tags": ["Admin"], "summary": "Update logging configuration.", "operationId": "changeLogs", "description": "Will update logging configuration"}, "get": {"responses": {"200": {"$ref": "#/responses/string"}, "500": {"description": "InternalServerError", "schema": {"$ref": "#/definitions/InternalServerError"}}}, "summary": "Read logging configuration.", "description": "Return the current logging level", "tags": ["Admin"], "operationId": "readLogs"}}}, "schemes": ["https"], "produces": ["application/json"], "basePath": "/watcher/api/v1", "definitions": {"ExecRecord": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "type": "object", "properties": {"watcherName": {"x-go-name": "WatcherName", "type": "string"}, "contentType": {"x-go-name": "ContentType", "type": "string", "description": "The type of the json string of the content field"}, "uuid": {"x-go-name": "Uuid", "type": "string"}, "watcherUuid": {"x-go-name": "WatcherUuid", "type": "string"}, "actionUuid": {"x-go-name": "ActionUuid", "type": "string"}, "triggerCount": {"x-go-name": "TriggerCount", "type": "integer", "format": "int64"}, "content": {"x-go-name": "Content", "type": "string", "description": "The json text of the result of the execution of the action"}, "triggerId": {"x-go-name": "TriggerId", "type": "string", "description": "The ID of the element (ALARM, RESOURCE, ...) which triggered the execution of the action"}, "createdAt": {"x-go-name": "CreatedAt", "type": "string", "format": "date-time"}}}, "AlarmServer": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/kafka", "type": "object", "properties": {"type": {"x-go-name": "Type", "type": "string"}, "id": {"x-go-name": "Id", "type": "string"}, "name": {"x-go-name": "Name", "type": "string"}}}, "UpdateWatcherParams": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"Body": {"$ref": "#/definitions/WatcherUpdate"}}}, "LoggingParams": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"Body": {"$ref": "#/definitions/Logging"}}}, "BaseAppConfig": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "type": "object", "properties": {"schedulerCycle": {"x-go-name": "SchedulerCycle", "type": "integer", "format": "int64"}}}, "UpdateDiscrepancyParams": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"Body": {"$ref": "#/definitions/DConfig"}}}, "OneCAlert": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/engine/importer", "type": "object", "properties": {"AlertOccurenceTime": {"type": "number", "format": "double"}, "EmailIsActive": {"type": "boolean"}, "IsDismissed": {"type": "boolean"}, "Name": {"type": "string"}, "UserId": {"type": "string"}, "ResendDelay": {"type": "integer", "format": "int64"}, "LastActivation": {"type": "number", "format": "double"}, "ReceiverList": {"type": "string"}, "RuleIsActive": {"type": "boolean"}, "Source": {"type": "string"}, "LastOccurenceTime": {"type": "number", "format": "double"}, "Occurences": {"type": "integer", "format": "int64"}, "RuleAction": {"type": "string"}, "Criteria": {"type": "string"}, "IsMatched": {"type": "boolean"}, "EmailRuleAction": {"type": "string"}, "IsActive": {"type": "boolean"}, "Icon": {"type": "string"}}}, "Watcher": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/watchers", "type": "object", "properties": {"conditionCount": {"x-go-name": "ConditionCount", "type": "integer", "format": "int64"}, "execStatus": {"x-go-name": "ExecStatus", "type": "string", "description": "The status of the last execution of the watcher (This is not the status of conditions evaluation)"}, "creator": {"x-go-name": "Creator", "type": "string"}, "resourceProvId": {"x-go-name": "ResourceProvId", "type": "string"}, "actions": {"x-go-name": "Actions", "items": {"$ref": "#/definitions/Action"}, "type": "array", "description": "The list of actions performed by this watcher if its conditions are meet"}, "updatedAt": {"x-go-name": "UpdatedAt", "type": "string", "format": "date-time"}, "createdAt": {"x-go-name": "CreatedAt", "type": "string", "format": "date-time"}, "priority": {"x-go-name": "Priority", "type": "integer", "description": "The priority of the watcher", "format": "int64"}, "uuid": {"x-go-name": "Uuid", "type": "string"}, "execAt": {"x-go-name": "ExecAt", "type": "string", "description": "Last time the watcher has been executed", "format": "date-time"}, "triggerCount": {"x-go-name": "TriggerCount", "type": "integer", "description": "The amount of time the watcher's conditions has been met consecutively", "format": "int64"}, "delay": {"x-go-name": "Delay", "type": "number", "description": "The amount of time (in seconds) to wait for before executing actions", "format": "double"}, "execMessage": {"x-go-name": "ExecMessage", "type": "string"}, "conditions": {"x-go-name": "Conditions", "items": {"$ref": "#/definitions/Condition"}, "type": "array", "description": "The list of conditions evaluated by this watcher during its execution"}, "evalExpr": {"x-go-name": "EvalExpr", "type": "string", "description": "Define how conditions will be evaluated: Example \"C1 AND C2 OR C3\" where Cx is the tag associated to Condition X"}, "description": {"x-go-name": "Description", "type": "string"}, "createdBy": {"x-go-name": "CreatedBy", "type": "string"}, "updatedBy": {"x-go-name": "UpdatedBy", "type": "string"}, "active": {"x-go-name": "Active", "type": "boolean", "description": "The status of the watcher, if it's active or not (inactive watchers are not executed)"}, "resourceUuid": {"x-go-name": "ResourceUuid", "type": "string"}, "resourceAlias": {"x-go-name": "ResourceAlias", "type": "string"}, "sound": {"x-go-name": "Sound", "type": "string"}, "domainId": {"x-go-name": "DomainId", "type": "string"}, "name": {"x-go-name": "Name", "type": "string"}, "type": {"$ref": "#/definitions/WatcherType"}, "actionCount": {"x-go-name": "ActionCount", "type": "integer", "format": "int64"}, "updator": {"x-go-name": "Updator", "type": "string"}}}, "Empty": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object"}, "SoundPath": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/env", "type": "object", "properties": {"path": {"x-go-name": "Path", "type": "string"}, "name": {"x-go-name": "Name", "type": "string"}}}, "FilenamePathParams": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "required": ["filename"], "type": "object", "properties": {"filename": {"x-go-name": "Filename", "type": "string", "description": "In: path"}}}, "ValueItem": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "type": "object", "properties": {"Value": {"type": "string"}, "Key": {"type": "string"}}}, "Delete204": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"Message": {"type": "string"}}}, "ForceQueryParams": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"force": {"x-go-name": "Force", "type": "boolean", "description": "In: query"}}}, "RestFilter": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"filter": {"x-go-name": "Filter", "items": {"type": "string"}, "type": "array", "description": "In: query"}, "sort": {"x-go-name": "Sort", "items": {"type": "string"}, "type": "array", "description": "In: query"}, "facets": {"x-go-name": "Facets", "items": {"type": "string"}, "type": "array", "description": "In: query"}, "paging": {"x-go-name": "Paging", "type": "string", "description": "In: query"}}}, "ImportOneCParams": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"Body": {"$ref": "#/definitions/OneCImporter"}}}, "ConditionUpdate": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "required": ["type"], "type": "object", "properties": {"watcherUuid": {"x-go-name": "WatcherUuid", "type": "string"}, "tag": {"x-go-name": "Tag", "type": "string", "description": "This represents the value with which the condition will be referenced in the EvaluationPath of the watcher"}, "type": {"x-go-name": "Type", "type": "string", "description": "The type of the condition, this determines the content of the Properties field.\nCan be : 'DISCREPANCY', 'STATE_CHANGE', 'DATA_USAGE', 'BW_USAGE' or `ALARM`"}, "properties": {"additionalProperties": {"type": "object"}, "x-go-name": "Properties", "type": "object"}, "uuid": {"x-go-name": "Uuid", "type": "string"}}}, "ActionType": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/helper/types", "type": "integer", "format": "uint64"}, "WatcherUpdate": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "required": ["resourceUuid", "name"], "type": "object", "properties": {"sound": {"x-go-name": "Sound", "type": "string"}, "priority": {"x-go-name": "Priority", "type": "integer", "description": "The priority of the watcher", "format": "int64"}, "evalExpr": {"x-go-name": "EvalExpr", "type": "string", "description": "Define how conditions will be evaluated: Example \"C1 AND C2 OR C3\" where Cx is the tag associated to Condition X"}, "description": {"x-go-name": "Description", "type": "string"}, "removedActions": {"x-go-name": "RemovedActions", "items": {"type": "string"}, "type": "array"}, "actions": {"x-go-name": "Actions", "items": {"$ref": "#/definitions/ActionUpdate"}, "type": "array"}, "name": {"x-go-name": "Name", "type": "string"}, "delay": {"x-go-name": "Delay", "type": "number", "description": "The amount of time (in seconds) to wait for before executing actions", "format": "double"}, "removedConditions": {"x-go-name": "RemovedConditions", "items": {"type": "string"}, "type": "array"}, "active": {"x-go-name": "Active", "type": "boolean", "description": "The status of the watcher, if it's active or not (inactive watchers are not executed)"}, "resourceUuid": {"x-go-name": "ResourceUuid", "type": "string"}, "addedConditions": {"x-go-name": "AddedConditions", "items": {"$ref": "#/definitions/ConditionCreate"}, "type": "array"}, "conditions": {"x-go-name": "Conditions", "items": {"$ref": "#/definitions/ConditionUpdate"}, "type": "array"}, "addedActions": {"x-go-name": "AddedActions", "items": {"$ref": "#/definitions/ActionCreate"}, "type": "array"}}}, "AlarmHolder": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/watchers", "type": "object", "properties": {"Data": {"additionalProperties": {"$ref": "#/definitions/RawAlarm"}, "type": "object"}}}, "UuidPathParams": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "required": ["uuid"], "type": "object", "properties": {"uuid": {"x-go-name": "Uuid", "type": "string", "description": "In: path"}}}, "WatcherCreate": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "required": ["resourceUuid", "name"], "type": "object", "properties": {"sound": {"x-go-name": "Sound", "type": "string"}, "priority": {"x-go-name": "Priority", "type": "integer", "description": "The priority of the watcher", "format": "int64"}, "evalExpr": {"x-go-name": "EvalExpr", "type": "string", "description": "Define how conditions will be evaluated: Example \"C1 AND C2 OR C3\" where Cx is the tag associated to Condition X"}, "description": {"x-go-name": "Description", "type": "string"}, "actions": {"x-go-name": "Actions", "items": {"$ref": "#/definitions/ActionCreate"}, "type": "array"}, "delay": {"x-go-name": "Delay", "type": "number", "description": "The amount of time (in seconds) to wait for before executing actions", "format": "double"}, "active": {"x-go-name": "Active", "type": "boolean", "description": "The status of the watcher, if it's active or not (inactive watchers are not executed)"}, "resourceUuid": {"x-go-name": "ResourceUuid", "type": "string"}, "conditions": {"x-go-name": "Conditions", "items": {"$ref": "#/definitions/ConditionCreate"}, "type": "array"}, "name": {"x-go-name": "Name", "type": "string"}}}, "WatcherType": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/helper/types", "type": "integer", "format": "uint64"}, "Condition": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/watchers/condition", "type": "object", "properties": {"category": {"$ref": "#/definitions/ConditionCategory"}, "updator": {"x-go-name": "Updator", "type": "string"}, "creator": {"x-go-name": "Creator", "type": "string"}, "watcherUuid": {"x-go-name": "WatcherUuid", "type": "string"}, "updatedBy": {"x-go-name": "UpdatedBy", "type": "string"}, "evaluationMessage": {"x-go-name": "EvaluationMessage", "type": "string"}, "evaluationChangeDate": {"x-go-name": "EvaluationChangeDate", "type": "string", "format": "date-time"}, "tag": {"x-go-name": "Tag", "type": "string"}, "createdBy": {"x-go-name": "CreatedBy", "type": "string"}, "updatedAt": {"x-go-name": "UpdatedAt", "type": "string", "format": "date-time"}, "evaluationResult": {"x-go-name": "EvaluationResult", "type": "boolean"}, "type": {"$ref": "#/definitions/ConditionType"}, "properties": {"x-go-name": "Properties", "type": "object"}, "createdAt": {"x-go-name": "CreatedAt", "type": "string", "format": "date-time"}, "uuid": {"x-go-name": "Uuid", "type": "string"}}}, "CORE": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/env", "type": "string"}, "ConditionType": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/helper/types", "type": "integer", "format": "uint64"}, "WatcherState": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/watchers", "type": "object", "properties": {"sound": {"x-go-name": "Sound", "type": "string"}, "changeTime": {"x-go-name": "ChangeTime", "type": "integer", "format": "int64"}, "watcherUuid": {"x-go-name": "WatcherUuid", "type": "string"}, "triggerCount": {"x-go-name": "TriggerCount", "type": "integer", "format": "int64"}}}, "Logging": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/logs", "type": "object", "properties": {"level": {"x-go-name": "Level", "type": "string"}}}, "PmRequestData": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/heroic", "type": "object", "properties": {"range": {"additionalProperties": {"type": "object"}, "x-go-name": "Range", "type": "object"}, "ResourceKey": {"type": "string"}, "aggregation": {"additionalProperties": {"type": "object"}, "x-go-name": "Aggregation", "type": "object"}, "filters": {"x-go-name": "Filters", "items": {"type": "string"}, "type": "array"}}}, "RawAlarm": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/kafka", "type": "object", "properties": {"additionalAttributes": {"x-go-name": "AdditionalAttributes", "type": "object"}, "_type": {"x-go-name": "Type", "type": "string"}, "resource": {"x-go-name": "Resource", "type": "string"}, "severity": {"x-go-name": "Severity", "type": "string"}, "conditionSource": {"x-go-name": "ConditionSource", "type": "string"}, "resourceId": {"x-go-name": "ResourceId", "type": "string"}, "serviceAffecting": {"x-go-name": "ServiceAffecting", "type": "string"}, "additionalText": {"x-go-name": "AdditionalText", "type": "string"}, "nativeConditionType": {"x-go-name": "NativeConditionType", "type": "string"}, "time": {"x-go-name": "Time", "type": "string", "format": "date-time"}, "server": {"$ref": "#/definitions/AlarmServer"}, "id": {"x-go-name": "Id", "type": "string"}, "op": {"x-go-name": "Op", "type": "string"}}}, "DiscrepancyData": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "required": ["alertName", "alertSeverity", "discrepancyDuration"], "type": "object", "properties": {"alertName": {"x-go-name": "AlertName", "type": "string", "description": "The name of the alert message that will be send on discrepancy"}, "creator": {"x-go-name": "Creator", "type": "string"}, "updator": {"x-go-name": "Updator", "type": "string"}, "sentAlarms": {"$ref": "#/definitions/AlarmHolder"}, "updatedBy": {"x-go-name": "UpdatedBy", "type": "string"}, "alertSeverity": {"x-go-name": "AlertSeverity", "type": "string", "description": "The severity of the alert message that will be send on discrepancy"}, "alertDescription": {"x-go-name": "AlertDescription", "type": "string", "description": "The description (additionalText) of the alert message that will be send on discrepancy"}, "createdBy": {"x-go-name": "CreatedBy", "type": "string"}, "updatedAt": {"x-go-name": "UpdatedAt", "type": "string", "format": "date-time"}, "active": {"x-go-name": "Active", "type": "boolean", "description": "Enable/disable Discrepancy watch"}, "discrepancyDuration": {"x-go-name": "DiscrepancyDuration", "type": "number", "description": "The number of seconds to wait before send an alert of discrepancy", "format": "double"}, "createdAt": {"x-go-name": "CreatedAt", "type": "string", "format": "date-time"}, "uuid": {"x-go-name": "Uuid", "type": "string"}}}, "InternalServerError": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object"}, "ActionCreate": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "required": ["type"], "type": "object", "properties": {"type": {"x-go-name": "Type", "type": "string", "description": "The type of the action. This determine the content of the Properties field\nCan be : ALERT"}, "enabled": {"x-go-name": "Enabled", "type": "boolean", "description": "define if the action is enabled : disabled actions are not executed"}, "properties": {"additionalProperties": {"type": "object"}, "x-go-name": "Properties", "type": "object"}}}, "TcaRetrive": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"resourceId": {"x-go-name": "ResourceId", "type": "string"}, "billingCycle": {"x-go-name": "BillingCycle", "type": "integer", "format": "uint64"}, "tcaLevel": {"x-go-name": "TcaLevel", "type": "integer", "format": "uint64"}, "budget": {"x-go-name": "Budget", "type": "integer", "format": "uint64"}}}, "Action": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/watchers/action", "type": "object", "properties": {"execStatus": {"x-go-name": "ExecStatus", "type": "string", "description": "Status of the last execution of the action"}, "updator": {"x-go-name": "Updator", "type": "string"}, "creator": {"x-go-name": "Creator", "type": "string"}, "updatedBy": {"x-go-name": "UpdatedBy", "type": "string"}, "enabled": {"x-go-name": "Enabled", "type": "boolean", "description": "define if the action is enabled : disabled actions are not executed"}, "watcherUuid": {"x-go-name": "WatcherUuid", "type": "string", "description": "The uuid of the watcher to which the action belongs to"}, "execResult": {"x-go-name": "ExecResult", "type": "string", "description": "The object (created) of the last execution of the action"}, "createdBy": {"x-go-name": "CreatedBy", "type": "string"}, "updatedAt": {"x-go-name": "UpdatedAt", "type": "string", "format": "date-time"}, "type": {"$ref": "#/definitions/ActionType"}, "properties": {"x-go-name": "Properties", "type": "object"}, "createdAt": {"x-go-name": "CreatedAt", "type": "string", "format": "date-time"}, "uuid": {"x-go-name": "Uuid", "type": "string"}}}, "OneCImporter": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "required": ["fileName"], "type": "object", "properties": {"attributeMapping": {"additionalProperties": {"type": "string"}, "x-go-name": "AttributeMapping", "type": "object", "description": "Define a mapping between fields in conditions from OneControl to fields in FilteredAlarm in AEProcessor"}, "forceFullScan": {"x-go-name": "ForceFullScan", "type": "boolean", "description": "Set to true, So the reading of the file don't stop when parsing lines"}, "userMapping": {"additionalProperties": {"type": "string"}, "x-go-name": "UserMapping", "type": "object", "description": "Define a mapping between username from oneControl (names in the file) and username in tron (in the platform)"}, "skipFirstLine": {"x-go-name": "SkipFirstLine", "type": "boolean", "description": "Set to true if the first line of the CSV file should not be considered"}, "fileName": {"x-go-name": "FileName", "type": "string"}}}, "UuidQueryParams": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"uuid": {"x-go-name": "Uuid", "type": "string", "description": "In: query"}}}, "RsAttr": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"name": {"x-go-name": "Name", "type": "string"}, "uuid": {"x-go-name": "Uuid", "type": "string"}}}, "UpdateConfigParam": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"Body": {"$ref": "#/definitions/BaseAppConfig"}}}, "APP_STATUS": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/env", "type": "string"}, "AppConfig": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "type": "object", "properties": {"schedulerCycle": {"x-go-name": "SchedulerCycle", "type": "integer", "format": "int64"}, "uuid": {"x-go-name": "Uuid", "type": "string"}}}, "OneCImporterResult": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/engine/importer", "type": "object", "properties": {"errors": {"x-go-name": "Errors", "items": {"type": "string"}, "type": "array"}, "watchers": {"x-go-name": "Watchers", "items": {"$ref": "#/definitions/Watcher"}, "type": "array"}}}, "CreateWatcherParams": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"Body": {"$ref": "#/definitions/WatcherCreate"}}}, "ActionUpdate": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "required": ["type"], "type": "object", "properties": {"type": {"x-go-name": "Type", "type": "string", "description": "The type of the action. This determine the content of the Properties field\nCan be : ALERT"}, "watcherUuid": {"x-go-name": "WatcherUuid", "type": "string"}, "enabled": {"x-go-name": "Enabled", "type": "boolean", "description": "define if the action is enabled : disabled actions are not executed"}, "properties": {"additionalProperties": {"type": "object"}, "x-go-name": "Properties", "type": "object"}, "uuid": {"x-go-name": "Uuid", "type": "string"}}}, "ConditionCreate": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "required": ["type"], "type": "object", "properties": {"tag": {"x-go-name": "Tag", "type": "string", "description": "This represents the value with which the condition will be referenced in the EvaluationPath of the watcher"}, "type": {"x-go-name": "Type", "type": "string", "description": "The type of the condition, this determines the content of the Properties field.\nCan be : 'DISCREPANCY', 'STATE_CHANGE', 'DATA_USAGE', 'BW_USAGE' or `ALARM`"}, "properties": {"additionalProperties": {"type": "object"}, "x-go-name": "Properties", "type": "object"}}}, "retrievePmParams": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "type": "object", "properties": {"Body": {"$ref": "#/definitions/PmRequestData"}}}, "BaseEntity": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "type": "object", "properties": {"createdBy": {"x-go-name": "CreatedBy", "type": "string"}, "creator": {"x-go-name": "Creator", "type": "string"}, "updatedAt": {"x-go-name": "UpdatedAt", "type": "string", "format": "date-time"}, "updator": {"x-go-name": "Updator", "type": "string"}, "updatedBy": {"x-go-name": "UpdatedBy", "type": "string"}, "createdAt": {"x-go-name": "CreatedAt", "type": "string", "format": "date-time"}, "uuid": {"x-go-name": "Uuid", "type": "string"}}}, "BaseWatcher": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/database", "type": "object", "properties": {"execStatus": {"x-go-name": "ExecStatus", "type": "string", "description": "The status of the last execution of the watcher (This is not the status of conditions evaluation)"}, "creator": {"x-go-name": "Creator", "type": "string"}, "resourceProvId": {"x-go-name": "ResourceProvId", "type": "string"}, "updatedAt": {"x-go-name": "UpdatedAt", "type": "string", "format": "date-time"}, "createdAt": {"x-go-name": "CreatedAt", "type": "string", "format": "date-time"}, "delay": {"x-go-name": "Delay", "type": "number", "description": "The amount of time (in seconds) to wait for before executing actions", "format": "double"}, "uuid": {"x-go-name": "Uuid", "type": "string"}, "execAt": {"x-go-name": "ExecAt", "type": "string", "description": "Last time the watcher has been executed", "format": "date-time"}, "triggerCount": {"x-go-name": "TriggerCount", "type": "integer", "description": "The amount of time the watcher's conditions has been met consecutively", "format": "int64"}, "priority": {"x-go-name": "Priority", "type": "integer", "description": "The priority of the watcher", "format": "int64"}, "execMessage": {"x-go-name": "ExecMessage", "type": "string"}, "type": {"$ref": "#/definitions/WatcherType"}, "evalExpr": {"x-go-name": "EvalExpr", "type": "string", "description": "Define how conditions will be evaluated: Example \"C1 AND C2 OR C3\" where Cx is the tag associated to Condition X"}, "description": {"x-go-name": "Description", "type": "string"}, "createdBy": {"x-go-name": "CreatedBy", "type": "string"}, "updatedBy": {"x-go-name": "UpdatedBy", "type": "string"}, "active": {"x-go-name": "Active", "type": "boolean", "description": "The status of the watcher, if it's active or not (inactive watchers are not executed)"}, "resourceUuid": {"x-go-name": "ResourceUuid", "type": "string"}, "resourceAlias": {"x-go-name": "ResourceAlias", "type": "string"}, "sound": {"x-go-name": "Sound", "type": "string"}, "domainId": {"x-go-name": "DomainId", "type": "string"}, "name": {"x-go-name": "Name", "type": "string"}, "updator": {"x-go-name": "Updator", "type": "string"}}}, "IdGetOneParams": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/rest/routes", "required": ["id"], "type": "object", "properties": {"id": {"x-go-name": "Id", "type": "string", "description": "In: path"}}}, "DConfig": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/watchers", "required": ["alertName", "alertSeverity", "discrepancyDuration"], "type": "object", "properties": {"active": {"x-go-name": "Active", "type": "boolean", "description": "Enable/disable Discrepancy watch"}, "alertDescription": {"x-go-name": "AlertDescription", "type": "string", "description": "The description (additionalText) of the alert message that will be send on discrepancy"}, "discrepancyDuration": {"x-go-name": "DiscrepancyDuration", "type": "number", "description": "The number of seconds to wait before send an alert of discrepancy", "format": "double"}, "alertSeverity": {"x-go-name": "AlertSeverity", "type": "string", "description": "The severity of the alert message that will be send on discrepancy"}, "alertName": {"x-go-name": "AlertName", "type": "string", "description": "The name of the alert message that will be send on discrepancy"}}}, "ConditionCategory": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/helper/types", "type": "integer", "format": "uint64"}, "WatcherDiff": {"x-go-package": "bitbucket.ciena.com/agility_gui/pm-watcher/watchers", "type": "object", "properties": {"diff": {"x-go-name": "Diff", "type": "boolean"}, "data": {"x-go-name": "Data", "items": {"$ref": "#/definitions/WatcherState"}, "type": "array"}}}}, "swagger": "2.0", "consumes": ["application/json"]}
\ No newline at end of file