Revision Description
Page properties | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
...
Table of Contents | ||
---|---|---|
|
API Request Overview
Info |
---|
In the URI of each method in this document we write “V#” instead of V1, since when moving from Version to Version sometimes we forgot to update it in the document. So to make our life easier, V# covers the Latest version. |
Standard API Request Headers
Approved Standard Headers are documented at https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
...
Required?
...
Status | ||||
---|---|---|---|---|
|
...
Specifies the format of the response message body.
...
Status | ||||
---|---|---|---|---|
|
...
Revision History
R5 Release
Revision Description | Time | Swagger Ready |
---|---|---|
Adding new methods - Insert, Update and Delete ENB. Add new errors. Added Additional Cell Information for both eNB and gNB (in the Insert eNB Request, Update eNB) Changing the response of Get NodeB - adding more information to the Cell Object | July 2020 | Ready |
Changing the end point of Update GNB. Adding more information to the Cell Object like Update eNB | July 2020 | Ready |
Supporting E2M Set Parameter (New method) with Enable RIC parameter | May 2020 | Ready |
Get All NodeB States Request changed its End-Point URL Adding Connection Status in RAN object in Get All NodeB States Response | TBD | |
RAN Definition in the RAN List table turn to be Array of bytes (We don't decode the ASN.1) | June 2020 | Ready |
AD SDL Notification Description | June 2020 | NA |
REST API
API Request Overview
Info |
---|
In the URI of each method in this document we write “V#” instead of V1, since when moving from Version to Version sometimes we forgot to update it in the document. So to make our life easier, V# covers the Latest version. |
Standard API Request Headers
Approved Standard Headers are documented at https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
# | Header | Required? | Description | ||||||
---|---|---|---|---|---|---|---|---|---|
1 | Accept |
| Specifies the format of the response message body. Structured text message payloads are required to support application/json. No other format is permitted. As they are the only supported format, the accept header is not relevant for those requests. | ||||||
2 | Content-type |
| Determines the format of the request content. Only application/json is supported. |
RESTful Web Services Interface Specification
# | API | Resource After base URI | HTTP Verb |
---|---|---|---|
| /v#/nodeb/x2-setup | POST | |
| /v#/nodeb/endc-setup | POST | |
/v#/nodeb/<ranName>/reset * | PUT | ||
1 | Health Check Request | /v#/health | GET |
2 | Get nodeb data Request | /v#/nodeb/<ranName> | GET |
3 | Update GNB Request | /v#/nodeb/gnb/<ranName> | PUT |
4 | Insert ENB Request | /v#/nodeb/enb | POST |
5 | Update ENB Request | /v#/nodeb/enb/<ranName> | PUT |
6 | Delete ENB Request | /v#/nodeb/enb/<ranName> | DELETE |
7 | Shut Down Request | /v#/nodeb/shutdown | PUT |
8 | Get All nodeb States Request | /v#/nodeb/states | GET |
9 | Get All E2T Request | /v#/e2t/list | GET |
10 | E2M set parameters | /v#/nodeb/parameters | PUT |
Note: Due to router problem we change the Endpoint of Reset nodeb to /v1/nodeb-reset/<ranName>.
Error Handling
Note that
RESTful Web Services Interface Specification
...
X2 Setup Request Message Request (deprecated)
...
/v#/nodeb/x2-setup
...
POST
...
ENDC Setup Request Message Request (deprecated)
...
/v#/nodeb/endc-setup
...
POST
...
Health Check Request
...
/v#/health
...
GET
...
Get nodeb data Request
...
/v#/nodeb/<ranName>
...
GET
...
Shut Down Request
...
/v#/nodeb/shutdown
...
PUT
...
Get All nodeb States Request (Changed, Stretch Goal)
...
/v#/nodeb/states
...
Note: Due to router problem we change the Endpoint of Reset nodeb to /v1/nodeb-reset/<ranName>.
Error Handling
Note that, in some scenarios, Client may receive error responses that originate from the network layers. The content of these responses will not conform to the exception schema specified here.
# | Header | Required? | Description | ||||||
---|---|---|---|---|---|---|---|---|---|
1 | errorCode |
| Code which identifies the error | ||||||
2 | errorMessage |
| Human readable text |
Error Example:
Code Block | ||
---|---|---|
| ||
{ "errorCode": 402, "errorMessage": “Mandatory fields are missing” } |
Here is the list of HTTP status code:
HTTP Error | errorCode | errorMessage | Details |
---|---|---|---|
202 Accepted | 510 | No E2T Instance available. | The existing RAN can't associated with any available E2T Instance. When E2T will be identified, this RAN will be served. |
511 | No Routing Manager Available | Currently there is connectivity to the Routing Manager. E2M will try later. | |
400 Bad Request | 401 | corrupted json | Can't parse the payload of the body |
402 | validation error | E.G: Mandatory fields are missing or invalid (The value isn't according expected); | |
403 | Activity <activity name> rejected. RAN current state <state> does not allow its execution | E.G: Reset request is sent when state isn't Connected | |
405 | command already in progress | E.G: 2 parallel Red Button were sent | |
406 | Node Already Exist | Insert eNB to existing RAN | |
404 Not Found | If the resource name doesn't exist (e.g.: nodec instead of nodeb) - the system returns HTTP Error 404 with "404 page not found" text. | ||
404 | resource not found | The classic 404 - Resource ID doesn't exist in the system |
415 Unsupported Media Type | 415 | Header validation error | In case there is a body and header application/json is missing - error. |
500 Internal Server Error | 500 | RNIB error | |
501 | Internal Server Error. Please try again later | ||
502 | RMR error | ||
503 Service Unavailable | 510 | No E2T Instance available. | The New RAN can't be added, please try later. |
511 | No Routing Manager Available | The New RAN can't be added, please try later. |
Here is the list of HTTP status code and list of the error codes for our APIs:
HTTP 202 Accepted | HTTP Error 400 Bad Request | HTTP Error 404 Not Found | HTTP Error 500 Internal Server Error | HTTP Error 503 Service Unavailable | |
---|---|---|---|---|---|
Get nodeb data | 404 | 500, 501 | |||
Update GNB, Insert ENB, Update ENB Delete ENB | 401, 402, 406 | 404 | 500, 501 | ||
Shut Down |
405 | 500, 501, 502 | 511 | |||
Get All nodeb | 500, 501 | ||||
Get All E2T | 500, 501 | ||||
E2M Set Parameters | 401 |
In addition, there are 2 Basic HTTP error happens before the handlers are calling:
...
Table 1 – Common Type, Enum values
# | Attribute Type | Legal Values |
---|---|---|
1 | Connection Status | UNKNOWN_CONNECTION_STATUS = 0; CONNECTED = 1; DISCONNECTED = 2; CONNECTED_SETUP_FAILED = 3; CONNECTING = 4; SHUTTING_DOWN = 5; SHUT_DOWN = 6; |
2 | Failure Type | UNKNOWN_TYPE = 0; X2_SETUP_FAILURE = 1; ENDC_X2_SETUP_FAILURE = 2; |
3 | Node Type | UNKNOWN = 0; ENB = 1; GNB = 2; |
4 | Radio Network Layer Cause | UNKNOWN = 0; HANDOVER_DESIRABLE_FOR_RADIO_REASONS = 1; TIME_CRITICAL_HANDOVER = 2; RESOURCE_OPTIMISATION_HANDOVER = 3; REDUCE_LOAD_IN_SERVING_CELL = 4; PARTIAL_HANDOVER = 5; UNKNOWN_NEW_ENB_UE_X2AP_ID = 6; UNKNOWN_OLD_ENBME_UE_X2AP_ID = 7; UNKNOWN_PAIR_OF_UE_X2AP_ID = 8; HO_TARGET_NOT_ALLOWED = 9; TX2_RELOC_OVERALL_EXPIRY = 10; T_RELOC_PREP_EXPIRY = 11; CELL_NOT_AVAILABLE = 12; NO_RADIO_RESOURCES_AVAILABLE_IN_TARGET_CELL = 13; INVALID_MME_GROUP_ID = 14; UNKNOWN_MME_CODE = 15; ENCRYPTION_INTEGRITY_PROTECTION_ALGORITHMS_NOT_SUPPORTED = 16; REPORT_CHARACTERISTICS_EMPTY = 17; NO_REPORT_PERIODICITY = 18; EXISTING_MEASUREMENT_ID = 19; UNKNOWN_ENB_MEASUREMENT_ID = 20; MEASUREMENT_TEMPORARILY_NOT_AVAILABLE = 21; UNSPECIFIED = 22; LOAD_BALANCING = 23; HANDOVER_OPTIMISATION = 24; VALUE_OUT_OF_ALLOWED_RANGE = 25; MULTIPLE_E_RAB_ID_INSTANCES = 26; SWITCH_OFF_ONGOING = 27; NOT_SUPPORTED_QCI_VALUE = 28; MEASUREMENT_NOT_SUPPORTED_FOR_THE_OBJECT = 29; TDC_OVERALL_EXPIRY = 30; TDC_PREP_EXPIRY = 31; ACTION_DESIRABLE_FOR_RADIO_REASONS = 32; REDUCE_LOAD = 33; RESOURCE_OPTIMISATION = 34; TIME_CRITICAL_ACTION = 35; TARGET_NOT_ALLOWED = 36; NO_RADIO_RESOURCES_AVAILABLE = 37; INVALID_QOS_COMBINATION = 38; ENCRYPTION_ALGORITHMS_NOT_SUPPORTED = 39; PROCEDURE_CANCELLED = 40; RRM_PURPOSE = 41; IMPROVE_USER_BIT_RATE = 42; USER_INACTIVITY = 43; RADIO_CONNECTION_WITH_UE_LOST = 44; FAILURE_IN_THE_RADIO_INTERFACE_PROCEDURE = 45; BEARER_OPTION_NOT_SUPPORTED = 46; MCG_MOBILITY = 47; SCG_MOBILITY = 48; COUNT_REACHES_MAX_VALUE = 49; UNKNOWN_OLD_EN_GNB_UE_X2AP_ID = 50; PDCP_OVERLOAD = 51; |
5 | Transport Layer Cause | UNKNOWN = 0; TRANSPORT_RESOURCE_UNAVAILABLE = 1; UNSPECIFIED = 2; |
6 | Protocol Cause | UNKNOWN = 0; TRANSFER_SYNTAX_ERROR = 1; ABSTRACT_SYNTAX_ERROR_REJECT = 2; ABSTRACT_SYNTAX_ERROR_IGNORE_AND_NOTIFY = 3; MESSAGE_NOT_COMPATIBLE_WITH_RECEIVER_STATE = 4; SEMANTIC_ERROR = 5; UNSPECIFIED = 6; ABSTRACT_SYNTAX_ERROR_FALSELY_CONSTRUCTED_MESSAGE = 7; |
7 | Miscellaneous Cause | UNKNOWN = 0; CONTROL_PROCESSING_OVERLOAD = 1; HARDWARE_FAILURE = 2; OM_INTERVENTION = 3; NOT_ENOUGH_USER_PLANE_PROCESSING_RESOURCES = 4; UNSPECIFIED = 5; |
8 | Time To Wait | UNKNOWN_TIMEOUT = 0; V1S = 1; V2S = 2; V5S = 3; V10S = 4; V20S = 5; V60S = 6; |
9 | Type Of Error | UNKNOWN_ERROR = 0; NOT_UNDERSTOOD = 1; MISSING = 2; |
10 | Triggering Message | UNKNOWN_MESSAGE = 0; INITIATING_MESSAGE = 1; SUCCESSFUL_OUTCOME = 2; UNSUCCESSFUL_OUTCOME = 3; |
11 | Criticality | UNKNOWN_CRITICALITY = 0; REJECT = 1; IGNORE = 2; NOTIFY = 3; |
12 | Bandwidth Reduced SI | UNKNOWN_BANDWIDTH_REDUCED_SI = 0; SCHEDULED = 1; |
13 | Eutra Mode / Nr Mode | UNKNOWN = 0; FDD = 1; TDD = 2; |
14 | Freq Band Indicator Priority | UNKNOWN_FREQ_BAND_INDICATOR_PRIORITY = 0; NOT_BROADCASTED = 1; BROADCASTED = 2; |
15 | Number Of Antenna Ports | UNKNOWN_NUMBER_OF_ANTENNA_PORTS = 0; AN1 = 1; AN2 = 2; AN4 = 3; |
16 | Transmission Bandwidth | UNKNOWN_TRANSMISSION_BANDWIDTH = 0; BW6 = 1; BW15 = 2; BW25 = 3; BW50 = 4; BW75 = 5; BW100 = 6; BW1 = 7; |
17 | Subframe Allocation Type | UNKNOWN_SUBFRAME_ALLOCATION_TYPE = 0; ONE_FRAME = 1; FOUR_FRAME = 2; |
18 | Radio frame Allocation Period | UNKNOWN_RADIOFRAME_ALLOCATION_PERIOD = 0; N1 = 1; N2 = 2; N4 = 3; N8 = 4; N16 = 5; N32 = 6; |
19 | Enb Type | UNKNOWN_ENB_TYPE = 0; MACRO_ENB = 1; HOME_ENB = 2; SHORT_MACRO_ENB = 3; LONG_MACRO_ENB = 4; |
20 | Additional Special Subframe | UNKNOWN = 0; SSP0 = 1; SSP1 = 2; SSP2 = 3; SSP3 = 4; SSP4 = 5; SSP5 = 6; SSP6 = 7; SSP7 = 8; SSP8 = 9; SSP9 = 10; |
21 | Special Subframe | UNKNOWN = 0; SSP0 = 1; SSP1 = 2; SSP2 = 3; SSP3 = 4; SSP4 = 5; SSP5 = 6; SSP6 = 7; SSP7 = 8; SSP8 = 9; |
22 | Subframe Assignment | UNKNOWN_SUBFRAME_ASSIGNMENT = 0; SA0 = 1; SA1 = 2; SA2 = 3; SA3 = 4; SA4 = 5; SA5 = 6; SA6 = 7; |
23 | Cyclic Prefix | UNKNOWN_CYCLIC_PREFIX = 0; NORMAL = 1; EXTENDED = 2; |
24 | Additional Special Subframe Patterns | UNKNOWN = 0; SSP10 = 1 |
25 | nrscs | UNKNOWN_NRSCS = 0; SCS15 = 1; SCS30 = 2; SCS60 = 3; SCS120 = 4; |
26 | ncnrb | UNKNOWN_NCNRB = 0; NRB11 =1; NRB18 =2; NRB24 =3; NRB25 =4; NRB31 =5; NRB32 =6; NRB38 =7; NRB51 =8; NRB52 =9; NRB65 =10; NRB66 =11; NRB78 =12; NRB79 =13; NRB93 =14; NRB106 =15; NRB107 =16; NRB121 =17; NRB132 =18; NRB133 =19; NRB135 =20; NRB160 =21; NRB162 =22; NRB189 =23; NRB216 =24; NRB217 =25; NRB245 =26; NRB264 =27; NRB270 =28; NRB273 =29; |
27 | cause | misc:control-processing-overload, protocol:transfer-syntax-error, radioNetwork:handover-desirable-for-radio-reasons, radioNetwork:pDCP-Overload |
1. Health Check Request |
Resource
| Resource for this interface /v#/ |
health |
Description |
For simple health check the client should send GET request to /health endpoint. If client receives 200OK it means the server is up and running |
HTTP Method |
GET | |
Supported Representation Formats | Request: Request Format ie application/json, none, etc Response: Response Format ie application/json, none, etc |
Successful HTTP Response Code |
200 OK |
Code Block | ||||
---|---|---|---|---|
| ||||
POSTGET http://<serverBaseURL>/v#/nodeb/x2-setuphealth |
Request Data Details
Listed below are the key elements included in the request.
# | Parameter | Location | Data Type | Required? | Description and Value Rules | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1 | accept | Header | String |
| Refer |
to Standard API Request Headers |
Code Block |
---|
...
|
...
|
...
| ||
GET http://localhost:3800/v1/health
accept: application/json |
Response Data Details
The body is empty in case 200 OK. No other response expected. If no answer - there is a problem....
2. Get NodeB Request |
Resource
| Resource for this interface /v#/nodeb |
Description | For fetching nodeb data from Redis, the client should send GET request |
HTTP Method | GET |
Supported Representation Formats | Request: Request Format ie application/json, none, etc Response: Response Format ie application/json, none, etc |
Successful HTTP Response Code | 200 OK |
Code Block | ||||
---|---|---|---|---|
| ||||
GET http://<serverBaseURL>/v#/nodeb/<ranName> |
Request Data Details
Listed below are the key elements included in the request.
# | Parameter | Location | Data Type | Required? | Description and Value Rules | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1 | accept | Header | String |
| Refer to Standard API Request Headers | ||||||
2 | content-type | Header |
Status | ||||
---|---|---|---|---|
|
Refer to Standard API Request Headers
ranIp
Body
String
Status | ||||
---|---|---|---|---|
|
IP of the RAN
ranPort
Body
Int
Status | ||||
---|---|---|---|---|
|
Port of the RAN
ranName
String |
|
Name of the RAN
Refer to Standard API Request Headers | |||||||||||
3 | ranIp | Body | String |
| IP of the RAN | ||||||
4 | ranPort | Body | Int |
| Port of the RAN | ||||||
5 | ranName | Body | String |
| Name of the RAN |
Code Block | ||||
---|---|---|---|---|
| ||||
GET | ||||
Code Block | ||||
| ||||
POST http://localhost:3800/v1/nodeb/x2-setupNYC213123 accept: application/json contentContent-Type: application/json { "ranIp":"10.0.2.15", "ranPort":5577, "ranName": "test1" } |
Response Data Details
The body is empty in case 204 No Content, and with specific HTTP code and error details in case failure
...
ENDC Setup Request (Deprecated)
...
Resource
...
Resource for this interface
/v#/nodeb
...
Description
...
E2 Manager exchange with this gNodeb RAN Setup Request and Response.
...
HTTP Method
...
POST
...
Supported Representation Formats
...
Request: Request Format ie application/json, none, etc
Response: Response Format ie application/json, none, etc
...
Successful HTTP Response Code
...
204 No Content
In case 200 OK, this is the payload
Code Block | ||||
---|---|---|---|---|
| ||||
POST http://<serverBaseURL>/v#/nodeb/endc-setup |
Request Data Details
Listed below are the key elements included in the request.
Location
accept
Header
# | Parameter | Location | Data Type | Required? | Value Rules | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1 | content-type | Header | String |
| |||||||
2 | connectionStatus | Body | ENUM |
| |||||||
3 | ip | Body |
String |
|
Refer to Standard API Request Headers
content-type
Header
4 | port | Body | Integer |
|
Refer to Standard API Request Headers
5 | nodeType | Body |
ENUM |
|
IP of the RAN
6 | ranName | Body | String | ||
7 | enb (or gnb) | Body |
Object |
|
|
Port of the RAN
| According the nodetype – ENB or GNB Mandatory when the status is CONNECTED | |||
8 | failureType |
Body |
ENUM |
|
|
|
Name of the RAN
Code Block | ||||
---|---|---|---|---|
| ||||
POST http://localhost:3800/v1/nodeb/endc-setup
accept: application/json
content-Type: application/json
{
"ranIp":"10.0.2.15",
"ranPort":5577,
"ranName": "test1"
} |
Response Data Details
The body is empty in case 204 No Content, and with specific HTTP code and error details in case failure
...
1. Health Check Request
...
Resource
...
Resource for this interface
/v#/health
...
Description
...
For simple health check the client should send GET request to /health endpoint. If client receives 200OK it means the server is up and running
...
HTTP Method
...
GET
...
Supported Representation Formats
...
Request: Request Format ie application/json, none, etc
Response: Response Format ie application/json, none, etc
...
Successful HTTP Response Code
...
200 OK
Mandatory when the status is CONNECTED_SETUP_FAILED | |||||||||||
9 | setupFailure | Body | Object |
| Mandatory when the status is CONNECTED_SETUP_FAILED | ||||||
10 | globalNbId | Body | Object |
| Mandatory when the status is CONNECTED. Refer to object globalNbId |
ENB
Contains information of the eNodeb
# | Parameter | Data Type | Required? | Value Rules | ||||||
---|---|---|---|---|---|---|---|---|---|---|
1 | enbType | ENUM |
| Refer to ENB Type ENUM | ||||||
2 | guGroupIds | Array of String |
| |||||||
3 | servedCells | Array of Object |
| Refer to served Cells object |
Served Cells
Contains information of the cell
# | Parameter |
---|
Code Block | ||||
---|---|---|---|---|
| ||||
GET http://<serverBaseURL>/v#/health |
Request Data Details
Listed below are the key elements included in the request.
Data Type | Required? |
---|
Value Rules |
---|
1 |
bandwidthReducedSi |
Header
ENUM |
|
|
| Refer |
Code Block | ||||
---|---|---|---|---|
| ||||
GET http://localhost:3800/v1/health
accept: application/json |
Response Data Details
The body is empty in case 200 OK. No other response expected. If no answer - there is a problem....
...
2. Get NodeB Request
...
Resource
...
Resource for this interface
/v#/nodeb
...
Description
...
For fetching nodeb data from Redis, the client should send GET request
...
HTTP Method
...
GET
...
Supported Representation Formats
...
Request: Request Format ie application/json, none, etc
Response: Response Format ie application/json, none, etc
...
Successful HTTP Response Code
...
200 OK
to bandwidthReducedSi ENUM | ||||||||||
2 | broadcastPlmns | Array of String |
| Array of PLMNs | ||||||
3 | cellId | String |
| |||||||
4 | choiceEutraMode | Object |
| Refer to choice Eutra Mode Object. One of them must appear | ||||||
5 | csgId | String |
| |||||||
6 | eutraMode | ENUM |
Code Block | ||||
---|---|---|---|---|
| ||||
GET http://<serverBaseURL>/v#/nodeb/<ranName> |
Request Data Details
Listed below are the key elements included in the request.
Location
accept
Header
| Refer |
to eutraMode ENUM | ||
7 | freqBandIndicatorPriority | ENUM |
content-type
Header
|
|
| Refer |
ranIp
Body
to freqBandIndicatorPriority ENUM | ||||||
8 | mbmsServiceAreaIdentities | Array of String |
|
| |||||
9 |
mbsfnSubframeInfos |
IP of the RAN
ranPort
Body
Array of Object |
| Refer to mbsfn Subframe Object | ||||||
10 | multibandInfos | Array of Integer |
|
|
11 | neighbourInfos |
Port of the RAN
Array of Object |
| Refer to neighbour Information Object | ||||||||
12 | numberOfAntennaPorts | ENUM |
| Refer to numberOfAntennaPorts ENUM | ||||||
13 | pci | Integer |
ranName
Body
|
Name of the RAN
Code Block | ||||
---|---|---|---|---|
| ||||
GET http://localhost:3800/v1/nodeb/NYC213123
accept: application/json
Content-Type: application/json |
Response Data Details
In case 200 OK, this is the payload
14 | prachConfiguration | Object |
| Refer to prach Configuration Object | ||||||
15 | Tac |
Location
content-type
String |
|
Refer to tac Object |
16 |
additionalCellInformation |
Object |
|
|
ip
Body
String
Status | ||||
---|---|---|---|---|
|
port
Body
Integer
Status | ||||
---|---|---|---|---|
|
nodeType
| Refer to Additional Cell Information Object |
Choice Eutra Mode
Contains information of the Cell – It is either FDD or TDD - Only one should exist
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | fdd | Object | Refer to FDD Info | |
2 | tdd | Object | Refer to TDD Info |
FDD Info
Contains information of the FDD Cell
# | Parameter | Data Type | Required? | Value Rules | |||||
---|---|---|---|---|---|---|---|---|---|
1 | dlTransmissionBandwidth | ENUM |
|
ranName
Body
String
enb (or gnb)
Body
Refer to TransmissionBandwidth ENUM | ||||||
2 | dlearFcn | Integer |
|
|
According the nodetype – ENB or GNB
Mandatory when the status is CONNECTED
failureType
| |||
3 | ulTransmissionBandwidth |
ENUM |
|
|
Mandatory when the status is CONNECTED_SETUP_FAILED
| Refer to TransmissionBandwidth ENUM | ||
4 | ulearFcn | Integer |
setupFailure
Body
|
|
Mandatory when the status is CONNECTED_SETUP_FAILED
Status | ||||
---|---|---|---|---|
|
Mandatory when the status is CONNECTED.
Refer to object globalNbId
...
|
TDD Info
Contains information of the eNodebTDD Cell
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
additionalSpecialSubframeExtensionInfo |
Object |
|
|
| Refer |
to Additional Special Subframe Extension Info |
2 |
additionalSpecialSubframeInfo |
Object |
| Refer to Additional Special Subframe Info | ||||||
3 |
earFcn |
Integer |
|
Refer to served Cells object
Served Cells
Contains information of the cell
4 | specialSubframeInfo | Object |
| Refer to Special Subframe Info | ||||||
5 | subframeAssignment |
Data Type
ENUM |
|
|
Refer to bandwidthReducedSi ENUM
broadcastPlmns
| |||||||||
6 | transmissionBandwidth | ENUM |
|
Array of PLMNs
cellId
String
Status | ||||
---|---|---|---|---|
|
choiceEutraMode
Object
Additional Special Subframe Extension Info
Contains information of the Sub Frame
# | Parameter | Data Type | Required? | Value Rules | ||||||
---|---|---|---|---|---|---|---|---|---|---|
1 | additionalSpecialSubframePatternsExtension | ENUM |
| Refer |
to Additional Special Subframe Patterns ENUM | ||
2 | cyclicPrefixDl | ENUM |
csgId
|
|
| Refer to CyclicPrefix ENUM | |||||||||
3 | cyclicPrefixUl | ENUM |
| Refer |
to CyclicPrefix ENUM |
Additional Special Subframe Info
Contains information of the Sub Frame
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | additionalSpecialSubframePatterns |
ENUM |
|
|
| Refer |
to Additional Special Subframe ENUM |
2 |
cyclicPrefixDl |
ENUM |
|
|
mbsfnSubframeInfos
| Refer to CyclicPrefix ENUM | |||||
3 | cyclicPrefixUl | ENUM |
|
|
| Refer |
multibandInfos
Array of Integer
Status | ||||
---|---|---|---|---|
|
neighbourInfos
to CyclicPrefix ENUM |
Special Subframe Info
Contains information of the Sub Frame
# | Parameter | Data Type | Required? | Value Rules | ||
---|---|---|---|---|---|---|
1 | SpecialSubframePatterns | ENUM |
|
|
| Refer |
to Special Subframe ENUM | |
2 | cyclicPrefixDl |
ENUM |
|
|
| Refer |
to CyclicPrefix ENUM |
3 |
cyclicPrefixUl |
ENUM |
| Refer to CyclicPrefix ENUM |
mbsfn Subframe
Contains information of the Sub Frame
# | Parameter | Data Type | Required? | Value Rules | ||||||
---|---|---|---|---|---|---|---|---|---|---|
1 | radioframeAllocationOffset | Integer |
| |||||||
2 | radioframeAllocationPeriod | ENUM |
prachConfiguration
Object
Status | ||||
---|---|---|---|---|
|
Refer to prach Configuration Object
Tac
|
Refer to tac Object
Choice Eutra Mode
Contains information of the Cell – It is either FDD or TDD - Only one should exist
...
Data Type
...
3 | subframeAllocation | String |
| |||||||
4 | subframeAllocationType | ENUM |
|
Neighbor Information
...
fdd
...
Object
...
Refer to FDD Info
...
tdd
...
Object
...
Refer to TDD Info
...
Contains information of the FDD CellNeighbor
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
ecgi |
String |
|
2 |
pci | Integer |
| |||||||
3 |
earFcn |
Integer |
|
Refer to TransmissionBandwidth ENUM
4 |
tac |
String |
|
|
|
...
Prach Configuration
Contains information of the TDD CellPrach
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
highSpeedFlag |
Boolean |
|
|
Refer to Additional Special Subframe Extension Info
| |||
2 |
prachConfigurationIndex |
Integer |
|
|
| |||
3 |
prachFrequencyOffset | Integer |
| |||||||
4 |
rootSequenceIndex |
Integer |
|
Refer to Special Subframe Info
|
|
5 |
subframeAssignment
ENUM
Status | ||||
---|---|---|---|---|
|
transmissionBandwidth
zeroCorrelationZoneConfiguration | Integer |
|
Additional
...
Cell Information
This will be updated in R5 by REST APIContains information of the Sub Frame
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
cellLatitude |
Float |
|
|
| |||
2 |
cellLongitude |
Float |
|
|
|
Refer to CyclicPrefix ENUM
3 |
cyclicPrefixUl
antennaHeight | Float |
| In meter | ||||||
4 | antennaAzimuthDirection | Float |
|
|
Refer to CyclicPrefix ENUM
Additional Special Subframe Info
Contains information of the Sub Frame
| degree, 0-360 | |||||||||
5 | antennaTiltAngle | Float |
| degree, 0-90 | ||||||
6 | antennaMaxTransmit | Float |
Data Type
additionalSpecialSubframePatterns
|
|
| dBm | ||
7 | antennaMaxGain | Float |
Refer to Additional Special Subframe ENUM
cyclicPrefixDl
|
|
|
dB |
8 |
sectorId |
Integer |
|
|
Refer to CyclicPrefix ENUM
...
| ID of the Sector |
Gnb
Contains information of the Sub Framegnodeb
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
servedNrCells |
Array of Object |
| Refer |
to served NR Cells object |
2 |
ranFunctions |
Array of Object |
|
Refer to CyclicPrefix ENUM
cyclicPrefixUl
Refer to served RAN function object |
Served NR Cells
Contains information of the GNB cell
# | Parameter | Data Type | Required? | Value Rules | ||||||
---|---|---|---|---|---|---|---|---|---|---|
1 | nrNeighbourInfos | Array of object |
| Refer to NrNeighbourInformation object | ||||||
2 | servedNrCellInformation | Object |
| Refer |
...
to ServedNRCellInformation object |
Nr Neighbour Information
Contains information of the Sub FrameNeighbor of this GNB Note it is quite similar to Served NR Cell Information
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
nrCgi |
String |
| |||||||
2 |
choiceNrMode |
Object |
| Refer to Choice NR Mode Object | ||||||
3 |
configuredStac | String |
|
|
| |||
4 |
nrMode | ENUM |
|
Neighbor Information
Contains information of the Neighbor
| Refer to NR Mode ENUM | ||
5 | nrPci |
Data Type
ecgi
String
Status | ||||
---|---|---|---|---|
|
Integer |
|
|
earFcn
Integer
Status | ||||
---|---|---|---|---|
|
6 | stac5g | String |
|
...
Served NR Cell Information
Contains information of the Prachcell
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
cellId |
String |
| |||||||
2 |
choiceNrMode |
Object |
| Refer to Choice NR Mode Object | ||||||
3 |
configuredStac |
String |
|
|
| |||
4 |
nrMode |
ENUM |
|
|
| Refer to NR Mode ENUM |
5 |
nrPci | Integer |
| |||||||
6 |
...
servedPlmns |
...
Array of |
...
String |
| Array of PLMNs | ||||||
7 | stac5g | String |
Data Type
servedNrCells
|
|
Refer to served NR Cells object
| |||
8 | additionalCellInformation |
Object |
|
|
| Refer |
...
to Additional Cell Information |
Choice NR Mode
Contains information of the GNB cellTBD – Note – It is either FDD or TDD, one of them must exist
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
nrNeighbourInfos
Array of object
Status | ||||
---|---|---|---|---|
|
fdd | Object | Refer to NR FDD Info | |
2 |
tdd | Object |
Refer |
...
to NR TDD Info |
NR FDD Info
Contains information of the Neighbor of this GNB Note it is quite similar to Served NR Cell InformationNR FDD Cell
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
dlFreqInfo |
String
Status | ||||
---|---|---|---|---|
|
choiceNrMode
Object
Status | ||||
---|---|---|---|---|
|
Refer to Choice NR Mode Object
configuredStac
String
Status | ||||
---|---|---|---|---|
|
nrMode
ENUM
Status | ||||
---|---|---|---|---|
|
Refer to NR Mode ENUM
nrPci
Object | Refer to dl Freq Info Object | |||
2 | dlTransmissionBandwidth | Object | Refer to dl Transmission Bandwidth Object | |
3 | ulFreqInfo | Object | Refer to ul Freq Info Object | |
4 | ulTransmissionBandwidth | Object | Refer to ul Transmission Bandwidth Object |
dl Freq Info or ul Freq Info or nr Freq Info NR
Contains information of the Cell
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | frequencyBands | Object | Refer to frequency Bands Object | |
2 | nrArFcn | integer |
|
|
3 |
sulInformation |
String
Status | ||||
---|---|---|---|---|
|
Served NR Cell Information
Object | Refer to sul Information Object |
Frequency Bands
Contains information of the cellFrequency Bands
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
nrFrequencyBand |
integer |
| |||||||
2 |
supportedSulBands |
Array of integer |
|
|
Refer to Choice NR Mode Object
configuredStac
String
Status | ||||
---|---|---|---|---|
|
nrMode
ENUM
Refer to NR Mode ENUM
nrPci
Integer
Status | ||||
---|---|---|---|---|
|
servedPlmns
Array of String
Status | ||||
---|---|---|---|---|
|
Array of PLMNs
stac5g
String
Status | ||||
---|---|---|---|---|
|
Choice NR Mode
|
sul Information
Contains information of the TBD
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | sulArFcn | integer | ||
2 | sulTransmissionBandwidth | object | Refer to sul Transmission Bandwidth object |
dl Transmission Bandwidth or ul Transmission Bandwidth or sul Transmission Bandwidth or Transmission Bandwidth
Contains information of the TBD
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | ncnrb | ENUM | Refer to ncnrb ENUM | |
2 | nrscs | ENUM | Refer to nrscs ENUM |
NR TDD Info
Contains information of the NE Cell TDDContains information of the TBD – Note – It is either FDD or TDD, one of them must exist
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
nrFreqInfo | Object | Refer |
to nr Freq Info Object |
2 |
transmissionBandwidth | Object | Refer |
...
to transmission Bandwidth Object |
RAN Function
Contains information of the NR FDD CellFunction this RAN supports - Please refer to O-RAN Working Group 3, E2 Application Protocol (E2AP)
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
ranFunctionId |
Object
Refer to dl Freq Info Object
dlTransmissionBandwidth
Object
Refer to dl Transmission Bandwidth Object
ulFreqInfo
Object
Refer to ul Freq Info Object
ulTransmissionBandwidth
Object
Refer to ul Transmission Bandwidth Object
...
Integer |
| |||||||||
2 | ranFunctionDefinition | Array of bytes |
| |||||||
3 | ranFunctionRevision | Integer |
|
Setup Failure
Contains information of the Cellerror
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
frequencyBands
Object
Refer to frequency Bands Object
nrArFcn
integer
Status | ||||
---|---|---|---|---|
|
sulInformation
Object
Refer to sul Information Object
Frequency Bands
cause_group | ENUM |
| One of the following ENUM
| |||||||
2 | TimeToWait | ENUM | Look on TimeToWait ENUM | |||||||
3 | CriticalityDiagnostics | Object |
Criticality Diagnostics
Contains information of the errorContains information of the Frequency Bands
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
informationElementCriticalityDiagnostics |
Object |
· |
2 |
procedureCode |
Integer |
3 |
procedureCriticality |
supportedSulBands
Array of integer
Status | ||||
---|---|---|---|---|
|
...
ENUM | Refer to Criticality ENUM | |||
4 | triggeringMessage | ENUM | Refer to TriggeringMessage ENUM |
Information Element Criticality Diagnostics
Contains information of the TBDerror
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 |
ieCriticality |
integer
sulTransmissionBandwidth
object
Refer to sul Transmission Bandwidth object
dl Transmission Bandwidth or ul Transmission Bandwidth or sul Transmission Bandwidth or Transmission Bandwidth
Contains information of the TBD
...
Data Type
...
ENUM | Refer to Criticality ENUM | |||
2 | ieId | Integer | ||
3 | typeOfError | ENUM | Refer to TypeOfError ENUM |
3. Update GNB Request |
Resource | Resource for this interface /v#/nodeb/gnb |
Description | For storing nodeb data to Redis, the client should send PUT request |
HTTP Method | PUT |
Supported Representation Formats | Request: Request Format ie application/json, none, etc Response: Response Format ie application/json, none, etc |
Successful HTTP Response Code | 200 OK |
|
Request Data Details
# | Parameter | Location |
---|
...
ncnrb
...
ENUM
...
Refer to ncnrb ENUM
...
nrscs
...
ENUM
...
Refer to nrscs ENUM
NR TDD Info
Contains information of the NE Cell TDD
Data Type | Required? | Value Rules | |
---|---|---|---|
accept |
Header |
String |
YES | Refer |
transmissionBandwidth
Object
Refer to transmission Bandwidth Object
RAN Function
Contains information of the Function this RAN supports - Please refer to O-RAN Working Group 3, E2 Application Protocol (E2AP)
...
Data Type
...
ranFunctionId
...
Integer
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
...
Status | ||||
---|---|---|---|---|
|
Setup Failure
Contains information of the error
...
Data Type
...
cause_group
...
ENUM
...
Status | ||||
---|---|---|---|---|
|
...
One of the following ENUM
- RadioNetworkLayerCause
- TransportLayerCause
- ProtocolCause
- MiscellaneousCause
...
TimeToWait
...
ENUM
...
Look on TimeToWait ENUM
...
CriticalityDiagnostics
...
Object
Criticality Diagnostics
Contains information of the error
...
Data Type
...
informationElementCriticalityDiagnostics
...
Object
...
·
...
procedureCode
...
Integer
...
procedureCriticality
...
ENUM
...
Refer to Criticality ENUM
...
triggeringMessage
...
ENUM
...
Refer to TriggeringMessage ENUM
Information Element Criticality Diagnostics
Contains information of the error
...
Data Type
...
ieCriticality
...
ENUM
...
Refer to Criticality ENUM
...
ieId
...
Integer
...
typeOfError
...
ENUM
...
Refer to TypeOfError ENUM
...
3. Update GNB Request
...
Resource
...
Resource for this interface
/v#/nodeb
...
Description
...
For storing nodeb data to Redis, the client should send PUT request
...
HTTP Method
...
PUT
...
Supported Representation Formats
...
Request: Request Format ie application/json, none, etc
Response: Response Format ie application/json, none, etc
...
Successful HTTP Response Code
...
200 OK
...
PUT http:
//<serverBaseURL>/v#/nodeb/<ranName>/update
to Standard API Request Headers | |||||
content-type | Header | String | YES | Refer to Standard API Request Headers | |
servedNrCells | Body | Array of Object | YES | Please refer to Served NR Cells array inside the gNB Object (In the Get NodeB Response) |
Example:
Code Block | ||||
---|---|---|---|---|
| ||||
PUT http://localhost:3800/v1/nodeb/gnb/test1
accept: application/json
{
"servedNrCells": [
{
"servedNrCellInformation": {
"cellId": "demo1",
"choiceNrMode": {
"fdd": {
"ulFreqInfo": {
"nrArFcn": 1,
"sulInformation": {
"sulArFcn": 2,
"sulTransmissionBandwidth": {
"nrscs": 1,
|
Request Data Details
...
#
...
Parameter
...
Location
...
Data Type
...
Required?
...
Value Rules
...
YES
...
content-type
...
Header
...
String
...
YES
...
Refer to Standard API Request Headers
...
Example:
Code Block | ||||
---|---|---|---|---|
| ||||
PUT http://localhost:3800/v1/nodeb/test1/update accept: application/json { "servedNrCells": [ { "servedNrCellInformation": { "nrPcincnrb": 100,1 "cellId": "02f829:0007ab0178", "servedPlmns": [ } "02f829" ], "nrMode": "FDD" }, "choiceNrMode": { "fddfrequencyBands": {[ "ulFreqInfo": { "nrArFcn": "100", { "frequencyBands": [ { "nrFrequencyBand": 3, "nrFrequencyBand": 9, "supportedSulBands": [ 9 1, ] } ]2, }, "dlFreqInfo": { 3 "nrArFcn": "100", "frequencyBands": [ ] { } "nrFrequencyBand": 9, "supportedSulBands": [] 9}, ] "dlFreqInfo": { } ]"nrArFcn": 1, }, "ulTransmissionBandwidthsulInformation": { "nrscs": "SCS15", "ncnrbsulArFcn": "NRB11" 2, }, "dlTransmissionBandwidthsulTransmissionBandwidth": { "nrscs": "SCS15", "ncnrbnrscs": "NRB11"1, } } "ncnrb": }1 }, "nrNeighbourInfos": [ {} "nrCgi": "string", "choiceNrMode": { }, "fdd": { "ulFreqInfofrequencyBands": {[ "nrArFcn": "100", { "frequencyBands": [ { "nrFrequencyBand": 3, "nrFrequencyBand": 9, "supportedSulBands": [ 9 1, ] } 2, ] }, "dlFreqInfo": { 3 "nrArFcn": "100", "frequencyBands": [] { } "nrFrequencyBand": 9, ] "supportedSulBands": [ }, 9 "ulTransmissionBandwidth": { ] } "nrscs": 1, ] },"ncnrb": 1 "ulTransmissionBandwidth": { }, "nrscs": "SCS15", "dlTransmissionBandwidth": { "ncnrb": "NRB11" }, "nrscs": 1, "dlTransmissionBandwidth": { "nrscsncnrb": "SCS15",1 "ncnrb": "NRB11" } } } } }, "configuredStacnrMode": "string"1, "nrPci": 1, "nrPci": 200, "nrMode": "FDD", "stac5g": "string" }, { "nrCgi": "string", "choiceNrMode": { "fdd": { "ulFreqInfo": { "nrArFcn": "100", "frequencyBands": [ { "nrFrequencyBand": 9, "supportedSulBands": [ 9 ] } ] }, "dlFreqInfo": { "nrArFcn": "100", "frequencyBands": [ { "nrFrequencyBand": 9, "supportedSulBands": [ 9 ] } ] }, "ulTransmissionBandwidth": { "nrscs": "SCS15", "ncnrb": "NRB11" }, "dlTransmissionBandwidth": { "nrscs": "SCS15", "ncnrb": "NRB11" } } }, "configuredStac": "string", "nrPci": 201, "nrMode": "FDD", "stac5g": "string" } ] }, { "servedNrCellInformation": { "nrPci": 101, "cellId": "02f829:0007ab0120", "servedPlmns": [ "02f829" ], "nrMode": "FDD", "choiceNrMode": { "fdd": { "ulFreqInfo": { "nrArFcn": "100", "frequencyBands": [ { "nrFrequencyBand": 9, "supportedSulBands": [ 9 ] } ] }, "dlFreqInfo": { "nrArFcn": "100", "frequencyBands": [ { "nrFrequencyBand": 9, "supportedSulBands": [ 9 ] } ] }, "ulTransmissionBandwidth": { "nrscs": "SCS15", "ncnrb": "NRB11" }, "dlTransmissionBandwidth": { "nrscs": "SCS15", "ncnrb": "NRB11" } } } }, "nrNeighbourInfos": [ { "nrCgi": "string", "choiceNrMode": { "fdd": { "ulFreqInfo": { "nrArFcn": "100", "frequencyBands": [ { "nrFrequencyBand": 9, "supportedSulBands": [ 9 ] } ] }, "dlFreqInfo": { "nrArFcn": "100", "frequencyBands": [ { "nrFrequencyBand": 9, "supportedSulBands": [ 9 ] } ] }, "ulTransmissionBandwidth": { "nrscs": "SCS15", "ncnrb": "NRB11" }, "dlTransmissionBandwidth": { "nrscs": "SCS15", "ncnrb": "NRB11" } } }, "configuredStac": "string", "nrPci": 300, "nrMode": "FDD", "stac5g": "string" } ] } ] } |
Response Data Details
In case 200 OK, the payload is identical to Get NodeB <RAN Name>.
...
4. Reset nodeb Request
...
Resource
...
Resource for this interface
/v#/nodeb/<ran name>/reset
Note: Due to router problem we change the Endpoint of Reset nodeb to /v1/nodeb/<ran name>/reset
...
Description
...
E2 Manager is requested to Reset specific RAN
...
HTTP Method
...
PUT
...
Supported Representation Formats
...
Request: Request Format ie application/json, none, etc
Response: Response Format ie application/json, none, etc
...
Successful HTTP Response Code
...
204 No Content
servedPlmns": [
"demo"
]
}
},
{
"servedNrCellInformation": {
"cellId": "demo2",
"choiceNrMode": {
"fdd": {
"ulFreqInfo": {
"nrArFcn": 1,
"sulInformation": {
"sulArFcn": 2,
"sulTransmissionBandwidth": {
"nrscs": 1,
"ncnrb": 1
}
},
"frequencyBands": [
{
"nrFrequencyBand": 3,
"supportedSulBands": [
1,
2,
3
]
}
]
},
"dlFreqInfo": {
"nrArFcn": 1,
"sulInformation": {
"sulArFcn": 2,
"sulTransmissionBandwidth": {
"nrscs": 1,
"ncnrb": 1
}
},
"frequencyBands": [
{
"nrFrequencyBand": 3,
"supportedSulBands": [
1,
2,
3
]
}
]
},
"ulTransmissionBandwidth": {
"nrscs": 1,
"ncnrb": 1
},
"dlTransmissionBandwidth": {
"nrscs": 1,
"ncnrb": 1
}
}
},
"nrMode": 1,
"nrPci": 2,
"servedPlmns": [
"whatever2"
]
},
"nrNeighbourInfos": [
{
"nrCgi": "demo1",
"choiceNrMode": {
"fdd": {
"ularFcnFreqInfo": {
"nrArFcn": 1,
"sulInformation": {
"sulArFcn": 2,
"sulTransmissionBandwidth": {
"nrscs": 1,
"ncnrb": 1
}
},
"frequencyBands": [
{
"nrFrequencyBand": 3,
"supportedSulBands": [
1,
2,
3
]
}
]
},
"dlarFcnFreqInfo": {
"nrArFcn": 1,
"sulInformation": {
"sulArFcn": 2,
"sulTransmissionBandwidth": {
"nrscs": 1,
"ncnrb": 1
}
},
"frequencyBands": [
{
"nrFrequencyBand": 3,
"supportedSulBands": [
1,
2,
3
]
}
]
}
}
},
"nrMode": 1,
"nrPci": 1
}
]
}
]
}
|
Response Data Details
In case 200 OK, the payload is identical to Get NodeB <RAN Name>.
4. Insert ENB Request |
Resource | Resource for this interface - /v#/nodeb/ |
Description | For storing new nodeb from eNB type to Redis, the client should send POST request |
HTTP Method | POST |
Supported Representation Formats | Request: Request Format ie application/json, none, etc Response: Response Format ie application/json, none, etc |
Successful HTTP Response Code | 201 CREATED |
accept: application/json { "ranName": "test4", "globalNbId": { "nbId": "abc", "plmnId": "def" }, "ip": "10.2.3.1", "port": 1234, "enb": { "enbType": 1, "guGroupIds": [ "ghi" ], "servedCells": [ { "broadcastPlmns": [ "jkl" ], "cellId": "mnop", "choiceEutraMode": { "fdd": { "dlearFcn": 1, "ulearFcn": 1 }, "tdd": { "additionalSpecialSubframeExtensionInfo": { "additionalSpecialSubframePatternsExtension": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 }, "additionalSpecialSubframeInfo": { "additionalSpecialSubframePatterns": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 }, "earFcn": 4, "specialSubframeInfo": { "specialSubframePatterns": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 } } }, "eutraMode": 1, "csgId": "string", "mbmsServiceAreaIdentities": [ "sds" ], "mbsfnSubframeInfos": [ { "radioframeAllocationOffset": 3, "subframeAllocation": "jhg" } ], "multibandInfos": [ 4 ], "neighbourInfos": [ { "earFcn": 4, "ecgi": "klj", "pci": 5, "tac": "wew" } ], "pci": 2, "prachConfiguration": { "highSpeedFlag": true, "prachConfigurationIndex": 5, "prachFrequencyOffset": 6, "rootSequenceIndex": 7, "zeroCorrelationZoneConfiguration": 6 }, "tac": "asd", "additionalCellInformation": { "cellLatitude": 1, "cellLongitude": 1, "antennaHeight": 1, "antennaAzimuthDirection": 2, "antennaTiltAngle": 3, "antennaMaxTransmit": 4, "antennaMaxGain": 5, "sectorId": 6 } }, { "broadcastPlmns": [ "jkl" ], "cellId": "qrst", "choiceEutraMode": { "fdd": { "dlearFcn": 4, "ulearFcn": 2 }, "tdd": { "additionalSpecialSubframeExtensionInfo": { "additionalSpecialSubframePatternsExtension": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 }, "additionalSpecialSubframeInfo": { "additionalSpecialSubframePatterns": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 }, "earFcn": 4, "specialSubframeInfo": { "specialSubframePatterns": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 } } }, "eutraMode": 1, "csgId": "string", "mbmsServiceAreaIdentities": [ "sds" ], "mbsfnSubframeInfos": [ { "radioframeAllocationOffset": 5, "subframeAllocation": "jhg" } ], "multibandInfos": [ 4 ], "neighbourInfos": [ { "earFcn": 2, "ecgi": "klj", "pci": 4, "tac": "wew" } ], "pci": 3, "prachConfiguration": { "highSpeedFlag": true, "prachConfigurationIndex": 4, "prachFrequencyOffset": 3, "rootSequenceIndex": 3, "zeroCorrelationZoneConfiguration": 2 }, "tac": "asd", "additionalCellInformation": { "cellLatitude": 3, "cellLongitude": 3, "antennaHeight": 3, "antennaAzimuthDirection": 3, "antennaTiltAngle": 4, "antennaMaxTransmit": 4, "antennaMaxGain": 5, "sectorId": 5 } } ] } |
Request Data Details
# | Parameter | Location | Data Type | Required? | Value Rules |
---|---|---|---|---|---|
1 | accept | Header | String | YES | Refer to Standard API Request Headers |
2 | content-type | Header | String | YES | Refer to Standard API Request Headers |
3 | ranName | Body | String | YES | The Key to the RAN. Can't be Updated. |
4 | globalNbId | Body | Object | YES | The Key to the RAN. Can't be Updated. Refer to object globalNbId |
5 | ip | Body | String | NO | |
6 | port | Body | Integer | NO | |
7 | enb | Body | Object | YES | Please refer to ENB Object |
Example (TBD)
Response Data Details
In case 201 CREATED, the payload is identical to Get NodeB <RAN Name>.
5. Update ENB Request |
Resource | Resource for this interface - /v#/nodeb |
Description | For Updating nodeb from eNB type to Redis, the client should send PUT request |
HTTP Method | PUT |
Supported Representation Formats | Request: Request Format ie application/json, none, etc Response: Response Format ie application/json, none, etc |
Successful HTTP Response Code | 200 OK |
accept: application/json { "enb": { "enbType": 1, "guGroupIds": [ "ghi" ], "servedCells": [ { "broadcastPlmns": [ "jkl" ], "cellId": "mnop", "choiceEutraMode": { "fdd": { "dlearFcn": 1, "ulearFcn": 1 }, "tdd": { "additionalSpecialSubframeExtensionInfo": { "additionalSpecialSubframePatternsExtension": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 }, "additionalSpecialSubframeInfo": { "additionalSpecialSubframePatterns": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 }, "earFcn": 4, "specialSubframeInfo": { "specialSubframePatterns": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 } } }, "eutraMode": 1, "csgId": "string", "mbmsServiceAreaIdentities": [ "sds" ], "mbsfnSubframeInfos": [ { "radioframeAllocationOffset": 3, "subframeAllocation": "jhg" } ], "multibandInfos": [ 4 ], "neighbourInfos": [ { "earFcn": 4, "ecgi": "klj", "pci": 5, "tac": "wew" } ], "pci": 2, "prachConfiguration": { "highSpeedFlag": true, "prachConfigurationIndex": 5, "prachFrequencyOffset": 6, "rootSequenceIndex": 7, "zeroCorrelationZoneConfiguration": 6 }, "tac": "asd", "additionalCellInformation": { "cellLatitude": 1, "cellLongitude": 1, "antennaHeight": 1, "antennaAzimuthDirection": 2, "antennaTiltAngle": 3, "antennaMaxTransmit": 4, "antennaMaxGain": 5, "sectorId": 6 } }, { "broadcastPlmns": [ "jkl" ], "cellId": "qrst", "choiceEutraMode": { "fdd": { "dlearFcn": 4, "ulearFcn": 2 }, "tdd": { "additionalSpecialSubframeExtensionInfo": { "additionalSpecialSubframePatternsExtension": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 }, "additionalSpecialSubframeInfo": { "additionalSpecialSubframePatterns": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 }, "earFcn": 4, "specialSubframeInfo": { "specialSubframePatterns": 1, "cyclicPrefixDl": 1, "cyclicPrefixUl": 1 } } }, "eutraMode": 1, "csgId": "string", "mbmsServiceAreaIdentities": [ "sds" ], "mbsfnSubframeInfos": [ { "radioframeAllocationOffset": 5, "subframeAllocation": "jhg" } ], "multibandInfos": [ 4 ], "neighbourInfos": [ { "earFcn": 2, "ecgi": "klj", "pci": 4, "tac": "wew" } ], "pci": 3, "prachConfiguration": { "highSpeedFlag": true, "prachConfigurationIndex": 4, "prachFrequencyOffset": 3, "rootSequenceIndex": 3, "zeroCorrelationZoneConfiguration": 2 }, "tac": "asd", "additionalCellInformation": { "cellLatitude": 3, "cellLongitude": 3, "antennaHeight": 3, "antennaAzimuthDirection": 3, "antennaTiltAngle": 4, "antennaMaxTransmit": 4, "antennaMaxGain": 5, "sectorId": 5 } } ] } } |
Request Data Details
# | Parameter | Location | Data Type | Required? | Value Rules |
---|---|---|---|---|---|
1 | accept | Header | String | YES | Refer to Standard API Request Headers |
2 | content-type | Header | String | YES | Refer to Standard API Request Headers |
3 | enb | Body | Object | YES | Please refer to ENB Object |
Response Data Details
In case 200 OK, the payload is identical to Get NodeB <RAN Name>.
6. Delete ENB Request |
Resource | Resource for this interface - /v#/nodeb |
Description | For Deleting nodeb from eNB type to Redis, the client should send DELETE request |
HTTP Method | DELETE |
Supported Representation Formats | Request: Request Format ie application/json, none, etc Response: Response Format ie application/json, none, etc |
Successful HTTP Response Code | 200 OK |
|
Request Data Details
no need in Request Body
Response Data Details
In case success - 204 No Content
7. Shut Down Request |
Resource | Resource for this interface - /v#/nodeb |
Description | E2 Manager is requested to Shut Down all the RANs |
HTTP Method | PUT |
Supported Representation Formats | Request: Request Format ie application/json, none, etc Response: Response Format ie application/json, none, etc |
Successful HTTP Response Code | 204 No Content |
Code Block | ||||
---|---|---|---|---|
| ||||
PUT http://<serverBaseURL>/v#/nodeb/shutdown |
Request Data Details
Listed below are the key elements included in the request.
# | Parameter | Location | Data Type | Required? | Description and Value Rules | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1 | accept | Header | String |
| Refer to - Standard API Request Headers |
Code Block | ||||
---|---|---|---|---|
| ||||
PUT http://localhost:3800/v1/nodeb/shutdown
accept: application/json
|
Response Data Details
There is no Body in case 204 No Content, and with 202 Accepted with error details in case failure such as Routing Manager (511)
8. Get All NodeB States Request |
Resource
| Resource for this interface /v#/nodeb/states |
Description | E2 Manager is requested to get list of all RANs in its RNIB DB Note: In previous Release it was called Get All nodeb and its End point was different. |
HTTP Method | GET |
Supported Representation Formats | Request: Request Format ie application/json, none, etc Response: Response Format ie application/json, none, etc |
Successful HTTP Response Code | 200 OK |
accept: application/json |
Request Data Details
Listed below are the key elements included in the request.
# | Parameter | Location | Data Type | Required? | Description and Value Rules |
---|---|---|---|---|---|
1 | accept | Header | String | YES | Refer to - Standard API Request Headers |
Response Data Details
In case 200 OK, this is the payload
# | Parameter | Location | Data Type | Required? | Value Rules |
---|---|---|---|---|---|
1 | content-type | Header | String | YES | |
2 | rans | Body | List of Object | YES | Can be empty in case no RANs. See nodebIdentity |
nodebIdentity
Contains information of the eNodeb
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | inventoryName | String | YES | Name of the RAN |
2 | globalNbId | Object | YES | ID of the RAN - Refer globalNbId object |
3 | connectionStatus | ENUM | YES | Status of RAN |
globalNbId
Contains information of the eNodeb
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | nbId | String | yes | ID of the RAN. Different ID for eNB or gNB. In case eNB it is according the eNB Type. |
2 | plmnId | String | yes | ID of the PLMN (Public Land Mobile Network) |
Example ... |
9. Get All E2T |
Code Block | ||||
---|---|---|---|---|
| ||||
PUT http://<serverBaseURL>/v#/nodeb/<ran name>/reset
(See remark above about changing the Endpoint) |
Request Data Details
Listed below are the key elements included in the request.
...
Location
...
accept
...
Header
...
String
...
Status | ||||
---|---|---|---|---|
|
...
Refer to - Standard API Request Headers
...
content-type
...
Header
...
String
...
See above - Standard API Request Headers
...
cause
...
Body
...
String
...
Note: Due to router problem we change the Endpoint of Reset nodeb to /v1/nodeb/<ranName>/reset.
Code Block | ||||
---|---|---|---|---|
| ||||
PUT http://localhost:3800/v1/nodeb/NYC213123/reset
accept: application/json
{
"cause": “misc:om-intervention”
}
|
Response Data Details
There is no Body in case 204 No Content, and with error details in case failure
Request |
Resource
| Resource for this interface /v#/e2t/ |
list | |
Description | E2 Manager is requested to |
get list of all E2T Instances address and list of RANs associate with each E2T Instance |
HTTP Method |
GET | |
Supported Representation Formats | Request: Request Format ie application/json, none, etc Response: Response Format ie application/json, none, etc |
Successful HTTP Response Code |
204 No Content
...
language | java |
---|---|
theme | Confluence |
...
200 OK |
|
...
|
...
|
Request Data Details
Listed below are the key elements included in the request.
# | Parameter | Location | Data Type | Required? | Description and Value Rules |
---|---|---|---|---|---|
1 | accept | Header | String |
YES | Refer to - Standard API Request Headers |
...
language | java |
---|---|
theme | Confluence |
...
|
...
|
...
|
...
|
...
Response Data Details
In case 200 OK, this is the payload
# | Parameter | Location | Data Type | Required? | Value Rules |
---|---|---|---|---|---|
1 | content-type | Header | String | YES | |
2 | Body | List of Object | YES | Can be empty in case no E2T. See e2tIdentity |
e2tIdentity
Contains information of the E2T instance
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | e2tAddress | String | yes | Address of the E2T Instance |
2 | ranNames | List of string | no | List of the RAN Names associated with this Instance. Can be empty |
Response Data Details
There is no Body in case 204 No Content, and with 202 Accepted with error details in case failure such as Routing Manager (511)
5. Get All NodeB Request
Resource
Resource for this interface
/v#/nodeb/ids
Description
E2 Manager is requested to get list of all RANs in its RNIB DB
HTTP Method
GET
Supported Representation Formats
Request: Request Format ie application/json, none, etc
Response: Response Format ie application/json, none, etc
Successful HTTP Response Code
Code Block | ||||
---|---|---|---|---|
| ||||
GET http://localhost:3800/<serverBaseURL>v1/v#/nodeb/ids |
Request Data Details
Listed below are the key elements included in the request.
...
Location
...
accept
...
Header
...
String
...
Status | ||||
---|---|---|---|---|
|
...
Refer to - Standard API Request Headers
Code Block | ||||
---|---|---|---|---|
| ||||
GET http://localhost:3800/v1/nodeb/ids
accept: application/json |
Response Data Details
In case 200 OK, this is the payload
...
Location
...
content-type
...
Header
...
String
...
Status | ||||
---|---|---|---|---|
|
...
rans
...
Body
...
List of Object
...
Status | ||||
---|---|---|---|---|
|
...
Can be empty in case no RANs. See nodebIdentity
e2t/list
accept: application/json
[
{
"e2tAddress": "e2t.att.com:38000",
"ranNames": ["test1","test2"]
},
{
"e2tAddress": "e2t.att.com:38001",
"ranNames": ["test1","test2","test3"]
}
]
|
10. E2M Set Parameter |
Resource
| Resource for this interface /v#/nodeb/parameters |
Description | E2 Manager is requested to set some Parameter |
HTTP Method | PUT |
Supported Representation Formats | Request: Request Format ie application/json, none, etc Response: Response Format ie application/json, none, etc |
Successful HTTP Response Code | 200 OK |
|
Request Data Details
Listed below are the key elements included in the request.
# | Parameter | Location |
---|
nodebIdentity
Contains information of the eNodeb
...
Data Type
...
inventoryName
...
String
...
Status | ||||
---|---|---|---|---|
|
...
Name of the RAN
...
globalNbId
...
Object
...
Status | ||||
---|---|---|---|---|
|
...
ID of the RAN - Refer globalNbId object
globalNbId
Contains information of the eNodeb
Data Type | Required? | Description and Value Rules | |
---|---|---|---|
1 | accept |
Header | String |
yes
ID of the RAN. Different ID for eNB or gNB. In case eNB it is according the eNB Type.
plmnId
Object
yes
ID of the PLMN (Public Land Mobile Network)
6. Get All E2T Request
Resource
Resource for this interface
/v#/e2t/list
Description
E2 Manager is requested to get list of all E2T Instances address and list of RANs associate with each E2T Instance
HTTP Method
GET
Supported Representation Formats
Request: Request Format ie application/json, none, etc
Response: Response Format ie application/json, none, etc
Successful HTTP Response Code
200 OK
GET http:
//<serverBaseURL>/v#/e2t/list
Request Data Details
Listed below are the key elements included in the request.
...
#
...
Parameter
...
Location
...
Data Type
...
Required?
...
Description and Value Rules
...
accept
...
Header
...
String
...
YES
...
Refer to - Standard API Request Headers
...
GET http:
//localhost:3800/v1/e2t/list
accept: application/json
Response Data Details
In case 200 OK, this is the payload
...
#
...
Parameter
...
Location
...
Data Type
...
Required?
...
Value Rules
...
content-type
...
Header
...
String
...
YES
...
Body
...
List of Object
...
YES
...
Can be empty in case no E2T. See e2tIdentity
e2tIdentity
Contains information of the E2T instance
...
#
...
Parameter
...
Data Type
...
Required?
...
Value Rules
...
e2tAddress
...
String
...
yes
...
Address of the E2T Instance
...
ranNames
...
List of string
...
no
...
List of the RAN Names associated with this Instance. Can be empty
...
language | java |
---|---|
theme | Confluence |
...
YES | Refer to - Standard API Request Headers | ||||
2 | content-type | Header | String | See above - Standard API Request Headers | |
3 | Parameters | Object | Object | YES | At least one field in the Parameter Object |
parameter
Contains information of the eNodeb. At least one parameter must exist in this Object
Parameter | Data Type | Description |
---|---|---|
enableRic | Boolean | True meaning - Future Setup from RAN will be supported False meaning - Future Setup from RAN will be rejected |
{ "enableRic": true, } |
Response Data Details
200 OK with the list of All parameters or error
|
|
|
SDL Notification
When a RAN (eNB or gNB) is added, updated or deleted in RNIB, or when a state of RAN is changed, the following SDL Notification generated.
E2M supports 2 types of SDL Notification, the client can subscribe to each of them:
- RAN Manipulation - The Notification specifies the RAN Name + the action (Added, Updated, Deleted)
- RAN Connection Status Changed - The Notification specifies the RAN Name + its Status
In the following scenarios E2M generates SDL Notification:
Issue | RAN Connection Status Changed | RAN Manipulation | Comments |
---|---|---|---|
Setup Request from RAN | + (Connected) | Only in case the NodeB was previously Disconnected or it is a new RAN Note that the Function might be changed. In case new RAN - In most of the cases the status changed to Connected, n the rare case where the Routing Manager is down - E2M generate SDL RAN Connection Status Changed to Disconnected. | |
+ (Updated) | In case the NodeB was already Connected and there was some changes | ||
Insert eNB API | + (Added) | ||
Update eNB API, Update gNB API | + (Updated) | ||
RIC Service Update | + (Updated) | Only in case there was some changed (Function Added / Modified / Deleted) | |
Lost Connection, Red Button (Shut Down) | + (Disconnected) | Only in case the NodeB was previously Connected | |
E2T Restart, Keep Alive decides this E2T Instance is dead | + (Disconnected) | Only in case this NodeB was under the control of this E2T Instance and it was previously Connected | |
Delete eNB API | + (Deleted) |
Here are the values:
Channel | Events |
RAN_CONNECTION_STATUS_CHANGE | <RAN_NAME>_CONNECTED |
RAN_MANIPULATION | <RAN_NAME>_ADDED |