|
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. |
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. |
# | 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 (Changed) | /v#/nodeb/<ranName> | GET |
3 | Update GNB Request (New) | /v#/nodeb/<ranName>/update | PUT |
4 | Shut Down Request | /v#/nodeb/shutdown | PUT |
5 | Get All nodeb | /v#/nodeb/ids | GET |
6 | Get All E2T Request | /v#/e2t/list | GET |
Note: Due to router problem we change the Endpoint of Reset nodeb to /v1/nodeb-reset/<ranName>.
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:
{ "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 | |
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 | |
406 | No RAN in Connected State | e.g.: RAN Health Check and no one in Connected | |
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 | |
---|---|---|---|---|
Get nodeb data | 404 | 500, 501 | ||
Update GNB | 401, 402 | 404 | 500, 501 | |
Shut Down | 511 | 405 | 500, 501, 502 | |
Get All nodeb | 500, 501 | |||
Get All E2T | 500, 501 |
In addition, there are 2 Basic HTTP error happens before the handlers are calling:
# | 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 |
|
Resource
| Resource for this interface /v#/nodeb |
Description | E2 Manager exchange with this eNodeb 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 |
POST http://<serverBaseURL>/v#/nodeb/x2-setup |
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 | String | 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 |
POST http://localhost:3800/v1/nodeb/x2-setup accept: application/json content-Type: application/json { "ranIp":"10.0.2.15", "ranPort":5577, "ranName": "test1" } |
The body is empty in case 204 No Content, and with specific HTTP code and error details in case failure
|
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 |
POST http://<serverBaseURL>/v#/nodeb/endc-setup |
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 | String | 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 |
POST http://localhost:3800/v1/nodeb/endc-setup accept: application/json content-Type: application/json { "ranIp":"10.0.2.15", "ranPort":5577, "ranName": "test1" } |
The body is empty in case 204 No Content, and with specific HTTP code and error details in case failure
|
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 |
PUT http://<serverBaseURL>/v#/nodeb/<ran name>/reset (See remark above about changing the Endpoint) |
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 | String | See above - Standard API Request Headers | |
3 | cause | Body | String | Reason of the Reset (Cause enum). If not provided - E2M will send misc:om-intervention |
Note: Due to router problem we change the Endpoint of Reset nodeb to /v1/nodeb/<ranName>/reset.
PUT http://localhost:3800/v1/nodeb/NYC213123/reset accept: application/json { "cause": “misc:om-intervention” } |
There is no Body in case 204 No Content, and with 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 |
GET http://<serverBaseURL>/v#/health |
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 |
GET http://localhost:3800/v1/health accept: application/json |
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 |
GET http://<serverBaseURL>/v#/nodeb/<ranName> |
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 | String | 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 |
GET http://localhost:3800/v1/nodeb/NYC213123 accept: application/json Content-Type: application/json |
In case 200 OK, this is the payload
# | Parameter | Location | Data Type | Required? | Value Rules |
---|---|---|---|---|---|
1 | content-type | Header | String | ||
2 | connectionStatus | Body | ENUM | ||
3 | ip | Body | String | ||
4 | port | Body | Integer | ||
5 | nodeType | Body | ENUM | ||
6 | ranName | Body | String | ||
7 | enb (or gnb) | Body | Object | According the nodetype – ENB or GNB Mandatory when the status is CONNECTED | |
8 | failureType | Body | ENUM | 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 |
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 |
Contains information of the cell
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | bandwidthReducedSi | ENUM | Refer 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 | Refer to eutraMode ENUM | |
7 | freqBandIndicatorPriority | ENUM | Refer to freqBandIndicatorPriority ENUM | |
8 | mbmsServiceAreaIdentities | Array of String | ||
9 | mbsfnSubframeInfos | Array of Object | Refer to mbsfn Subframe Object | |
10 | multibandInfos | Array of Integer | ||
11 | neighbourInfos | Array of Object | Refer to neighbour Information Object | |
12 | numberOfAntennaPorts | ENUM | Refer to numberOfAntennaPorts ENUM | |
13 | pci | Integer | ||
14 | prachConfiguration | Object | Refer to prach Configuration Object | |
15 | Tac | String | Refer to tac Object |
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 |
Contains information of the FDD Cell
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | dlTransmissionBandwidth | ENUM | Refer to TransmissionBandwidth ENUM | |
2 | dlearFcn | Integer | ||
3 | ulTransmissionBandwidth | ENUM | Refer to TransmissionBandwidth ENUM | |
4 | ulearFcn | Integer |
Contains information of the TDD 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 | ||
4 | specialSubframeInfo | Object | Refer to Special Subframe Info | |
5 | subframeAssignment | ENUM | ||
6 | transmissionBandwidth | ENUM |
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 | Refer to CyclicPrefix ENUM | |
3 | cyclicPrefixUl | ENUM | Refer to CyclicPrefix ENUM |
Contains information of the Sub Frame
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | additionalSpecialSubframePatterns | ENUM | Refer to Additional Special Subframe ENUM | |
2 | cyclicPrefixDl | ENUM | Refer to CyclicPrefix ENUM | |
3 | cyclicPrefixUl | ENUM | Refer to CyclicPrefix ENUM |
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 |
Contains information of the Sub Frame
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | radioframeAllocationOffset | Integer | ||
2 | radioframeAllocationPeriod | ENUM | ||
3 | subframeAllocation | String | ||
4 | subframeAllocationType | ENUM |
Contains information of the Neighbor
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | ecgi | String | ||
2 | pci | Integer | ||
3 | earFcn | Integer | ||
4 | tac | String |
Contains information of the Prach
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | highSpeedFlag | Boolean | ||
2 | prachConfigurationIndex | Integer | ||
3 | prachFrequencyOffset | Integer | ||
4 | rootSequenceIndex | Integer | ||
5 | zeroCorrelationZoneConfiguration | Integer |
Contains information of the gnodeb
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | servedNrCells | Array of Object | Refer to served NR Cells object | |
2 | ranFunctions | Array of Object | Refer to served RAN function object |
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 |
Contains information of the Neighbor 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 | Refer to NR Mode ENUM | |
5 | nrPci | Integer | ||
6 | stac5g | String |
Contains information of the cell
# | 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 |
Contains information of the TBD – Note – It is either FDD or TDD, one of them must exist
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | fdd | Object | Refer to NR FDD Info | |
2 | tdd | Object | Refer to NR TDD Info |
Contains information of the NR FDD Cell
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | dlFreqInfo | 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 |
Contains information of the Cell
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | frequencyBands | Object | Refer to frequency Bands Object | |
2 | nrArFcn | integer | ||
3 | sulInformation | Object | Refer to sul Information Object |
Contains information of the Frequency Bands
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | nrFrequencyBand | integer | ||
2 | supportedSulBands | Array of integer |
Contains information of the TBD
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | sulArFcn | integer | ||
2 | sulTransmissionBandwidth | object | Refer to sul Transmission Bandwidth object |
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 |
Contains information of the NE Cell TDD
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | nrFreqInfo | Object | Refer to nr Freq Info Object | |
2 | transmissionBandwidth | Object | Refer to transmission Bandwidth Object |
Contains information of the Function this RAN supports - Please refer to O-RAN Working Group 3, E2 Application Protocol (E2AP)
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | ranFunctionId | Integer | ||
2 | ranFunctionDefinition | String | ||
3 | ranFunctionRevision | Integer |
Contains information of the error
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | cause_group | ENUM | One of the following ENUM
| |
2 | TimeToWait | ENUM | Look on TimeToWait ENUM | |
3 | CriticalityDiagnostics | Object |
Contains information of the error
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | informationElementCriticalityDiagnostics | Object | · | |
2 | procedureCode | Integer | ||
3 | procedureCriticality | ENUM | Refer to Criticality ENUM | |
4 | triggeringMessage | ENUM | Refer to TriggeringMessage ENUM |
Contains information of the error
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | ieCriticality | 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 |
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 |
|
# | Parameter | Location | Data Type | Required? | Value Rules |
---|---|---|---|---|---|
accept | Header | String | YES | Refer 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) |
PUT http://localhost:3800/v1/nodeb/test1/update accept: application/json { "servedNrCells": [ { "servedNrCellInformation": { "nrPci": 100, "cellId": "02f829:0007ab0178", "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": 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" } ] } ] } |
In case 200 OK, the payload is identical to Get NodeB <RAN Name>.
4. 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 |
PUT http://<serverBaseURL>/v#/nodeb/shutdown |
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 |
PUT http://localhost:3800/v1/nodeb/shutdown accept: application/json |
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 | 200 OK |
GET http://<serverBaseURL>/v#/nodeb/ids |
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 |
GET http://localhost:3800/v1/nodeb/ids accept: application/json |
In case 200 OK, this is the payload
# | Parameter | Location | Data Type | Required? | Value Rules |
---|---|---|---|---|---|
1 | content-type | Header | String | ||
2 | rans | Body | List of Object | Can be empty in case no RANs. See nodebIdentity |
Contains information of the eNodeb
# | Parameter | Data Type | Required? | Value Rules |
---|---|---|---|---|
1 | inventoryName | String | Name of the RAN | |
2 | globalNbId | Object | ID of the RAN - Refer globalNbId object |
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 | 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 |
|
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 |
|
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 |
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 |
GET http://localhost:3800/v1/e2t/list accept: application/json [ { "e2tAddress": "e2t.att.com:38000", "ranNames": ["test1","test2"] }, { "e2tAddress": "e2t.att.com:38001", "ranNames": ["test1","test2","test3"] } ] |