Table of Contents | ||
---|---|---|
|
NOTE
This page is only for understanding. Please refer swagger for a comprehensive documentation.
SAMPLE API
SAMPLE NSI API ( preferReuse : true )
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"serviceProfile":{
"blob":"content"
},
"requestInfo":{
"transactionId":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"requestId":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"callbackUrl":"myDomain.com/myCallback",
"callbackHeader":{
"blob":"content"
},
"sourceId":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"timeout":5,
"numSolutions":1
},
"NSTInfo":{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa1",
"invariantUUID":"7ua85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-nst"
},
"NSSTInfo":[
{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa2",
"invariantUUID":"2fa85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-an-nf"
},
{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa3",
"invariantUUID":"4fa85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-cn"
},
{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa4",
"invariantUUID":"5ta85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-tn-fh"
},
{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa5",
"invariantUUID":"6ya85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-tn-mh"
},
{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa7",
"invariantUUID":"7ua85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-tn-bh"
}
],
"preferReuse":true,
"subnetCapabilities":[
{
"domainType":"AN-NF",
"capabilityDetails":{
"blob":"content"
}
},
{
"domainType":"CN",
"capabilityDetails":{
"blob":"content"
}
},
{
"domainType":"TN-FH",
"capabilityDetails":{
"blob":"content"
}
},
{
"domainType":"TN-MH",
"capabilityDetails":{
"blob":"content"
}
},
{
"domainType":"TN-BH",
"capabilityDetails":{
"blob":"content"
}
}
]
} |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"transactionId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"requestId": "f450f1ee-6c54-4b01-90e6-d701748f0851",
"requestStatus": "completed",
"solutions": [
{
"existingNSI": true,
"sharedNSISolution": {
"invariantUUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"UUID": "e4t85f64-5717-4562-b3fc-2c963f66afa6",
"NSIName": "embb-ser",
"NSIId": "t5y85f64-5717-4562-b3fc-2c963f66afa6",
"matchLevel": {
"key":"value"
}
}
}
]
} |
SAMPLE NSI API ( preferReuse : false )
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"serviceProfile":{
"blob":"content"
},
"requestInfo":{
"transactionId":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"requestId":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"callbackUrl":"myDomain.com/myCallback",
"callbackHeader":{
"blob":"content"
},
"sourceId":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"timeout":5,
"numSolutions":1
},
"NSTInfo":{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa1",
"invariantUUID":"7ua85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-nst"
},
"NSSTInfo":[
{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa2",
"invariantUUID":"2fa85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-an-nf"
},
{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa3",
"invariantUUID":"4fa85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-cn"
},
{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa4",
"invariantUUID":"5ta85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-tn-fh"
},
{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa5",
"invariantUUID":"6ya85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-tn-mh"
},
{
"UUID":"3fa85f64-5717-4562-b3fc-2c963f66afa7",
"invariantUUID":"7ua85f64-5717-4562-b3fc-2c963f66afa6",
"name":"embb-tn-bh"
}
],
"preferReuse":false,
"subnetCapabilities":[
{
"domainType":"AN-NF",
"capabilityDetails":{
"blob":"content"
}
},
{
"domainType":"CN",
"capabilityDetails":{
"blob":"content"
}
},
{
"domainType":"TN-FH",
"capabilityDetails":{
"blob":"content"
}
},
{
"domainType":"TN-MH",
"capabilityDetails":{
"blob":"content"
}
},
{
"domainType":"TN-BH",
"capabilityDetails":{
"blob":"content"
}
}
]
} |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"transactionId": "s4r0f1ee-6c54-4b01-90e6-d701748f0851",
"requestId": "r500f1ee-6c54-4b01-90e6-d701748f0851",
"requestStatus": "completed",
"solutions": [
{
"existingNSI": false,
"newNSISolution": {
"sliceProfiles": [
{
"domainType":"AN-NF"
},
{
"domainType":"CN"
},
{
"domainType":"TN-FH"
},
{
"domainType":"TN-MH"
},
{
"domainType":"TN-BH"
}
],
"matchLevel": {
"blob": "content"
}
}
}
]
} |
SAMPLE NSSI API
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"sliceProfile": {
"blob": "content"
},
"requestInfo": {
"transactionId": "t670f1ee-6c54-4b01-90e6-d701748f0851",
"requestId": "r450f1ee-6c54-4b01-90e6-d701748f0851",
"callbackUrl": "myDomain.com/myCallback",
"callbackHeader": {
"blob": "content"
},
"sourceId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"timeout": 5,
"numSolutions": 1,
"addtnlArgs": {
"blob": "content"
}
},
"NSSTInfo": {
"UUID": "y7785f64-5717-4562-b3fc-2c963f66afa6",
"invariantUUID": "9fh85f64-5717-4562-b3fc-2c963f66afa6",
"name": "embb-cn"
}
} |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"transactionId": "c440f1ee-6c54-4b01-90e6-d701748f0851",
"requestId": "88u0f1ee-6c54-4b01-90e6-d701748f0851",
"requestStatus": "completed",
"solutions": [
{
"invariantUUID": "y7685f64-5717-4562-b3fc-2c963f66afa6",
"UUID": "8u785f64-5717-4562-b3fc-2c963f66afa6",
"NSSIName": "embb-core-ser",
"NSSIId": "f4485f64-5717-4562-b3fc-2c963f66afa6",
"matchLevel": {
"blob":"content"
}
}
]
} |
Sample NxI API(NSI Termination)
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"requestInfo": {
"transactionId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"requestId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"callbackUrl": "http://0.0.0.0:9000/osdfCallback/",
"sourceId": "SO",
"timeout": 5,
"addtnlArgs": {
"serviceProfileId":"cdad9f49-4201-4e3a-aac1-b0f27902c299"
}
},
"type":"NSI",
"NxIId":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"UUID":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"invariantUUID":"d290f1ee-6c54-4b01-90e6-d701748f0851"
} |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"requestId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"transactionId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"requestStatus": "success",
"terminateResponse": true,
"reason": ""
} |
Sample NxI API(NSSI Termination)
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"requestInfo": {
"transactionId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"requestId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"callbackUrl": "http://0.0.0.0:9000/osdfCallback/",
"sourceId": "SO",
"timeout": 5,
"addtnlArgs": {
"serviceInstanceId":"4115d3c8-dd59-45d6-b09d-e756dee9b518"
}
},
"type":"NSSI",
"NxIId":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"UUID":"d290f1ee-6c54-4b01-90e6-d701748f0851",
"invariantUUID":"d290f1ee-6c54-4b01-90e6-d701748f0851"
} |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"requestId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"transactionId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"requestStatus": "success",
"terminateResponse": true,
"reason": ""
} |
1. Select NST API
Interface Definition | Description |
---|---|
Content-Type | application/json |
Operation Type | POST |
URI | https://{host}:{port}/api/oof/selection/nst/v1 |
1.1. Request Header
Header | Required | Description |
---|---|---|
Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
Authorization | Y | Supplies Basic Authentication credentials for the request |
1. Select NST API
...
Interface Definition
...
Description
...
Content-Type
...
application/json
...
Operation Type
...
POST
...
URI
...
https://{host}:{port}/api/oof/v1/selection/nst
1.1. Request Header
Header | Required | Description |
---|---|---|
Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
Authorization | Y | 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. |
Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |
Content-Type | Y | Determines the format of the request content. Only application/json is supported. |
...
Attribute | Required? | Cardinality | Content | Values | Description | serviceProfile | Y | 1 | serviceProfile Object | The content of the serviceProfile Object | requestInfo | Y | 1 | requestInfo Object | The content of the requestInfo Object
---|---|---|---|---|---|
serviceProfile |
...
Attribute
Required?
Cardinality
serviceProfileParameters
Values
Description
Y | 1 | JSON BLOB | A JSON object containing service profile parameters. The contents are based on 3GPP TS 23.541 Release 16 contents, and will be in the form |
of attribute value pairs. | |||||
requestInfo | Y | 1 | requestInfo Object | The content of the requestInfo Object |
RequestInfo Object
Attribute | Required? | Cardinality | Content | Values | Description |
---|---|---|---|---|---|
transactionId | Y | 1 | UUID/String | A unique ID to track an ONAP transaction. | |
requestId | Y | 1 | UUID/String | A unique ID to track multiple requests associated with a transaction. | |
callbackUrl | Y | 1 | URL | The end point of a callback service where recommendations are posted. | |
callbackHeader | Y | 1 | JSON blob | The header information a client expecting in a async callback. | |
sourceId | Y | 1 | String | The unique ID of a client making an optimization call. | |
numSolutions | Y | 1 | Integer | Expected number of solutions. numSolution can also be specified using an optimization query policies, where the default configured value is 1. The value from a request gets higher precedence over the value defined in a policy. | |
timeout | N | 1 | Integer |
...
Attribute | Required? | Cardinality | Content | Values | Description |
---|---|---|---|---|---|
requestId | Y | 1 | UUID/String | A unique Id for an ONAP transaction. | |
transactionId | Y | 1 | UUID/String | A unique ID to track multiple requests associated with a transaction. | |
statusMessage | N | 1 | String | Reasoning if requestStatus is failed. | |
requestStatus | Y | 1 | String | completed, failed, pending | The status of a request. |
solutions | Y | 1 | List of NSTSolution Object | A list of matching NSTs |
NSTSolution Object
Attribute | Required? | Cardinality | Content | Values | Description |
---|---|---|---|---|---|
invariantUUID | Y | 1 | UUID/String | Invariant UUID | |
UUID | Y | 1 | UUID/String | UUID of NST | |
NSTName | Y | 1 | String | Name of NST | |
matchLevel | Y | 1 |
Solution Object
Solutions related to a request.
Solution Object
...
Attribute
...
Required?
...
Cardinality
...
Content
...
Values
...
Description
...
NSTsolutions
...
Y
...
1..N
...
List of NSTSolution Object
...
A list of matching NSTs
NSTSolution Object
...
Attribute
...
Required?
...
Cardinality
...
Content
...
Values
...
Description
...
UUID
...
Y
...
1
...
UUID/String
...
UUID of NST
...
2. Select NSI API
...
Interface Definition
...
Description
...
Content-Type
...
application/json
...
Operation Type
...
POST
...
URI
...
https://{host}:{port}/api/oof/v1/selection/nsi
2.1. Request Header
...
Header
...
Required
...
Description
...
Accept
...
N
...
Determines the format of the body of the response. Valid value is “application/json”
...
Authorization
...
Y
...
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.
...
Content-Length
...
N
...
Number of bytes in the body of the request. Note that content length is limited to 1 MB.
...
Content-Type
...
Y
...
Determines the format of the request content. Only application/json is supported.
JSON BLOB | Details of match of requirements in service profile |
2. Select NSI API
Interface Definition | Description |
---|---|
Content-Type | application/json |
Operation Type | POST |
URI | https://{host}:{port}/api/oof/selection/nsi/v1 |
2.1. Request Header
Header | Required | Description |
---|---|---|
Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
Authorization | Y | 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. |
Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |
Content-Type | Y | Determines the format of the request content. Only application/json is supported. |
2.2. Request Body
Attribute | Required? | Cardinality | Content | Values | Description |
---|---|---|---|---|---|
serviceProfile | Y | 1 | JSON Blob | A JSON object containing service profile parameters. The contents are based on 3GPP TS 23.541 Release 16 contents, and will be in the form of attribute value pairs. | |
NSTInfo | Y | 1 | nstInfo Object | The content of nstInfo Object | |
NSSTInfo | Y | 1..N | list of nsstInfo Object | All the constituent NSSTs of the NST | |
subnetCapabilities | Y | 1..N | list of subnetCapability Object | Subnet capabilities | |
preferReuse | N | 1 | Boolean | ||
requestInfo | Y | 1 | requestInfo Object | The content of the requestInfo Object |
subnetCapability Object
...
Attribute | Required? | Cardinality | Content | Values | Description |
---|
domainType | Y | 1 |
String | Sub-net type | ||||
capabilityDetails | Y | 1 | JSON BLOB | A JSON object containing capability parameters |
nstInfo Object
Attribute | Required? | Cardinality | Content | Values | Description |
---|---|---|---|---|---|
UUID | Y | 1 | UUID/String | UUID of NST | |
invariantUUID |
Y | 1 |
Integer
UUID/String | Invariant UUID | |
name |
Y | 1 |
string |
name of the |
NST model |
...
nsstInfo Object
Attribute | Required? | Cardinality | Content | Values | Description |
---|
UUID | Y | 1 |
JSON BLOB
A JSON object containing service profile parameters (in case of NSI selection) or slice profile parameters (in case of NSSI selection). The contents are based on 3GPP TS 23.541 Release 16 contents, and will be in the form of attribute value pairs.
...
UUID/String | UUID of NSST | ||||
invariantUUID | Y | 1 | UUID/String | Invariant UUID | |
name | Y | 1 | string | name of the NSST model |
RequestInfo Object
Attribute | Required? | Cardinality |
---|
Content
Values
Description
Content | Values | Description | |||
---|---|---|---|---|---|
transactionId | Y | 1 | UUID/String | A unique ID to track an ONAP transaction. | |
requestId | Y | 1 | UUID/String | A unique ID to track multiple requests associated with a transaction. | |
callbackUrl | Y | 1 | URL | The end point of a callback service where recommendations are posted. | |
callbackHeader | Y | 1 |
JSON blob | The header information a client expecting in a async callback. | |
sourceId |
Y | 1 |
JSON BLOB
A JSON object containing capability parameters
nstInfo Object
...
Attribute
...
Required?
...
Cardinality
...
Content
...
Values
...
Description
String | The unique ID of a client making an optimization call. | ||||
numSolutions | Y | 1 | Integer | Expected number of solutions. numSolution can also be specified using an optimization query policies, where the default configured value is 1. The value from a request gets higher precedence over the value defined in a policy. | |
timeout | N | 1 | Integer | A tolerance window (in secs) for expecting solutions. Default is 600 secs. | |
addtnlArgs | N | 1 | JSON BLOB | Any additional parameters that have to be considered for NSI selection |
2.3. Synchronous Response Body
...
UUID
...
Y
...
1
...
UUID/String
...
UUID of NST/NSST
...
Attribute | Required? | Cardinality | Content | Values | Description |
---|
requestId | Y | 1 | UUID/String | A unique |
Id for an ONAP transaction. |
transactionId | Y | 1 | UUID/String | A unique ID to track multiple requests associated with |
callbackUrl
Y
1
URL
The end point of a callback service where recommendations are posted.
sourceId
Y
1
String
The unique ID of a client making an optimization call.
timeout
N
1
Integer
A tolerance window (in secs) for expecting solutions. Default is 600 secs.
...
a transaction. | |||||
statusMessage | N | 1 | String | Reasoning if a requestStatus is failed. | |
requestStatus | Y | 1 | String | accepted, failed | The status of a request. |
2.4. Asynchronous Response Header
Header Name | Required? | Description |
---|---|---|
Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
Authorization | Y | 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. |
Content-Type | Y | Determines the format of the request content. Only application/json is supported. |
Attribute | N | Attribute and respective value that a client has sent in the callbackHeader field of a request. |
Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |
2.5. Asynchronous Response Body
Attribute | Required? | Cardinality | Content | Values | Description |
---|---|---|---|---|---|
requestId | Y | 1 | UUID/String | A unique Id for an ONAP transaction |
transactionId
Y
1
UUID/String
A unique ID to track multiple requests associated with a transaction.
statusMessage
N
1
String
. |
requestStatus
Y
1
String
accepted, failed
The status of a request.
2.4. Asynchronous Response Header
...
Header Name
...
Required?
...
Description
...
Accept
...
N
...
Determines the format of the body of the response. Valid value is “application/json”
...
Authorization
...
Y
...
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.
...
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.
transactionId | Y | 1 | UUID/String | A unique ID to track multiple requests associated with a transaction. | |
statusMessage | N | 1 | String | Reasoning if requestStatus is failed. | |
requestStatus | Y | 1 | String | completed, failed, pending | The status of a request. |
solutions | Y | 0..N | List of Solution Object | Solutions related to a request. |
Solution Object
...
Attribute | Required? | Cardinality | Content | Values | Description |
---|
existingNSI | Y | 1 |
UUID/String
A unique Id for an ONAP transaction.
transactionId
Y
1
UUID/String
A unique ID to track multiple requests associated with a transaction.
statusMessage
N
1
String
Reasoning if requestStatus is failed.
requestStatus
Y
1
String
completed, failed, pending
The status of a request.
solutions
Y
1..N
List of Solution Object
Solutions related to a request.
...
Boolean | True/False | true if sharedNSISolution is present, false if newNSISolution is present | |||
sharedNSISolution | N | 1 | sharedNSISolution Object | A list of matching NSIs from existing NSIs | |
newNSISolution | N | 1 | newNSISolution Object | Details of the constituents of the new NSIs that can be instantiated to meet the request |
sharedNSISolution Object
Attribute | Required? | Cardinality |
---|
Content
Values
Description
Content | Values | Description | |||
---|---|---|---|---|---|
invariantUUID | Y | 1 | UUID/String | Invariant UUID | |
UUID | Y | 1 | UUID/String | UUID of NSI | |
NSIName | Y | 1 |
sharedNSIsolution
String | Name of NSI | |
NSIId | Y |
1 |
String |
A list of matching NSIs from existing NSIs
Id of NSI | |
matchLevel | Y |
1 |
JSON BLOB | Details of |
...
match of requirements in service profile, and recommendation rank (future enhancement, based on telemetry, capacity, etc.) |
newNSISolution Object
Attribute | Required? | Cardinality | Content | Values | Description |
---|
SliceProfiles | Y | 1 |
UUID
Y
1
UUID/String
UUID of NSI
..N | List of SliceProfile objects | List of JSON objects 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. Assumption: Slice profile contains sub-net type. If not, this should also be included. | |||
matchLevel | Y | 1 | JSON BLOB | Details of match of requirements in service profile, and recommendation rank (future enhancement, based on telemetry |
newNSISolution Object
...
Attribute
...
Required?
...
Cardinality
...
Content
...
Values
...
Description
...
A JSON object 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.
Assumption: Slice profile contains sub-net type. If not, this should also be included.
...
NSSIList
...
Y
...
1..N
...
List of NSSISolution objects
...
List of NSSIs which when concatenated shall form the NSI, in case NSSI is not present, only the sliceProfile will be included.
...
, capacity, etc.) |
3. Select NSSI API
Interface Definition | Description |
---|---|
Content-Type | application/json |
Operation Type | POST |
URI | https://{host}:{port}/api/oof/selection/nssi/v1 |
3.1. Request Header
Header | Required | Description |
---|---|---|
Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
Authorization | Y | 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. |
Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |
Content-Type | Y | Determines the format of the request content. Only application/json is supported. |
3.2. Request Body
...
Attribute | Required? | Cardinality | Content | Values | Description |
---|---|---|---|---|---|
sliceProfile | Y | 1 | JSON |
Blob | A JSON object 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. | |
NSSTInfo | Y | 1 |
nsstInfo Object |
The content of nsstInfo Object | ||
requestInfo | Y | 1 |
requestInfo Object |
The content of the |
...
requestInfo Object |
nsstInfo Object
Attribute | Required? | Cardinality | Content | Values | Description |
|
| ||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
|
|
|
|
| ||||||
UUID/String | Y | 1 | UUID/String | Invariant UUID |
NSSI Object
of NSST | |||||||||||
invariantUUID | Y | 1 | UUID/String | Invariant UUID | |||||||
name | Y | 1 | string |
| name of the NSST model |
RequestInfo Object
Attribute | Required? | Cardinality | Content | Values | Description |
---|---|---|---|---|---|
transactionId | Y | 1 | UUID/String |
A unique ID to track an ONAP transaction. | ||
requestId | Y | 1 |
3. Select NSSI API
...
Interface Definition
...
Description
...
Content-Type
...
application/json
...
Operation Type
...
POST
...
URI
...
https://{host}:{port}/api/oof/v1/selection/nssi
3.1. Request Header
...
Header
...
Required
...
Description
...
Accept
...
N
...
Determines the format of the body of the response. Valid value is “application/json”
...
Authorization
...
Y
...
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.
...
Content-Length
...
N
...
Number of bytes in the body of the request. Note that content length is limited to 1 MB.
...
Content-Type
...
Y
...
Determines the format of the request content. Only application/json is supported.
UUID/String | A unique ID to track multiple requests associated with a transaction. | ||||
callbackUrl | Y | 1 | URL | The end point of a callback service where recommendations are posted. | |
callbackHeader | N | 1 | JSON blob | The header information a client expecting in a async callback. | |
sourceId | Y | 1 | String | The unique ID of a client making an optimization call. | |
numSolutions | Y | 1 | Integer | Expected number of solutions. numSolutions can also be specified using an optimization query policies, where the default configured value is 1. The value from a request gets higher precedence over the value defined in a policy. | |
timeout | N | 1 | Integer | A tolerance window (in secs) for expecting solutions. Default is 600 secs. | |
addtnlArgs | N | 1 | JSON BLOB | Any additional parameters that have to be considered for NSSI selection |
3.3. Synchronous Response
...
Body
Attribute | Required? | Cardinality | Content | Values | Description |
---|
requestId | Y | 1 |
sliceProfile Object
...
Attribute
...
Required?
...
Cardinality
...
Content
...
Values
...
Description
...
sliceProfileParameters
...
Y
...
1
...
JSON BLOB
...
A JSON object 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.
UUID/String | A unique Id for an ONAP transaction. | ||||
transactionId | Y | 1 | UUID/String | A unique ID to track multiple requests associated with a transaction. | |
statusMessage | N | 1 | String | Reasoning if a requestStatus is failed. | |
requestStatus | Y | 1 | String | accepted, failed | The status of a request. |
3.4. Asynchronous Response Header
Header Name | Required? | Description |
---|---|---|
Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
Authorization | Y | 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. |
Content-Type | Y | Determines the format of the request content. Only application/json is supported. |
Attribute | N | Attribute and respective value that a client has sent in the callbackHeader field of a request. |
Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |
3.5. Asynchronous Response Body
nsstInfo Object
...
Attribute
...
Required?
...
Cardinality
...
Content
...
Values
...
Description
...
UUID
...
Y
...
1
...
UUID/String
...
UUID of NSST
...
RequestInfo Object
Attribute | Required? | Cardinality | Content | Values | Description |
---|
requestId | Y | 1 | UUID/String | A unique |
Id for an ONAP transaction. |
transactionId | Y | 1 | UUID/String | A unique ID to |
track multiple requests associated with a transaction. | |||||
statusMessage | N | 1 | String | Reasoning if requestStatus is failed. | |
requestStatus | Y | 1 |
String | completed, failed, pending | The |
status of a |
request. |
solutions | Y | 0..N |
sourceId
Y
1
String
The unique ID of a client making an optimization call.
List of sharedNSSISolution Objects | Solutions related to a request. |
sharedNSSISolution Object
Attribute | Required? | Cardinality | Content | Values | Description |
---|---|---|---|---|---|
invariantUUID |
Y | 1 |
timeout
N
1
Integer
A tolerance window (in secs) for expecting solutions. Default is 600 secs.
3.3. Synchronous Response Body
...
Attribute
...
Required?
...
Cardinality
...
Content
...
Values
...
Description
...
requestId
...
Y
...
1
...
UUID/String
...
A unique Id for an ONAP transaction.
...
transactionId
...
Y
...
1
...
UUID/String
...
A unique ID to track multiple requests associated with a transaction.
UUID/String | Invariant UUID | ||||
UUID | Y | 1 | UUID/String | UUID of NSSI | |
NSSIName | Y | 1 | String | Name of NSSI | |
NSSIId | Y | 1 | String | Id of NSSI | |
matchLevel | Y | 1 | JSON BLOB | Details of match of requirements in service profile, and recommendation rank (future enhancement, based on telemetry, capacity, etc.) |
4. Terminate NxI (x=S, SS)
Interface Definition | Description |
---|---|
Content-Type | application/json |
Operation Type | POST |
URI | https://{host}:{port}/api/oof/terminate/nxi/v1 |
4.1. Request Header
Header | Required |
---|
...
statusMessage
...
N
...
1
...
String
...
Reasoning if a requestStatus is failed.
...
requestStatus
...
Y
...
1
...
String
...
accepted, failed
...
The status of a request.
3.4. Asynchronous Response Header
Header Name
Description | ||
---|---|---|
Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
Authorization | Y | 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 |
Content-Type
Y
Determines the format of the request content. Only application/json is supported.
an HTTP 401 Unauthorized response is returned. | ||
Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |
...
Content-Type | Y | Determines the format of the request content. Only application/json is supported. |
4.2. Request Body
Attribute | Required? | Cardinality | Content | Values | Description |
---|
type | Y | 1 |
String |
A unique Id for an ONAP transaction.
transactionId
NSI, NSSI | |
invariantUUID | N |
1 | UUID/String |
A unique ID to track multiple requests associated with a transaction.
Invariant UUID | |||
UUID | N | 1 | UUID/String |
Reasoning if requestStatus is failed.
UUID of NSI/NSSI | |||
NxIId | Y | 1 | String |
completed, failed, pending
The status of a request.
Id of NSI/NSSI | ||
requestInfo | Y | 1 |
requestInfo Object |
Solutions related to a request.
...
The content of the requestInfo Object |
RequestInfo Object
Attribute | Required? | Cardinality | Content | Values | Description |
---|
transactionId | Y | 1 |
List of NSSI Objects
A list of matching NSSIs
NSSI Object
UUID/String | A unique ID to track an ONAP transaction. | ||||
requestId | Y | 1 | UUID/String | A unique ID to track multiple requests associated with a transaction. | |
callbackUrl | N | 1 | URL | The end point of a callback service where recommendations are posted. | |
callbackHeader | N | 1 | JSON blob | The header information a client expecting in a async callback. | |
sourceId |
Attribute
Required?
Cardinality
Content
Values
Description
UUID
Y
1
UUID/String
UUID of NSSI
Y | 1 | String |
The unique ID of a client making an optimization call. | |
timeout | N |
1 |
Integer | A tolerance window (in secs) for expecting solutions. Default is 600 secs. | |
addtnlArgs | N |
1 | JSON BLOB |
4. Deallocate NxI (x=S, SS)
...
Interface Definition
...
Description
...
Content-Type
...
application/json
...
Operation Type
...
POST
...
URI
...
https://{host}:{port}/api/oof/v1/terminate/nxi
4.1. Request Header
...
Header
...
Required
...
Description
...
Accept
...
N
...
Determines the format of the body of the response. Valid value is “application/json”
...
Authorization
...
Y
...
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.
...
Content-Length
...
N
...
Number of bytes in the body of the request. Note that content length is limited to 1 MB.
...
Content-Type
...
Y
...
Determines the format of the request content. Only application/json is supported.
Any additional parameters that have to be considered for NSSI selection |
4.3. Synchronous Response Body
Attribute | Required? | Cardinality | Content | Values | Description |
---|---|---|---|---|---|
requestId | Y | 1 | UUID/String | A unique Id for an ONAP transaction. | |
transactionId | Y | 1 | UUID/String | A unique ID to track multiple requests associated with a transaction. | |
statusMessage | N | 1 | String | Reasoning if a requestStatus is failed. | |
requestStatus | Y | 1 | String | accepted, failed | The status of a request. |
terminateResponse | Y | 1 | Boolean | ||
reason | N | 1 | String | Reason if false is sent (example, "Restricted by Policy") |
5. HTTP Response Code
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. |
...