# ========================LICENSE_START================================= # O-RAN-SC # # Copyright (C) 2019 AT&T Intellectual Property and Nokia # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ========================LICENSE_END=================================== # This source code is part of the near-RT RIC (RAN Intelligent Controller) # platform project (RICP). openapi: 3.0.0 info: title: E2 Manager Service description: E2 Manager Service APIs version: 4.0.0 servers: - url: 'http://{apiRoot}/v1' variables: apiRoot: default: 'localhost:3800' paths: '/nodeb/{ranName}': put: summary: Update GNB tags: - nodeb operationId: UpdateGnb parameters: - name: ranName in: path required: true description: Name of GNB RAN to update schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateGnbRequest' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UpdateGnbResponse' '400': description: Invalid input content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponse' '503': description: Routing Manager Unavailable content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponse' get: tags: - nodeb summary: Get RAN by name operationId: getNb parameters: - name: ranName in: path required: true description: Name of RAN to return schema: type: string responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/GetNodebResponse' '400': description: The specified RAN name is invalid content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: A RAN with the specified name was not found content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal Error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponse' /nodeb/shutdown: put: tags: - nodeb summary: Close all connections to the RANs responses: '200': description: 'Operation succeeded internally, outbound calls failed' content: application/json: schema: $ref: '#/components/schemas/RedButtonPartialSuccessResponseModel' '204': description: Successful operation '500': description: Internal Error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponse' /nodeb/ids: get: tags: - nodeb summary: Get RANs identities list operationId: getNodebIdList responses: '200': description: Successful operation content: application/json: schema: type: array items: $ref: '#/components/schemas/NodebIdentity' '500': description: Internal Error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponse' /health: get: tags: - Health Check summary: E2 Manager Service Health Check responses: '200': description: OK /e2t/list: get: tags: - e2t summary: Gets a list of all E2T Instances address and their associated RANs responses: '200': description: Successful operation content: application/json: schema: type: array items: $ref: '#/components/schemas/E2tIdentity' '500': description: Internal Error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponse' components: schemas: UpdateGnbRequest: type: object properties: gnb: properties: servedNrCells: items: properties: nrNeighbourInfos: items: properties: choiceNrMode: properties: fdd: properties: dlarFcnFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object ularFcnFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object tdd: properties: arFcnNrFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object configuredStac: type: string nrCgi: type: string nrMode: oneOf: - type: string - type: integer nrPci: type: integer stac5g: type: string additionalProperties: false type: object type: array servedNrCellInformation: properties: cellId: type: string choiceNrMode: properties: fdd: properties: dlFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object dlTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object ulFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object ulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object tdd: properties: nrFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object transmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object configuredStac: type: string nrMode: oneOf: - type: string - type: integer nrPci: type: integer servedPlmns: items: type: string type: array stac5g: type: string additionalProperties: false type: object additionalProperties: false type: object type: array ranFunctions: items: properties: ranFunctionId: type: integer ranFunctionDefinition: type: string ranFunctionRevision: type: integer additionalProperties: false type: object type: array additionalProperties: false type: object additionalProperties: false UpdateGnbResponse: properties: connectionStatus: oneOf: - type: string - type: integer failureType: oneOf: - type: string - type: integer globalNbId: properties: nbId: type: string plmnId: type: string additionalProperties: false type: object gnb: properties: servedNrCells: items: properties: nrNeighbourInfos: items: properties: choiceNrMode: properties: fdd: properties: dlarFcnFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object ularFcnFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object tdd: properties: arFcnNrFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object configuredStac: type: string nrCgi: type: string nrMode: oneOf: - type: string - type: integer nrPci: type: integer stac5g: type: string additionalProperties: false type: object type: array servedNrCellInformation: properties: cellId: type: string choiceNrMode: properties: fdd: properties: dlFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object dlTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object ulFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object ulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object tdd: properties: nrFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object transmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object configuredStac: type: string nrMode: oneOf: - type: string - type: integer nrPci: type: integer servedPlmns: items: type: string type: array stac5g: type: string additionalProperties: false type: object additionalProperties: false type: object type: array ranFunctions: items: properties: ranFunctionId: type: integer ranFunctionDefinition: type: string ranFunctionRevision: type: integer additionalProperties: false type: object type: array additionalProperties: false type: object ip: type: string nodeType: oneOf: - type: string - type: integer port: type: integer ranName: type: string setupFailure: properties: criticalityDiagnostics: properties: informationElementCriticalityDiagnostics: items: properties: ieCriticality: oneOf: - type: string - type: integer ieId: type: integer typeOfError: oneOf: - type: string - type: integer additionalProperties: false type: object type: array procedureCode: type: integer procedureCriticality: oneOf: - type: string - type: integer triggeringMessage: oneOf: - type: string - type: integer additionalProperties: false type: object miscellaneousCause: oneOf: - type: string - type: integer networkLayerCause: oneOf: - type: string - type: integer protocolCause: oneOf: - type: string - type: integer timeToWait: oneOf: - type: string - type: integer transportLayerCause: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object NodebIdentity: properties: globalNbId: properties: nbId: type: string plmnId: type: string type: object inventoryName: type: string type: object GetNodebResponse: properties: connectionStatus: oneOf: - type: string - type: integer enb: properties: enbType: oneOf: - type: string - type: integer guGroupIds: items: type: string type: array servedCells: items: properties: bandwidthReducedSi: oneOf: - type: string - type: integer broadcastPlmns: items: type: string type: array cellId: type: string choiceEutraMode: properties: fdd: properties: dlTransmissionBandwidth: oneOf: - type: string - type: integer dlearFcn: type: integer ulTransmissionBandwidth: oneOf: - type: string - type: integer ulearFcn: type: integer additionalProperties: false type: object tdd: properties: additionalSpecialSubframeExtensionInfo: properties: additionalSpecialSubframePatternsExtension: oneOf: - type: string - type: integer cyclicPrefixDl: oneOf: - type: string - type: integer cyclicPrefixUl: oneOf: - type: string - type: integer additionalProperties: false type: object additionalSpecialSubframeInfo: properties: additionalSpecialSubframePatterns: oneOf: - type: string - type: integer cyclicPrefixDl: oneOf: - type: string - type: integer cyclicPrefixUl: oneOf: - type: string - type: integer additionalProperties: false type: object earFcn: type: integer specialSubframeInfo: properties: cyclicPrefixDl: oneOf: - type: string - type: integer cyclicPrefixUl: oneOf: - type: string - type: integer specialSubframePatterns: oneOf: - type: string - type: integer additionalProperties: false type: object subframeAssignment: oneOf: - type: string - type: integer transmissionBandwidth: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object csgId: type: string eutraMode: oneOf: - type: string - type: integer freqBandIndicatorPriority: oneOf: - type: string - type: integer mbmsServiceAreaIdentities: items: type: string type: array mbsfnSubframeInfos: items: properties: radioframeAllocationOffset: type: integer radioframeAllocationPeriod: oneOf: - type: string - type: integer subframeAllocation: type: string subframeAllocationType: oneOf: - type: string - type: integer additionalProperties: false type: object type: array multibandInfos: items: type: integer type: array neighbourInfos: items: properties: earFcn: type: integer ecgi: type: string pci: type: integer tac: type: string additionalProperties: false type: object type: array numberOfAntennaPorts: oneOf: - type: string - type: integer pci: type: integer prachConfiguration: properties: highSpeedFlag: type: boolean prachConfigurationIndex: type: integer prachFrequencyOffset: type: integer rootSequenceIndex: type: integer zeroCorrelationZoneConfiguration: type: integer additionalProperties: false type: object tac: type: string additionalProperties: false type: object type: array additionalProperties: false type: object failureType: oneOf: - type: string - type: integer globalNbId: properties: nbId: type: string plmnId: type: string additionalProperties: false type: object gnb: properties: servedNrCells: items: properties: nrNeighbourInfos: items: properties: choiceNrMode: properties: fdd: properties: dlarFcnFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object ularFcnFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object tdd: properties: arFcnNrFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object configuredStac: type: string nrCgi: type: string nrMode: oneOf: - type: string - type: integer nrPci: type: integer stac5g: type: string additionalProperties: false type: object type: array servedNrCellInformation: properties: cellId: type: string choiceNrMode: properties: fdd: properties: dlFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object dlTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object ulFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object ulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object tdd: properties: nrFreqInfo: properties: frequencyBands: items: properties: nrFrequencyBand: type: integer supportedSulBands: items: type: integer type: array additionalProperties: false type: object type: array nrArFcn: oneOf: - type: integer sulInformation: properties: sulArFcn: oneOf: - type: integer sulTransmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object transmissionBandwidth: properties: ncnrb: oneOf: - type: string - type: integer nrscs: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object additionalProperties: false type: object configuredStac: type: string nrMode: oneOf: - type: string - type: integer nrPci: type: integer servedPlmns: items: type: string type: array stac5g: type: string additionalProperties: false type: object additionalProperties: false type: object type: array ranFunctions: items: properties: ranFunctionId: type: integer ranFunctionDefinition: type: string ranFunctionRevision: type: integer additionalProperties: false type: object type: array additionalProperties: false type: object ip: type: string nodeType: oneOf: - type: string - type: integer port: type: integer ranName: type: string setupFailure: properties: criticalityDiagnostics: properties: informationElementCriticalityDiagnostics: items: properties: ieCriticality: oneOf: - type: string - type: integer ieId: type: integer typeOfError: oneOf: - type: string - type: integer additionalProperties: false type: object type: array procedureCode: type: integer procedureCriticality: oneOf: - type: string - type: integer triggeringMessage: oneOf: - type: string - type: integer additionalProperties: false type: object miscellaneousCause: oneOf: - type: string - type: integer networkLayerCause: oneOf: - type: string - type: integer protocolCause: oneOf: - type: string - type: integer timeToWait: oneOf: - type: string - type: integer transportLayerCause: oneOf: - type: string - type: integer additionalProperties: false type: object additionalProperties: false type: object ErrorResponse: type: object required: - errorCode - errorMessage properties: errorCode: type: string description: >- 401 - corrupted json, 402 - validation error, 403 - RAN in wrong state, 404 - resource not found, 500 - RNIB error, 501 - internal problem, 502 - RMR error, 503 - Routing Manager Unavailable errorMessage: type: string description: Human readable text RedButtonPartialSuccessResponseModel: type: object required: - message properties: message: type: string description: Partial success reason E2tIdentity: type: object required: - e2tAddress - ranNames properties: e2tAddress: type: string ranNames: items: type: string type: array E2tErrorResponse: type: object required: - errorCode - errorMessage properties: errorCode: type: string description: '500 - RNIB error, 501 - internal problem' errorMessage: type: string description: Human readable text