}
},
"/api/oof/placement/v1": {
- "$ref": "#/paths/~1v2~1placement"
+ "post": {
+ "tags": [
+ "Placement Optimization"
+ ],
+ "summary": "create/update a placement",
+ "operationId": "createPlacementv1",
+ "description": "create/update a placement",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "body",
+ "name": "placementRequest",
+ "description": "placement request",
+ "schema": {
+ "$ref": "#/definitions/PlacementRequest"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "An optimization solution is found."
+ },
+ "202": {
+ "description": "An optimization request is accepted"
+ },
+ "400": {
+ "description": "bad request"
+ },
+ "401": {
+ "description": "Request body is not compliant with the API definition"
+ },
+ "404": {
+ "description": "The server cannot find the requested URI"
+ },
+ "405": {
+ "description": "The requested method is not supported by a server."
+ },
+ "500": {
+ "description": "The server encountered an internal server error or timed out"
+ }
+ }
+ }
},
"/api/oof/v1/pci": {
"post": {
}
},
"/api/oof/pci/v1": {
- "$ref": "#/paths/~1api~1oof~1v1~1pci"
+ "post": {
+ "tags": [
+ "PCI/ANR Optimization"
+ ],
+ "summary": "Initiate PCI/ANR Optimization",
+ "operationId": "initiatePCIOptRequestv1",
+ "description": "Initiate PCI/ANR Optimization",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "body",
+ "name": "PCIOptimizationRequest",
+ "description": "PCI request",
+ "schema": {
+ "$ref": "#/definitions/PCIOptRequest"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "An optimization solution is found."
+ },
+ "202": {
+ "description": "An optimization request is accepted"
+ },
+ "400": {
+ "description": "bad request"
+ },
+ "401": {
+ "description": "Request body is not compliant with the API definition"
+ },
+ "404": {
+ "description": "The server cannot find the requested URI"
+ },
+ "405": {
+ "description": "The requested method is not supported by a server."
+ },
+ "500": {
+ "description": "The server encountered an internal server error or timed out"
+ }
+ }
+ }
},
"/api/oof/selection/nst/v1": {
"post": {
}
}
}
- }
+ },
+ "/api/oof/mdons/route/v1": {
+ "post": {
+ "tags": [
+ "Inter Domain Route Select"
+ ],
+ "summary":"Find the optimistic inter domain route for multi domain optical system",
+ "description":"",
+ "operationId":"getInterDomainRoute",
+ "consumes": [
+ "application/json"
+ ],
+ "produces":[
+ "application/json"
+ ],
+ "parameters":[
+ {
+ "in":"body",
+ "name":"body",
+ "description":"Source and Destination interfaces across which optmistic route have to be obtained.",
+ "required":true,
+ "schema":{
+ "$ref":"#/definitions/InterDomainRouteRequest"
+ }
+ }
+ ],
+ "responses":{
+ "200":{
+ "description":"successful operation",
+ "schema":{
+ "$ref":"#/definitions/InterDomainRouteResponseBody"
+ }
+ },
+ "400":{
+ "description":"bad request"
+ },
+ "401":{
+ "description":"Request body is not compliant with the API definition"
+ },
+ "404":{
+ "description":"The server cannot find the requested URI"
+ },
+ "405":{
+ "description":"The requested method is not supported by a server."
+ },
+ "500":{
+ "description":"The server encountered an internal server error or timed out"
+ }
+ }
+ }
+ }
},
"definitions": {
+ "InterDomainRouteRequest":{
+ "type":"object",
+ "properties":{
+ "requestInfo":{
+ "$ref":"#/definitions/requestInfo"
+ },
+ "routeInfo":{
+ "$ref":"#/definitions/interDomainRouteInfo"
+ }
+ }
+ },
+ "interDomainRouteInfo":{
+ "type":"object",
+ "properties":{
+ "routeRequest":{
+ "$ref":"#/definitions/interDomainRouteRequest"
+ }
+ }
+ },
+ "interDomainRouteRequest":{
+ "type":"object",
+ "properties":{
+ "srcDetails":{
+ "$ref":"#/definitions/interDomainPortDetails"
+ },
+ "dstDetails":{
+ "$ref":"#/definitions/interDomainPortDetails"
+ },
+ "serviceRate":{
+ "type":"string",
+ "description":"The rate of the service."
+ }
+ }
+ },
+ "interDomainPortDetails":{
+ "type":"object",
+ "properties":{
+ "interfaceId":{
+ "type":"string",
+ "description":"The port id."
+ },
+ "nodeId":{
+ "type":"string",
+ "description":"The node id."
+ },
+ "controllerId":{
+ "type":"string",
+ "description":"The controller id to which the node belongs to."
+ }
+ }
+ },
+ "InterDomainRouteResponseBody":{
+ "type":"object",
+ "properties":{
+ "requestId":{
+ "type":"string",
+ "description":"A unique Id for an ONAP transaction."
+ },
+ "transactionId":{
+ "type":"string",
+ "description":"A unique ID to track multiple requests associated with a transaction."
+ },
+ "statusMessage":{
+ "type":"string",
+ "description":"Reasoning if a requestStatus is failure."
+ },
+ "requestStatus":{
+ "type":"string",
+ "description":"The status of a request."
+ },
+ "solutions":{
+ "$ref":"#/definitions/InterDomainRouteSolutionInfo"
+ }
+ }
+ },
+ "InterDomainRouteSolutionInfo":{
+ "type":"object",
+ "properties":{
+ "routeInfo":{
+ "$ref":"#/definitions/interDomainResponseRouteinfo"
+ }
+ }
+ },
+ "interDomainResponseRouteinfo":{
+ "type":"object",
+ "properties":{
+ "serviceRoute":{
+ "type":"array",
+ "items":{
+ "$ref":"#/definitions/serviceRouteDetails"
+ }
+ },
+ "linkList":{
+ "type":"array",
+ "items":{
+ "type":"string"
+ },
+ "description":"A list of link names of the route.",
+ "example":[
+ "link1",
+ "link2"
+ ]
+ }
+ }
+ },
+ "serviceRouteDetails":{
+ "type":"object",
+ "properties":{
+ "srcInterfaceId":{
+ "type":"string",
+ "description":"Source port Id of the domain Service."
+ },
+ "dstInterfaceId":{
+ "type":"string",
+ "description":"Destination Port Id of the domain Service."
+ },
+ "controllerId":{
+ "type":"string",
+ "description":"Controller Id of the domain."
+ }
+ }
+ },
"RouteRequest": {
"type": "object",
"properties": {
"$ref": "#/definitions/RequestInfo2"
},
"serviceProfile": {
- "$ref": "#/definitions/ServiceProfile"
+ "$ref": "#/definitions/ServiceProfileNst"
}
}
},
"blob": "content"
}
},
+ "ServiceProfileNst": {
+ "type": "object",
+ "required": [
+ "serviceProfileParameters"
+ ],
+ "properties": {
+ "serviceProfileParameters": {
+ "$ref": "#/definitions/ServiceProfile"
+ }
+ }
+ },
"SliceProfile": {
"type": "string",
"description": "JSON blob. Containing slice profile parameters. The contents are based on 3GPP TS 23.541 Release 16 contents, and will be in the form of attribute value pairs.",
"type": "string",
"format": "uuid",
"description": "Id of NSI"
+ },
+ "NSSIs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NSSI"
+ },
+ "description": "A list of NSSIs"
+ }
+ }
+ },
+ "NSSI": {
+ "type": "object",
+ "required": [
+ "NSSIName",
+ "NSSIId",
+ "UUID",
+ "invariantUUID"
+ ],
+ "properties": {
+ "NSSIName": {
+ "type": "string",
+ "description": "Name of NSSI"
+ },
+ "NSSIId": {
+ "type": "string",
+ "description": "Id of NSSI"
+ },
+ "UUID": {
+ "type": "string",
+ "description": "UUID of NSST"
+ },
+ "invariantUUID": {
+ "type": "string",
+ "description": "invariantUUID of NSST"
+ },
+ "sliceProfile": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SliceProfile"
+ },
+ "description": "list of SliceProfiles"
}
}
},
],
"host": "virtserver.swaggerhub.com",
"basePath": "/oof-osdf/v1"
-}
+}
\ No newline at end of file