This API developed for creating new SOTN Service. It takes configured data of SOTN VPN and Site.
URL: /api/usecaseui/server/v1/uui-lcm/Sotnservices
Response:
{
"service":
{
"serviceId":"244be53a-f84a-42e0-8aba-3ff2bf4c7347",
"operationId":"dd16f580-455e-4 690-969b-2894effd3395"
}
}
API internal process:
Interface definition:
Interface Definition | Description |
Content-Type | application/json |
Operation Type | POST |
URI | https://{host}:{port}/api/usecaseui/server/v1/uui-lcm/Sotnservices |
Header Name | Required? | Description |
Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
Content-Type | Y | Determines the format of the request content. Only application/json is supported. |
Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |
Authorization | N | Supplies Basic Authentication credentials for the request. If the Authorization header is missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is invalid, then an HTTP 401 Unauthorized response is returned. |
2.Request Body
Attribute | Required? | Cardinality | Content | Values | Description |
service | Y | 1 | SOTN service Object | The content of the RequestInfo object. | |
site | Y | 1…n | SOTN sites Object | The content of Router request object |
2.1 SOTN service Object
Attribute | Required? | Cardinality | Content | Values | Description |
serviceName | Y | 1 | String | A unique name to create service. | |
description | Y | 1 | String | Information related to service | |
COS | Y | 1 | String | Type of subscription(Premium/Standard) | |
serviceType | Y | 1 | String | Type of Service(epl/evpl) | |
highAvailability | Y | 1 | String | High Bandwidth(yes/no). | |
CIR | Y | 1 | String | ||
EIR | Y | 1 | String |
Attribute | Required? | Cardinality | Content | Values | Description |
Site name | Y | 1 | string | A unique name to create site | |
address | Y | 1 | string | Address of the site laoction | |
description | Y | 1 | string | Information related to site | |
Zipcode | Y | 1 | String | Postal code for site location | |
Vlan | Y | 1 | String |
3.Asynchronous Response Body
Attribute | Required? | Cardinality | Content | Values | Description |
serviceId | Y | 1 | String | A unique Id for created service. | |
operationId | Y | 1 | String |
URL: /api/usecaseui-server/v1/uui-lcm/Sotnservices/servicesubscription/SOTN/serviceinstance/{instanceId}
Response:
{
"ethtSvcName":"vpn022",
"cir":"98900",
"eir":"1000",
"vpnInformations":[ {
"vpnThreshold":"1000",
"vpnBandwidth":"100",
"vpnType":"Hub-Spoke",
"vpnId":"a8529dee-523e-4c6b-bc83-e26d68a9911c",
"vpnName":"vpn022",
"sites":[ {
"zipCode":"100008",
"address":"beijing",
"siteId":"d5b530fe-2271-4ed6-8c09-b7ce368a1f59",
"siteName":"ISAAC01-hub1",
"description":"desc"
}]
}]
}
2. Storing the response of this API in object0.
3. Based on the service instance showing specific service informations
API internal process:
Interface definition:
Interface Definition | Description |
Content-Type | application/json |
Operation Type | GET |
URI | https://{host}:{port}/api/usecaseui-server/v1/uui-lcm/Sotnservices/servicesubscription/SOTN/serviceinstance/{instanceId} |
Header Name | Required? | Description |
Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
Content-Type | N | Determines the format of the request content. Only application/json is supported. |
Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |
Authorization | N | Supplies Basic Authentication credentials for the request. If the Authorization header is missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is invalid, then an HTTP 401 Unauthorized response is returned. |
Attribute | Required? | Cardinality | Content | Values | Description |
Service Information | Y | 1 | UUID/String | A unique Id for an ONAP transaction. | |
Sire Information | Y | 1 | UUID/String | A unique ID to track multiple requests associated with a transaction. |
Attribute | Required? | Cardinality | Content | Values | Description |
ethtSvcName | Y | 1 | Timestamp | ||
cir | Y | 1 | Timestamp | ||
eir | N | 0..N | List of LinkInfo | List of Link's | |
ebs | Y | 1 | |||
Coloraware | Y | 1 | |||
cbs | Y | 1 |
Attribute | Required | cordinality | Content | Values | Description |
SiteName | Y | 1 | String | A unique site Name | |
Description | Y | 1 | String | Description about site | |
Postalcode | Y | 1 | String | Information sitelocaton |
URL: /api/usecaseui-server/v1/uui-lcm/Sotnservices/topology/service/service-subscriptions/service-subscription/{servicetypeparam}/service-instances/service-instance/{serviceInstanceId}
Response:
[
{
"zipCode":"28013",
"role":"dsvpn-hub",
"siteName":"Madrid",
"description":"Madrid",
"location":"Madrid",
"attribute":{
"Zip Code":"28013",
"Site Name":"Madrid",
"cvlan":"400",
"Link Status":"down",
"Location":"Madrid"
}
},
{
"zipCode":"NE1 4LF",
"role":"dsvpn-hub",
"address":"Newcastle",
"siteId":"2f4b3e25-bdd1-404d-bed5-381ced380318",
"siteName":"Newcastle",
"description":"Newcastle",
"location":"Newcastle",
"attribute":{
"Zip Code":"NE1 4LF",
"Site Name":"Newcastle",
"cvlan":"400",
"Access node Id":"10.10.10.10",
"Access LTP Id":"149",
"Link Status":"down",
"Location":"Newcastle"
}
}
]
API internal process:
Interface definition:
Interface Definition | Description |
Content-Type | application/json |
Operation Type | GET |
URI | https://{host}:{port}/api/usecaseui-server/v1/uui-lcm/Sotnservices/topology/service/service-subscriptions/service-subscription/{servicetypeparam}/service-instances/service-instance/{serviceInstanceId} |
Header Name | Required? | Description |
Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
Content-Type | N | Determines the format of the request content. Only application/json is supported. |
Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |
Authorization | N | Supplies Basic Authentication credentials for the request. If the Authorization header is missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is invalid, then an HTTP 401 Unauthorized response is returned. |
Attribute | Required? | Cardinality | Content | Values | Description |
zipCode | Y | 1 | String | Zipcode/PostalCode of site. | |
role | Y | 1 | String | Spoke/Hub | |
siteName | Y | 1 | String | Unique name for site | |
description | Y | 1 | String | Site address | |
location | Y | 1 | String | Address of site | |
attribute | Y | 1 | Site attribute object | Have site info attribute in below table |
Site attribute object
Attribute | Required? | Cardinality | Content | Values | Description |
Zip Code | Y | 1 | String | Postal code of location(site) | |
Site Name | Y | 1 | String | A unique name for site | |
cvlan | Y | 1 | String | ||
Access node Id | N | 1 | String | ||
Access LTP Id | Y | 1 | String | ||
Link Status | Y | 1 | String | Active/Down | Status of Link |
Location | Y | 1 | String | Information of city(i.e cityname) |
URL: /api/usecaseui-server/v1/uui-lcm/Sotnservices/resourceTopology/service/service-subscriptions/service-subscription/service-instances/service-instance/{serviceInstace}
Response:
{
"nodes":[
{
"id":"73022190-d634-4824-aaac-1435f73cbd47",
"shape":"circularImage",
"image":"./assets/treeTopology/connectivity.png",
"label":"Connectivity",
"color":"Green",
"dataNode":{
"ethtSvcName":"SOTN_9001_TS2_assured",
"colorAware":"null",
"cbs":"null",
"couplingFlag":"null",
"ebs":"evpl",
"cir":"20000",
"eir":"20000"
}
},
{
"id":"10.10.10.10-SOTN_9001_TS2_assured",
"shape":"circularImage",
"image":"./assets/treeTopology/vpnbinding.png",
"label":"VPN Binding",
"color":"Green",
"dataNode":{
"vpn-id":"10.10.10.10-SOTN_9001_TS2_assured",
"vpn-name":"10.10.10.10-SOTN_9001_TS2_assured",
"vpn-type":"ethernet",
"vpn-region":"assured",
"access-provider-id":"5555",
"access-client-id":"6666",
"access-topology-id":"100",
"src-access-node-id":"10.10.10.10",
"src-access-ltp-id":"58",
"dst-access-node-id":"10.10.10.10",
"dst-access-ltp-id":"149",
"operational-status":"Created",
"resource-version":"1561389584516"
}
},
{
"id":"10.10.10.10",
"shape":"circularImage",
"image":"./assets/treeTopology/accessnode.png",
"label":"Access Node",
"color":"Green",
"dataNode":{
"pnf-name":"10.10.10.10",
"pnf-id":"10.10.10.10",
"in-maint":true,
"resource-version":"1561303054088",
"admin-status":"up",
"operational-status":"up"
}
},
{
"id":"nodeId-10.10.10.10-ltpId-58",
"shape":"circularImage",
"image":"./assets/treeTopology/tpoint.png",
"label":"Termination Point",
"color":"Green",
"dataNode":{
"interface-name":"nodeId-10.10.10.10-ltpId-58",
"speed-value":"1000000",
"equipment-identifier":"0.188.0.8",
"resource-version":"1561303102525",
"in-maint":true,
"network-ref":"providerId-5555-clientId-6666-topologyId-33",
"transparent":"true",
"operational-status":"down"
}
},
{
"id":"cross-link-5",
"shape":"circularImage",
"image":"./assets/treeTopology/logicallink.png",
"label":"Logical Link",
"color":"Green",
"dataNode":{
"link-name":"cross-link-5",
"in-maint":false,
"link-type":"cross-link",
"resource-version":"1561284481346",
"operational-status":"up"
}
},
{
"id":"EXT_AAI",
"shape":"circularImage",
"image":"./assets/treeTopology/extaai.png",
"label":"External AAI",
"color":"Green",
"dataNode":{
"Name":"VDF-ext-net"
}
}
],
"edges":[
{
"from":"73022190-d634-4824-aaac-1435f73cbd47",
"to":"10.10.10.10-SOTN_9001_TS2_assured"
},
{
"from":"10.10.10.10-SOTN_9001_TS2_assured",
"to":"nodeId-10.10.10.10-ltpId-149"
},
{
"from":"10.10.10.10-SOTN_9001_TS2_assured",
"to":"nodeId-10.10.10.10-ltpId-58"
},
{
"from":"nodeId-10.10.10.10-ltpId-58",
"to":"cross-link-5"
},
{
"from":"null",
"to":"EXT_AAI"
}
]
}
API internal process:
Interface definition:
Interface Definition | Description |
Content-Type | application/json |
Operation Type | GET |
URI | https://{host}:{port}/api/usecaseui-server/v1/uui-lcm/Sotnservices/resourceTopology/service/service-subscriptions/service-subscription/service-instances/service-instance/{serviceInstace} |
Header Name | Required? | Description |
Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
Content-Type | N | Determines the format of the request content. Only application/json is supported. |
Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |
Authorization | N | Supplies Basic Authentication credentials for the request. If the Authorization header is missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is invalid, then an HTTP 401 Unauthorized response is returned. |
Attribute | Required? | Cardinality | Content | Values | Description |
Nodes | Y | 1 | Nodes array | List of nodes | |
Edges | Y | 1 | Edges array | List of connection between nodes(startnode-->endnode) |
Node Info
Attribute | Required? | Cardinality | Content | Values | Description |
Id | Y | 1 | String | A unique id for node | |
shape | Y | 1 | String | circular | shape of the node |
image | Y | 1 | String | Jpg/png/jpeg | Image for node |
label | N | 1 | String | Label for node | |
color | Y | 1 | String | Color of node | |
Data node | Y | 1 | object | It is vary upon nodes info |
HTTP Code | Response Phrase | Description |
201 | Created | An optimization solution is found. |
202 | Accepted | An optimization request is accepted. |
400 | Bad request | Bad request. |
401 | Unauthorized | Request body is not compliant with the API definition. |
404 | Not found | The server cannot find the requested URI. |
405 | Method not found | The requested method is not supported by a server. |
500 | Internal server error | The server encountered an internal server error or timed out. |
520 | Solver error | Requested number of solutions cannot be found. |