Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents
maxLevel2

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.

1.2. Request Body

...

Attribute

...

Required?

...

Cardinality

...

Content

...

Values

...

Description

...

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.

...

sourceId

...

Y

...

1

...

String

...

The unique ID of a client making an optimization call.

...

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.


NOTE

This page is only for understanding. Please refer swagger for a comprehensive documentation.

swagger link : https://gerrit.onap.org/r/gitweb?p=optf/osdf.git;a=blob;f=docs/sections/swaggerdoc/oof-osdf-has-api.json;h=7289ef4a24de6f6ad728d91554dc7b0394681b27;hb=HEAD


SAMPLE API

SAMPLE NSI API ( preferReuse : true )

Code Block
languagepowershell
themeRDark
titleSample NSI API Request
collapsetrue
{
   "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
languageyml
themeRDark
titleSample NSI API Response
collapsetrue
{
  "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
languageyml
themeRDark
titleSample NSI API Request
collapsetrue
{
   "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
languageyml
themeRDark
titleSample NSI API Response
collapsetrue
{
  "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
languageyml
themeRDark
titleSample NSSI API Request
collapsetrue
{
  "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
languageyml
themeRDark
titleSample NSSI API Response
collapsetrue
{
  "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
languageyml
themeRDark
titleSample NxI API Request
collapsetrue
{
  "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
languageyml
themeRDark
titleSample NxI API Response
collapsetrue
{
  "requestId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
  "transactionId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
  "requestStatus": "success",
  "terminateResponse": true,
  "reason": ""
}

Sample NxI API(NSSI Termination)

Code Block
languageyml
themeRDark
titleSample NxI API Request
collapsetrue
{
  "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
languageyml
themeRDark
titleSample NxI API Response
collapsetrue
{
  "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. 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.

1.2. Request Body

Attribute

Required?

Cardinality

Content

Values

Description

serviceProfileY1JSON 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.
requestInfoY1requestInfo 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.

callbackHeaderY1JSON 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.

numSolutionsY1Integer

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



1.3. Synchronous Response Body

...

timeout

...

N

...

1

...

Integer

1.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.

1.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.

1.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

...

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

requestId

Y

1

UUID/String

Invariant UUID

UUID

Y

1

UUID/String

UUID of NST

NSTName

A unique Id for an ONAP transaction.

transactionId

Y

1

UUID/String

Name of NSTmatchLevel

A unique ID to track multiple requests associated with a transaction.

statusMessage

N

Y

1

JSON BLOBDetails 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/v1/selection/nsi

2.1. Request Header

String


Reasoning if a requestStatus is failed.

requestStatus

Y

1

String

accepted, failed

The status of a request.

1.4. Asynchronous Response Header

Header Name

Required?

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

Type

N

Number of bytes in the body

Y

Determines the format of the request

. Note that content length is limited to 1 MB

content. Only application/json is supported.

AttributeNAttribute and respective value that a client has sent in the callbackHeader field of a request.

Content-

Type

Length

Y

Determines the format

N

Number of bytes in the body of the request

content. Only application/json is supported.

...

. Note that content length is limited to 1 MB.

1.5. Asynchronous Response Body

Attribute

Required?

Cardinality

Content

Values

Description

serviceProfile

requestId

Y

1

serviceProfile ObjectThe content of the serviceProfile ObjectNSTInfoY1nstInfo ObjectThe content of nstInfo ObjectNSSTInfoListY1..Nlist of nsstInfo ObjectAll the constituent NSSTs of the NSTsubnetCapabilityListY1..NsubnetCapabilityObjectSubnet capabilitiessolutionPref

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

Integer

0-100Preference for new or existing NSI solutions. 0 indicates preference only for existing NSI solutions, and 100 indicates preference only for new solutions, If both should be provided (subject to the rank), a value between 1-99 should be given.

String

completed, failed, pending

The status of a request.

solutions

requestInfo

Y

1

requestInfo

List of NSTSolution Object

The content of the requestInfo Object

A list of matching NSTs

NSTSolution subnetCapability Object

Attribute

Required?

Cardinality

Content

Values

Description

domainType
invariantUUIDY1
StringAN/TN-FH/TN-MH/TN-BH/CNSub-net type

capabilityDetails

Y

1

JSON BLOB

A JSON object containing capability parameters

nstInfo Object

Description
UUID/String
Invariant UUID

Attribute

Required?

Cardinality

Content

Values

UUID

Y

1

UUID/String


UUID of NST

NSTNameY1String
Name of NST
invariantUUIDmatchLevelY1UUID/StringInvariant UUID

nsstInfo Object

...

Attribute

...

Required?

...

Cardinality

...

Content

...

Values

...

Description

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

...

UUID

...

Y

...

1

...

UUID/String

...

UUID of NSST

...

RequestInfo Object

Attribute

Required?

Cardinality

Content

Values

Description

transactionId

Y

1

UUID/String

A unique ID to track an ONAP transaction.

requestId

serviceProfileY1

UUID/String

A unique ID to track multiple requests associated with a transaction.

callbackUrl
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.
NSTInfoY1

URL

The end point of a callback service where recommendations are posted.

callbackHeader
nstInfo Object
The content of nstInfo Object
NSSTInfoY1..Nlist of nsstInfo Object
All the constituent NSSTs of the NST
subnetCapabilitiesY1
JSON blobThe header information a client expecting in a async callback.
..Nlist of subnetCapability Object
Subnet capabilities
preferReuseN

sourceId

Y
1

String

The unique ID of a client making an optimization call.

numSolutions

Boolean



requestInfoY1
IntegerExpected 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.

addtnlArgsN1JSON BLOBAny additional parameters that have to be considered for NSI selection

...

requestInfo Object
The content of the requestInfo Object


subnetCapability Object

Attribute

Required?

Cardinality

Content

Values

Description

domainTypeY1String
Sub-net type

capabilityDetails

Y

1

JSON BLOB


A JSON object containing capability parameters

nstInfo Object

Attribute

Required?

Cardinality

Content

Values

Description

requestId

UUID

Y

1

UUID/String

A unique Id for an ONAP transaction.

transactionId

UUID of NST

invariantUUIDY1UUID/String

A unique ID to track multiple requests associated with a transaction.

statusMessage

N

1

String

Reasoning if a requestStatus is failed.

requestStatus


Invariant UUID
name 
Y1

String

accepted, failed

The status of a request.

2.4. Asynchronous Response Header

string
name of the NST model

nsstInfo Object

Attribute

Header Name

Required?

Description

Cardinality

Accept

Content

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.

AttributeNAttribute 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.

...

Values

Description

UUID

Y

1

UUID/String


UUID of NSST

invariantUUIDY1UUID/String
Invariant UUID
nameY1string
name of the NSST model

RequestInfo Object

Attribute

Required?

Cardinality

Content

Values

Description

requestId

transactionId

Y

1

UUID/String


A unique

Id for

ID to track an ONAP transaction.

transactionId

requestId

Y

1

UUID/String


A unique ID to track multiple requests associated with a transaction.

statusMessage

callbackUrl

N

Y

1

String

Reasoning if requestStatus is failed.

requestStatus

URL


The end point of a callback service where recommendations are posted.

callbackHeaderY1

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

...

solution

...

Y

...

1

...

sharedNSISolution Object / newNSISolution Object

...

A list of matching NSIs from existing NSIs / Details of the constituents of the new NSIs that can be instantiated to meet the request

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.

numSolutionsY1Integer
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.

addtnlArgsN1JSON BLOB
Any additional parameters that have to be considered for NSI selection

2.3. Synchronous Response Body

...

Attribute

Required?

Cardinality

Content

Values

Description

invariantUUID

requestId

Y

1

UUID/String

Invariant UUIDUUID

A unique Id for an ONAP transaction.

transactionId

Y

1

UUID/String

UUID of NSI

NSIName

A unique ID to track multiple requests associated with a transaction.

statusMessage

N

Y

1

String

Name of NSINSIId

Reasoning if a requestStatus is failed.

requestStatus

Y

1

String

Id of NSImatchLevelY1JSON BLOBDetails 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

...

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.

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.

AttributeNAttribute 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

sliceProfile

requestId

Y

1

Boolean

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.

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.

3.2. Request Body

...

Attribute

...

Required?

...

Cardinality

...

Content

...

Values

...

Description

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

List of Solution Object


Solutions related to a request.

Solution Object

Attribute

Required?

Cardinality

Content

Values

Description

existingNSIY1BooleanTrue/Falsetrue if sharedNSISolution is present, false if newNSISolution is present

sharedNSISolution 

N

1

sharedNSISolution Object


A list of matching NSIs from existing NSIs 

newNSISolutionN1newNSISolution 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

invariantUUIDY1UUID/String
Invariant UUID

UUID

Y

1

UUID/String


UUID of NSI

NSINameY1String
Name of NSI
NSIIdY1String
Id of NSI
matchLevelY1JSON 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

SliceProfilesY1..NList 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.

matchLevelY1JSON BLOB
Details of match of requirements in service profile, and recommendation rank (future enhancement, based on telemetry, 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

...

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.

nsstInfo Object

...

Attribute

...

Required?

...

Cardinality

...

Content

...

Values

...

Description

...

UUID

...

Y

...

1

...

UUID/String

...

UUID of NSST

...

Attribute

Required?

Cardinality

Content

Values

Description

transactionId
sliceProfileY1

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.

callbackHeaderN1JSON blobThe header information a client expecting in a async callback.sourceId
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.
NSSTInfoY1

String

The unique ID of a client making an optimization call.

numSolutions
nsstInfo Object
The content of nsstInfo Object
requestInfoY1
IntegerExpected 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.

addtnlArgsN1JSON BLOBAny additional parameters that have to be considered for NSSI selection

...

requestInfo Object
The content of the requestInfo Object

nsstInfo Object

Attribute

Required?

Cardinality

Content

Values

Description

UUID

Y

1

UUID/String


UUID of NSST

invariantUUIDY1UUID/String
Invariant UUID
nameY1string
name of the NSST model

RequestInfo Object

Attribute

Required?

Cardinality

Content

Values

Description

requestId

transactionId

Y

1

UUID/String


A unique

Id for

ID to track an ONAP transaction.

transactionId

requestId

Y

1

UUID/String


A unique ID to track multiple requests associated with a transaction.

statusMessage

callbackUrl

N

Y

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.

...

Content-Length

...

N

...

Number of bytes in the body of the request. Note that content length is limited to 1 MB.

...

URL


The end point of a callback service where recommendations are posted.

callbackHeaderN1JSON 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.

numSolutionsY1Integer
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.

addtnlArgsN1JSON 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

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

completed

accepted, failed

, pending

The status

of a request.

NSSIsolutions

Y

1..N

List of NSSISolution Objects

Solutions related to

of a request.

NSSISolution Object

3.4. Asynchronous Response Header

Header Name

Attribute

Required?

Cardinality

Description

Content

Accept

Values

Description

existingNSSIY1BooleanTrue/FalseNote: In case of Core and Transport, if no existing NSSI matches, this field will be "false", and no other info will be present. From this, NSSMF has to infer that a new NSSI has to be created, for which it shall invoke the appropriate procedures.

sharedNSSIsolution

N

1

sharedNSSISolution Object

A list of matching NSSIs from existing NSSIs

newNSSISolutionN1newNSSISolution ObjectDetails of the constituents of the new NSSIs that can be instantiated to meet the request. This shall be returned only in the case of RAN NSSI selection for deployment option 1.

...

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.

AttributeNAttribute 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

Attribute

Required?

Cardinality

Content

Values

Description

invariantUUID

requestId

Y

1

UUID/String

Invariant UUIDUUID

A unique Id for an ONAP transaction.

transactionId

Y

1

UUID/String

UUID of NSSI

NSSIName

A unique ID to track multiple requests associated with a transaction.

statusMessage

N

Y

1

String

Name of NSSINSSIId

Reasoning if requestStatus is failed.

requestStatus

Y

1

String

Id of NSSImatchLevelY1JSON BLOBDetails of match of requirements in service profile, and recommendation rank (future enhancement, based on telemetry, capacity, etc.)

...

completed, failed, pending

The status of a request.

solutions

Y

0..N

List of sharedNSSISolution Objects


Solutions related to a request.

sharedNSSISolution Object

Attribute

Required?

Cardinality

Content

Values

Description

SliceProfileList

invariantUUIDY1UUID/String
Invariant UUID

UUID

Y

1

..NJSON BLOB

A JSON object containing slice profile parameters of the constituents. 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 NSSI

NSSINameY1String
Name of NSSI
NSSIIdY1String
Id of NSSI
Assumption: Slice profile contains sub-net type. If not, this should also be included.
matchLevelY1JSON 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/v1/terminate/nxi/v1

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.

...

Attribute

Required?

Cardinality

Content

Values

Description

typeY1IntegerString

1=NSI

2=NSI, NSSI


invariantUUIDYN1UUID/String
Invariant UUID

UUID

YN

1

UUID/String


UUID of NSI/NSSI

NxIIdY1String
Id of NSI/NSSI
requestInfoY1requestInfo Object
The content of the 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 a requestStatus is failed.

requestStatus

Y

1

String

accepted, failed

The status of a request.

terminateResponseY1Boolean

0 = Do not terminate

1= Terminate



reasonInforeasonN1String
Reason if "0" false is sent (example, "Restricted by Policy")

...