Commit 5b86bd81 authored by Jesus de Gregorio's avatar Jesus de Gregorio
Browse files

SA #84

parent 3e60af37
Loading
Loading
Loading
Loading
Loading
+79 −48
Original line number Diff line number Diff line
openapi: 3.0.0
info:
  description: ConvergedCharging Service
  version: '1.0.0'
  version: 2.0.1
  title: Nchf_ConvergedCharging
externalDocs:
  description: >-
    3GPP TS 32.291 Telecommunication management; Charging management; 
  description: >
    3GPP TS 32.291 V15.3.0: Telecommunication management; Charging management; 
    5G system, charging service; Stage 3.
  url: 'http://www.3gpp.org/ftp/Specs/archive/32_series/32.291/'
servers:
  - url: '{apiRoot}/nchf-convergedcharging/v1'
  - url: '{apiRoot}/nchf-convergedcharging/v2'
    variables:
      apiRoot:
        default: https://example.com
@@ -48,8 +48,18 @@ paths:
            application/json:
              schema:
                $ref: 'TS29571_CommonData.yaml#/components/schemas/ProblemDetails'
        '401':
          $ref: 'TS29571_CommonData.yaml#/components/responses/401'
        '410':
          $ref: 'TS29571_CommonData.yaml#/components/responses/410'
        '411':
          $ref: 'TS29571_CommonData.yaml#/components/responses/411'
        '413':
          $ref: 'TS29571_CommonData.yaml#/components/responses/413'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
      callbacks:
@@ -114,8 +124,18 @@ paths:
            application/json:
              schema:
                $ref: 'TS29571_CommonData.yaml#/components/schemas/ProblemDetails'
        '401':
          $ref: 'TS29571_CommonData.yaml#/components/responses/401'
        '410':
          $ref: 'TS29571_CommonData.yaml#/components/responses/410'
        '411':
          $ref: 'TS29571_CommonData.yaml#/components/responses/411'
        '413':
          $ref: 'TS29571_CommonData.yaml#/components/responses/413'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
  '/chargingdata/{ChargingDataRef}/release':
@@ -142,8 +162,18 @@ paths:
            application/json:
              schema:
                $ref: 'TS29571_CommonData.yaml#/components/schemas/ProblemDetails'
        '401':
          $ref: 'TS29571_CommonData.yaml#/components/responses/401'
        '410':
          $ref: 'TS29571_CommonData.yaml#/components/responses/410'
        '411':
          $ref: 'TS29571_CommonData.yaml#/components/responses/411'
        '413':
          $ref: 'TS29571_CommonData.yaml#/components/responses/413'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
components:
@@ -154,7 +184,7 @@ components:
        subscriberIdentifier:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
        nfConsumerIdentification:
          $ref: '#/components/schemas/NFConsumerIdentification'
          $ref: '#/components/schemas/NFIdentification'
        invocationTimeStamp:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
        invocationSequenceNumber:
@@ -180,7 +210,7 @@ components:
        sMSChargingInformation:
          $ref: '#/components/schemas/SMSChargingInformation'
      required:
        - nfConsumerIdentification
        - nfIdentification
        - invocationTimeStamp
        - invocationSequenceNumber
    ChargingDataResponse:
@@ -223,7 +253,7 @@ components:
          minItems: 0
      required:
        - notificationType
    NFConsumerIdentification:
    NFIdentification:
      type: object
      properties:
        nFName:
@@ -236,16 +266,15 @@ components:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId'
        nodeFunctionality:
          $ref: '#/components/schemas/NodeFunctionality'
        nFFqdn:
          type: string
      required:
        - nFName
        - nFIPv4Address
        - nFIPv6Address
        - nodeFunctionality
    MultipleUnitUsage:
      type: object
      properties:
        ratingGroup:
          $ref: '#/components/schemas/RatingGroup'
          $ref: 'TS29571_CommonData.yaml#/components/schemas/RatingGroup'
        requestedUnit:
          $ref: '#/components/schemas/RequestedUnit'
        UsedUnitContainer:
@@ -275,6 +304,8 @@ components:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
        volumeLimit:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32'
        volumeLimit64:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint64'
        maxNumberOfccc:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32'
      required:
@@ -286,7 +317,7 @@ components:
        resultCode:
          $ref: '#/components/schemas/ResultCode'
        ratingGroup:
          $ref: '#/components/schemas/RatingGroup'
          $ref: 'TS29571_CommonData.yaml#/components/schemas/RatingGroup'
        grantedUnit:
          $ref: '#/components/schemas/GrantedUnit'
        triggers:
@@ -295,7 +326,7 @@ components:
            $ref: '#/components/schemas/Trigger'
          minItems: 0
        validityTime:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
        quotaHoldingTime:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
        finalUnitIndication:
@@ -303,7 +334,7 @@ components:
        timeQuotaThreshold:
          type: integer
        volumeQuotaThreshold:
          type: integer
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint64'
        unitQuotaThreshold:
          type: integer
        uPFID:
@@ -327,7 +358,7 @@ components:
      type: object
      properties:
        serviceId:
          $ref: '#/components/schemas/ServiceId'
          $ref: 'TS29571_CommonData.yaml#/components/schemas/ServiceId'
        quotaManagementIndicator:
          $ref: '#/components/schemas/QuotaManagementIndicator'
        triggers:
@@ -397,17 +428,16 @@ components:
      type: object
      properties:
        serviceId:
          $ref: '#/components/schemas/ServiceId'
          $ref: 'TS29571_CommonData.yaml#/components/schemas/ServiceId'
        ratingGroup:
          $ref: '#/components/schemas/RatingGroup'
          $ref: 'TS29571_CommonData.yaml#/components/schemas/RatingGroup'
        quotaManagementIndicator:
          $ref: '#/components/schemas/QuotaManagementIndicator'
    PDUSessionChargingInformation:
      type: object
      properties:
        chargingId:
          
          $ref: '#/components/schemas/ChargingId'
          $ref: 'TS29571_CommonData.yaml#/components/schemas/ChargingId'
        userInformation:
          $ref: '#/components/schemas/UserInformation'
        userLocationinfo:
@@ -428,7 +458,6 @@ components:
        rANSecondaryRATUsageReport:
          $ref: '#/components/schemas/RANSecondaryRATUsageReport'
      required:
        - userInformation
        - pduSessionInformation
    UserInformation:
      type: object
@@ -441,8 +470,6 @@ components:
          type: boolean
        roamerInOut:
          $ref: '#/components/schemas/RoamerInOut'
      required:
        - servedGPSI
    PDUSessionInformation:
      type: object
      properties:
@@ -461,7 +488,7 @@ components:
        ratType:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/RatType'
        dnnId:
          type: string
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
        chargingCharacteristics:
          type: string
        chargingCharacteristicsSelectionMode:
@@ -478,8 +505,14 @@ components:
          $ref: '#/components/schemas/PDUAddress'
        diagnostics:
          $ref: '#/components/schemas/Diagnostics'
        qoSInformation:
        authorizedQoSInformation:
          $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AuthorizedDefaultQos'
        subscribedQoSInformation:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SubscribedDefaultQos'
        authorizedSessionAMBR:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Ambr'
        subscribedSessionAMBR:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Ambr'
        servingCNPlmnId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId'
      required:
@@ -493,7 +526,7 @@ components:
        timeofLastUsage:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
        qoSInformation:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SubscribedDefaultQos'
          $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/QosData'
        aFCorrelationInformation:
          type: string
        userLocationInformation:
@@ -505,7 +538,7 @@ components:
        servingNodeID:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Guami'
            $ref: '#/components/schemas/ServingNetworkFunctionID'
          minItems: 0
        presenceReportingAreaInformation:
          type: object
@@ -532,23 +565,24 @@ components:
      properties:
        pduIPv4Address:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv4Addr'
        pduIPv6Address:
        pduIPv6AddresswithPrefix:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Addr'
        pduAddressprefixlength:
          type: integer
        IPv4dynamicAddressFlag:
        iPv4dynamicAddressFlag:
          type: boolean
        IPv6dynamicAddressFlag:
        iPv6dynamicPrefixFlag:
          type: boolean
    ServingNetworkFunctionID:
      type: object
      properties:
        servingNetworkFunctionName:
          type: string
        servingNetworkFunctionInstanceid:
          type: string
        gUAMI:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Guami'
          
        servingNetworkFunctionInformation:
          $ref: '#/components/schemas/NFIdentification'
        aMFId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/AmfId'
      required:
        - servingNetworkFunctionInformation
    RoamingQBCInformation:
      type: object
      properties:
@@ -593,7 +627,7 @@ components:
        timeofLastUsage:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
        qoSInformation:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SubscribedDefaultQos'
          $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/QosData'
        userLocationInformation:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/UserLocation'
        uetimeZone:
@@ -608,7 +642,7 @@ components:
        servingNetworkFunctionID:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Guami'
            $ref: '#/components/schemas/ServingNetworkFunctionID'
          minItems: 0
        3gppPSDataOffStatus:
          $ref: '#/components/schemas/3GPPPSDataOffStatus'
@@ -758,16 +792,10 @@ components:
          type: array
          items:
            $ref: '#/components/schemas/QosFlowsUsageReport'
    RatingGroup:
      $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32'
    ServiceId:
      $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32'
    Diagnostics:
      type: integer
    IPFilterRule:
      type: string
    ChargingId:
      $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32'
    QosFlowsUsageReport:
      type: object
      properties:
@@ -793,6 +821,7 @@ components:
        - type: string
          enum:
            - SMF
            - SMSF
        - type: string
    ChargingCharacteristicsSelectionMode:
      anyOf:
@@ -813,7 +842,8 @@ components:
            - VALIDITY_TIME
            - OTHER_QUOTA_TYPE
            - FORCED_REAUTHORISATION
            - UNUSED_QUOTA_TIMER
            - UNUSED_QUOTA_TIMER # Included for backwards compatibility, shall not be used
            - UNIT_COUNT_INACTIVITY_TIMER
            - ABNORMAL_RELEASE
            - QOS_CHANGE
            - VOLUME_LIMIT
@@ -823,13 +853,14 @@ components:
            - RAT_CHANGE
            - UE_TIMEZONE_CHANGE
            - TARIFF_TIME_CHANGE
            - MAX_NUMBER_OF_CHANGES_IN CHARGING_CONDITIONS
            - MAX_NUMBER_OF_CHANGES_IN_CHARGING_CONDITIONS
            - MANAGEMENT_INTERVENTION
            - CHANGE_OF_UE_PRESENCE_IN PRESENCE_REPORTING_AREA
            - CHANGE_OF_UE_PRESENCE_IN_PRESENCE_REPORTING_AREA
            - CHANGE_OF_3GPP_PS_DATA_OFF_STATUS
            - SERVING_NODE_CHANGE
            - REMOVAL_OF_UPF
            - ADDITION_OF_UPF
            - START_OF_SERVICE_DATA_FLOW
        - type: string
    FinalUnitAction:
      anyOf: