Table of Contents
Expand

Table of Contents

...

AttributeRequired?CardinalityContentValuesDescription

requestInfo

Y

1

RequestInfo Object


The content of the RequestInfo object.







RequestInfo Object

AttributeRequired?CardinalityContentValuesDescription

...

AttributeRequired?CardinalityContentValuesDescription







Synchronous Response Body

AttributeRequired?CardinalityContentValuesDescription

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

requestStatus

Y

1

String

accepted

, failed

The status of a request.

Asynchronous Response Header

...

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.

Asynchronous Response Body

AttributeRequired?CardinalityContentValuesDescription

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

requestStatus

Y

1

String

completed

, failed

, pending

The status of a request.


solutions

Y

1

Solution Object


Solutions related to a request.

Route Solution Object

AttributeRequired?CardinalityContentValuesDescription

...







HTTP Response Code

HTTP CodeResponse PhraseDescription

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.

520Solver errorRequested number of solutions cannot be found.

Request Example


Code Block
languagejs
themeEclipse
titleOOF/PCI Request Example
linenumberstrue
collapsetrue
{
  "requestInfo": {
    "transactionId": "xxx-xxx-xxxx",
    "requestId": "yyy-yyy-yyyy",
    "callbackUrl": "https://wiki.onap.org:5000/callbackUrl",
    "sourceId": "",
    "requestType": "create",
    "numSolutions": 1,
    "optimizers": ["route"],
    "timeout": 600
  },
  "routeRequest": {
  "srcPort":
  {
  "src-access-topology-id": "Topo113",
  "src-access-client-id": "clientU12",
  "src-access-provider-id": "VDF1234",
  "src-access-node-id": "Node123",
  "src-access-ltp-id": "1345"
  },
  "dstPort":
  {
  "dst-access-topology-id": "Topo3421",
  "dst-access-client-id": "clientD123",
  "dst-access-provider-id": "VDF3214",
  "dst-access-node-id": "node323",
  "dst-access-ltp-id": "3452"
  }
},
}

...

Code Block
languagejs
themeEclipse
titleOOF/PCI Response Example
linenumberstrue
collapsetrue
{
  "transactionId": "xxx-xxx-xxxx",
  "requestId": "yyy-yyy-yyyy",
  "requestStatus": "completed",
  "statusMessage": "success",
  "solutions": [
	{
		"startTime": "2016-10-01T00:30+01:00",
		"finishTime": "2016-10-01T00:40+01.00",
		"VPNs":[
     {
       "access-topology-id": ”Topo123”,
        "access-client-id": “client-123”,
        "access-provider-id": “provider-123”,
        "access-node-id": “node-123”,
        "src-access-ltp-id": “ltp-src-123”,
        "dst-access-ltp-id": “ltp-dst-123”
     }
         ]
}
	}
  ]
}

SDNC - OOF:

Calculate Route

Type : POST 

URL : /v1/route

Payload: 

OOF- AAI for retrieving topology information: 

1. Get the logical links as “operation-status = Up”

Method: GET URL: https://<AAI host>:<AAI port>/aai/v14/network/logical-links?operation-status="Up"

returns logical-links []

2. query for the name of the p-interface from the logical link.

logical-links [].get[0].relationship-list[0].relationship.relationship-key: "p-interface.interface-name"."relationship-value": "some name”

3. Search for the name of the pnffrom the urlof the p-interface and compare with the request from SDNC

...