Commit d0c4e637 authored by Jesus de Gregorio's avatar Jesus de Gregorio
Browse files

SA#89 + Temporary fix to pass the validator

parent 59e8d898
Loading
Loading
Loading
Loading
+180 −4
Original line number Diff line number Diff line
openapi: 3.0.0
info:
  title: Nchf_ConvergedCharging
  version: 3.0.0.alpha-4
  version: 3.0.0
  description: |
    ConvergedCharging Service    © 2019, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
    All rights reserved.
externalDocs:
  description: >
    3GPP TS 32.291 V16.4.0: Telecommunication management; Charging management; 
    3GPP TS 32.291 V16.5.0: Telecommunication management; Charging management; 
    5G system, charging service; Stage 3.
  url: 'http://www.3gpp.org/ftp/Specs/archive/32_series/32.291/'
servers:
@@ -16,6 +16,10 @@ servers:
      apiRoot:
        default: https://example.com
        description: apiRoot as defined in subclause 4.4 of 3GPP TS 29.501.
security:
  - {}
  - oAuth2ClientCredentials:
    - nchf-convergedcharging
paths:
  /chargingdata:
    post:
@@ -179,12 +183,24 @@ paths:
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
components:
  securitySchemes:
    oAuth2ClientCredentials:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: '{nrfApiRoot}/oauth2/token'
          scopes:
            nchf-convergedcharging: Access to the Nchf_ConvergedCharging API
  schemas:
    ChargingDataRequest:
      type: object
      properties:
        subscriberIdentifier:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
        tenantIdentifier:
          type: string
        mnSConsumerIdentifier:
          type: string
        nfConsumerIdentification:
          $ref: '#/components/schemas/NFIdentification'
        invocationTimeStamp:
@@ -227,6 +243,10 @@ components:
          $ref: '#/components/schemas/N2ConnectionChargingInformation'
        locationReportingChargingInformation:
          $ref: '#/components/schemas/LocationReportingChargingInformation'
        nSPAChargingInformation:
          $ref: '#/components/schemas/NSPAChargingInformation'
        nSMChargingInformation:
          $ref: '#/components/schemas/NSMChargingInformation'
      required:
        - nfConsumerIdentification 
        - invocationTimeStamp
@@ -404,11 +424,18 @@ components:
        serviceSpecificUnits:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint64'
        eventTimeStamps:
          
          type: array

          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
          minItems: 0
        localSequenceNumber:
          type: integer
        pDUContainerInformation:
          $ref: '#/components/schemas/PDUContainerInformation'
        nSPAContainerInformation:
          $ref: '#/components/schemas/NSPAContainerInformation'
      required:
        - localSequenceNumber
    GrantedUnit:
@@ -469,6 +496,8 @@ components:
          $ref: '#/components/schemas/UserInformation'
        userLocationinfo:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/UserLocation'
        mAPDUNon3GPPUserLocationInfo:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/UserLocation'
        presenceReportingAreaInformation:
          type: object
          additionalProperties:
@@ -510,12 +539,15 @@ components:
          $ref: '#/components/schemas/ServingNetworkFunctionID'
        ratType:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/RatType'
        mAPDUNon3GPPRATType:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/RatType'
        dnnId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
        dnnSelectionMode:
          $ref: '#/components/schemas/dnnSelectionMode'
        chargingCharacteristics:
          type: string
          pattern: '^[0-9a-fA-F]{1,4}$'
        chargingCharacteristicsSelectionMode:
          $ref: '#/components/schemas/ChargingCharacteristicsSelectionMode'
        startTime:
@@ -540,6 +572,8 @@ components:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Ambr'
        servingCNPlmnId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId'
        mAPDUSessionInformation:
          $ref: '#/components/schemas/MAPDUSessionInformation'
      required:
        - pduSessionID
        - dnnId
@@ -556,6 +590,8 @@ components:
          $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/QosCharacteristics'
        afChargingIdentifier:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/ChargingId'
        afChargingIdString:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationChargingId'
        userLocationInformation:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/UserLocation'
        uetimeZone:
@@ -580,6 +616,38 @@ components:
          type: string
        chargingRuleBaseName:
          type: string
        mAPDUSteeringFunctionality:
          $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteeringFunctionality'
        mAPDUSteeringMode:
          $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteeringMode'
    NSPAContainerInformation:
      type: object
      properties:
        latency:
          type: integer
        throughput:
          $ref: '#/components/schemas/Throughput'
        maximumPacketLossRate:
          type: string
        serviceExperienceStatisticsData:
          # Interim fix, to be corrected at next meeting
          # $ref: 'TS29520_CommonData.yaml#/components/schemas/ServiceExperienceInfo'
          $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/ServiceExperienceInfo'
        theNumberOfPDUSessions:
          type: integer
        theNumberOfRegisteredSubscribers:
          type: integer
        loadLevel:
          # Interim fix, to be corrected at next meeting
          # $ref: 'TS29520_CommonData.yaml#/components/schemas/NsiLoadLevelInfo'
          $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/NsiLoadLevelInfo'
    NSPAChargingInformation:
      type: object
      properties:
        singleNSSAI:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
      required:
        - sNSSAI
    NetworkSlicingInfo:
      type: object
      properties:
@@ -603,7 +671,6 @@ components:
    ServingNetworkFunctionID:
      type: object
      properties:
          
        servingNetworkFunctionInformation:
          $ref: '#/components/schemas/NFIdentification'
        aMFId:
@@ -990,6 +1057,93 @@ components:
      type: integer
    LocationReportingMessageType:
      type: integer
    NSMChargingInformation:
      type: object
      properties:
        managementOperation:
          $ref: '#/components/schemas/ManagementOperation'
        idNetworkSliceInstance:
          type: string
        listOfserviceProfileChargingInformation:
          type: array
          items:
            $ref: '#/components/schemas/ServiceProfileChargingInformation'
          minItems: 0
        managementOperationStatus:
          $ref: '#/components/schemas/ManagementOperationStatus'
# To be introduced once the reference to 'generic.yaml is resolved    
#        managementOperationalState:
#          $ref: 'genericNrm.yaml#/components/schemas/OperationalState'
#        managementAdministrativeState:
#          $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState'
      required:
        - managementOperation
    ServiceProfileChargingInformation:
      type: object
      properties:
        serviceProfileIdentifier:
            type: string
        sNSSAIList:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
          minItems: 0
# To be introduced once the reference to 'nrNrm.yaml is resolved    
#         sST:
#           $ref: 'nrNrm.yaml#/components/schemas/Sst'
        latency:
          type: integer
        availability:
          type: number
# To be introduced once the reference to sliceNrm.yaml is resolved    
#         resourceSharingLevel:
#           $ref: 'sliceNrm.yaml#/components/schemas/SharingLevel'
        jitter:
          type: integer
        reliability:
          type: string
        maxNumberofUEs:
          type: integer
        coverageArea:
          type: string
# To be introduced once the reference to sliceNrm.yaml is resolved    
#        uEMobilityLevel:
#          $ref: 'sliceNrm.yaml#/components/schemas/MobilityLevel'
#        delayToleranceIndicator:
#          $ref: 'sliceNrm.yaml#/components/schemas/Support'
        dLThptPerSlice:
          $ref: '#/components/schemas/Throughput'
        dLThptPerUE:
          $ref: '#/components/schemas/Throughput'
        uLThptPerSlice:
          $ref: '#/components/schemas/Throughput'
        uLThptPerUE:
          $ref: '#/components/schemas/Throughput'
        maxNumberofPDUsessions:
          type: integer
        kPIMonitoringList:
          type: string
        supportedAccessTechnology:
          type: integer
# To be introduced once the reference to sliceNrm.yaml is resolved    
#        v2XCommunicationModeIndicator:
#          $ref: 'sliceNrm.yaml#/components/schemas/Support'
        addServiceProfileInfo:
          type: string
    Throughput:
      type: object
      properties:
        guaranteedThpt:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Float'
        maximumThpt:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Float'
    MAPDUSessionInformation:
      type: object
      properties:
        mAPDUSessionIndicator:
          $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/MaPduIndication'
        aTSSSCapability:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/AtsssCapability'
    NotificationType:
      anyOf:
        - type: string
@@ -1006,6 +1160,8 @@ components:
            - SMSF
            - SGW
            - I_SMF
            - ePDG
            - CEF
        - type: string
    ChargingCharacteristicsSelectionMode:
      anyOf:
@@ -1056,6 +1212,9 @@ components:
            - HANDOVER_START
            - HANDOVER_COMPLETE
            - GFBR_GUARANTEED_STATUS_CHANGE
            - ADDITION_OF_ACCESS
            - REMOVAL_OF_ACCESS
            - START_OF_SDF_ADDITIONAL_ACCESS
        - type: string
    FinalUnitAction:
      anyOf:
@@ -1086,6 +1245,7 @@ components:
          enum:
            - ONLINE_CHARGING
            - OFFLINE_CHARGING
            - QUOTA_MANAGEMENT_SUSPENDED
        - type: string
    FailureHandling:
      anyOf:
@@ -1120,6 +1280,7 @@ components:
            - END_USER_SERVICE_REJECTED
            - USER_UNKNOWN
            - RATING_FAILED
            - QUOTA_MANAGEMENT
        - type: string
    PartialRecordMethod:
      anyOf:
@@ -1267,3 +1428,18 @@ components:
            - SMS_SUPPORTED
            - SMS_NOT_SUPPORTED
        - type: string
    ManagementOperation:
      anyOf:
        - type: string
          enum:
            - CreateMOI
            - ModifyMOIAttributes
            - DeleteMOI
        - type: string
    ManagementOperationStatus:
      anyOf:
        - type: string
          enum:
            - OPERATION_SUCCEEDED
            - OPERATION_FAILED
        - type: string