MEC030_V2XInformationService.yaml 58.3 KB
Newer Older
Elian Kraja's avatar
Elian Kraja committed
info:
  title: "ETSI GS MEC 030 V2X Information Service API"
  version: 2.1.1
  description: "ETSI GS MEC 030 V2X Information Service API described using OpenAPI."
Elian Kraja's avatar
Elian Kraja committed
  contact:
Elian Kraja's avatar
Elian Kraja committed
    name: ETSI Forge
    email: cti_support@etsi.org
Elian Kraja's avatar
Elian Kraja committed
    url: https://forge.etsi.org/rep/mec/gs030-vis-api
Elian Kraja's avatar
Elian Kraja committed
  license:
    name: BSD-3-Clause
    url: 'https://forge.etsi.org/legal-matters'  
externalDocs:
  description: "ETSI GS MEC 030 V2X Information Service API, v2.1.1"
  url: 'https://www.etsi.org/deliver/etsi_gs/MEC/001_099/030/02.01.01_60/gs_mec030v020101p.pdf' 
openapi: 3.0.0
servers:
Elian Kraja's avatar
Elian Kraja committed
  - url: 'https://localhost/vis/v1'
Elian Kraja's avatar
Elian Kraja committed
tags:
  - name: queries
    description: Queries
  - name: subscription
    description: Subscription
    
paths:
 /queries/uu_unicast_provisioning_info:   
  get:
   tags:
    - 'queries'
   summary: 'Used to query provisioning information for V2X communication over Uu unicast.'
   description: 'Used to query provisioning information for V2X communication over Uu unicast.'
   operationId: prov_info_uu_unicastGET  
   parameters:
        - in: query
          name: location_info
          schema:
           type: string
          required: true
          description: 'Comma separated list of locations to identify a cell of a base station or a particular geographical area'

   responses:
        '200':
          description: 'A response body containing the Uu unicast provisioning information. '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UuUnicastProvisioningInfo'        
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '406':
          $ref: '#/components/responses/406'
        '429':
          $ref: '#/components/responses/429'       
Elian Kraja's avatar
Elian Kraja committed
 /queries/uu_mbms_provisioning_info: 
  get:
   tags:
    - 'queries'
   summary: 'retrieve information required for V2X communication over Uu MBMS.'
   description: 'retrieve information required for V2X communication over Uu MBMS.'
   operationId: prov_info_uu_mbmsGET  
   parameters:
        - in: query
          name: location_info
          schema:
           type: string
          required: true
          description: 'omma separated list of locations to identify a cell of a base station or a particular geographical area'

   responses:
        '200':
          description: 'A response body containing the Uu unicast provisioning information. '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UuMbmsProvisioningInfo'        
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '406':
          $ref: '#/components/responses/406'
        '429':
          $ref: '#/components/responses/429'  
          
 /queries/pc5_provisioning_info:
   get: 
    tags:
    - 'queries'
    summary: 'Query provisioning information for V2X communication over PC5.'
    description: 'Query provisioning information for V2X communication over PC5.'
    operationId: prov_infoGET
    parameters:
        - in: query
          name: location_info
          schema:
           type: string
          required: true
          description: 'Comma separated list of locations to identify a cell of a base station or a particular geographical area'
    responses:
        '200':
          description: 'A response body containing the PC5 provisioning information is returned.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Pc5ProvisioningInfo'        
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '406':
          $ref: '#/components/responses/406'
        '429':
          $ref: '#/components/responses/429'   
          
 /provide_predicted_qos:
   post:  
    tags:
    - 'QoS'
    summary: 'Request the predicted QoS correspondent to potential routes of a vehicular UE.'
    description: 'Request the predicted QoS correspondent to potential routes of a vehicular UE.'
    operationId: predicted_qosPOST
    requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PredictedQos'
    responses:
        '200':
          description: 'The response body shall contain the predicted QoS corresponding to potential routes of a vehicular UE'
          content:
            application/json:
              schema:
               $ref: '#/components/schemas/PredictedQos'      
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'     
          
 /publish_v2x_message:
   post:    
    tags:
    - 'V2X_msg'
    summary: 'Used to publish a V2X message.'
    description: 'Used to publish a V2X message.'
    operationId: v2x_messagePOST
    requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/V2xMsgPublication'  
    responses:
        '204':
          $ref: '#/components/responses/204'      
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'         
        '406':
          $ref: '#/components/responses/406'
        '429':
          $ref: '#/components/responses/429'   
          
 /subscriptions:
   get: 
     tags:
      - 'subscription'
     summary: 'Request information about the subscriptions for this requestor.'
     description: 'Request information about the subscriptions for this requestor.'
     operationId: subGET  
     parameters:
          - in: query
            name: subscription_type
            description: 'Query parameter to filter on a specific subscription type. Permitted values:  prov_chg_uu_uni: provisioning information change for V2X communication over Uuunicast prov_chg_uu_mbms: provisioning information change for V2X communication over Uu MBMS prov_chg_uu_pc5: provisioning information change for V2X communication over PC5. v2x_msg: V2X interoperability message'
            schema:
             type: string
            required: false   
     responses:
        '200':
          description: 'A response body containing the list of links to requestor subscriptions is returned.'
          content:
            application/json:
              schema:
                 $ref: '#/components/schemas/SubscriptionLinkList'        
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '406':
          $ref: '#/components/responses/406'
        '429':
          $ref: '#/components/responses/429'             
   post: 
    tags:
    - 'subscription'
    summary: ' create a new subscription to VIS notifications.'
    description: ' create a new subscription to VIS notifications.'
    operationId: subPOST  
    requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
               - $ref: '#/components/schemas/ProvChgUuUniSubscription'
               - $ref: '#/components/schemas/ProvChgUuMbmsSubscription'
               - $ref: '#/components/schemas/ProvChgPc5Subscription'
               - $ref: '#/components/schemas/V2xMsgSubscription'   
    responses:
        '201':
          description: 'In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type.'
          content:
            application/json:
              schema:
               oneOf:
               - $ref: '#/components/schemas/ProvChgUuUniSubscription'
               - $ref: '#/components/schemas/ProvChgUuMbmsSubscription'
               - $ref: '#/components/schemas/ProvChgPc5Subscription'
               - $ref: '#/components/schemas/V2xMsgSubscription'      
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '406':
          $ref: '#/components/responses/406'
        '415':
          $ref: '#/components/responses/415'
        '422':
          $ref: '#/components/responses/422'  
        '429':
          $ref: '#/components/responses/429'  
          
          
 /subscriptions/{subscriptionId}: 
    parameters:
    - in: path
      name: subscriptionId
      description: 'Refers to created subscription, where the VIS API allocates a unique resource name for this subscription'
      schema:
        type: string
      required: true  


    get:
      tags:
      - 'subscription'
      summary: 'Retrieve information about this subscription.'
      description: 'Retrieve information about this subscription.'
      operationId: individualSubscriptionGET
      
      responses:
        '200':
          description: 'A response body containing the data type describing the specific RNI event subscription is returned' 
          content:
            application/json:
              schema:
               oneOf:
               - $ref: '#/components/schemas/ProvChgUuUniSubscription'
               - $ref: '#/components/schemas/ProvChgUuMbmsSubscription'
               - $ref: '#/components/schemas/ProvChgPc5Subscription'
               - $ref: '#/components/schemas/V2xMsgSubscription'  
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '406':
          $ref: '#/components/responses/406'
        '429':
          $ref: '#/components/responses/429'   

    put:
      tags:
      - 'subscription'
      summary: 'Used to update the existing subscription.'
      description: 'Used to update the existing subscription.'
      operationId: individualSubscriptionPUT
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
               - $ref: '#/components/schemas/ProvChgUuUniSubscription'
               - $ref: '#/components/schemas/ProvChgUuMbmsSubscription'
               - $ref: '#/components/schemas/ProvChgPc5Subscription'
               - $ref: '#/components/schemas/V2xMsgSubscription'
      responses:
        '200':
          description: 'A response body containing data type describing the updated subscription is returned' 
          content:
            application/json:
              schema:
               oneOf:
               - $ref: '#/components/schemas/ProvChgUuUniSubscription'
               - $ref: '#/components/schemas/ProvChgUuMbmsSubscription'
               - $ref: '#/components/schemas/ProvChgPc5Subscription'
               - $ref: '#/components/schemas/V2xMsgSubscription'  
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
          
        '403':
          $ref: '#/components/responses/403'
          
        '404':
          $ref: '#/components/responses/404'
          
        '406':
          $ref: '#/components/responses/406'
          
        '412':
          $ref: '#/components/responses/412' 
          
        '422':
          $ref: '#/components/responses/422'
          
        '429':
          $ref: '#/components/responses/429'
    delete:
      tags:
      - 'subscription'
      summary: 'Used to cancel the existing subscription.'
      description: 'Used to cancel the existing subscription.'
      operationId: individualSubscriptionDELETE
      responses:
        '204':
          $ref: '#/components/responses/204'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
          
Elian Kraja's avatar
Elian Kraja committed
  # /notifitication_end_point_provided_by_client
   #post: 
   
components:
  schemas:
    CellId:
      properties:
        cellId:
          description: E-UTRAN Cell Identity as a bit string (size (28)).
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: String
      required:
      - cellId
      type: object
      x-etsi-ref: 6.6.2
    Earfcn:
      properties:
        earfcn:
          description: E-UTRA Absolute Radio Frequency Channel Number, range (0... 65535)
          type: integer
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: Integer
      required:
      - earfcn
      type: object
      x-etsi-ref: 6.6.3
    Ecgi:
      properties:
        cellId:
          # description': The E-UTRAN Cell Identity.
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': CellId
          $ref: '#/components/schemas/CellId'
        plmn:
          # description': Public Land Mobile Network Identity.
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': Plmn
          $ref: '#/components/schemas/Plmn'
      required:
      - plmn
      - cellId
      type: object
      x-etsi-ref: 6.5.5
    FddInfo:
      properties:
        dlEarfcn:
          # description': ''
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': Earfcn
          $ref: '#/components/schemas/Earfcn'
        dlTransmissionBandwidth:
          # description': ''
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': TransmissionBandwidth
          $ref: '#/components/schemas/TransmissionBandwidth'
        ulEarfcn:
          # description': ''
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': Earfcn
          $ref: '#/components/schemas/Earfcn'
        ulTransmissionBandwidth:
          # description': ''
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': TransmissionBandwidth
          $ref: '#/components/schemas/TransmissionBandwidth'
      required:
      - ulEarfcn
      - dlEarfcn
      - ulTransmissionBandwidth
      - dlTransmissionBandwidth
      type: object
      x-etsi-ref: 6.5.6
      
    LocationInfo.geoArea:
          description: Information of a geographical area.
          properties:
            latitude:
              description: 'Latitude (DATUM = WGS84) -90 to 90 in decimal degree format DDD.ddd'
              format: Float
              type: number
              x-etsi-mec-cardinality: '1'
              x-etsi-mec-origin-type: Float
            longitude:
              description: 'Longitude (DATUM = WGS84)-180 to 180 in decimal degree format DDD.ddd'
              format: Float
              type: number
              x-etsi-mec-cardinality: '1'
              x-etsi-mec-origin-type: Float
          required:
          - latitude
          - longitude
          type: object
          x-etsi-mec-cardinality: 0..1
          
    LocationInfo:
      properties:
        ecgi:
          # description': E-UTRAN CelI Global Identifier of the serving cell.
          # x-etsi-mec-cardinality': 0..1
          # x-etsi-mec-origin-type': Ecgi
          $ref: '#/components/schemas/Ecgi'
        geoArea:
          $ref: '#/components/schemas/LocationInfo.geoArea'
      type: object
      x-etsi-notes: "NOTE:\tEither ecgi or geoArea shall be present, but not both."
      x-etsi-ref: 6.5.3
    Pc5NeighbourCellInfo:
      properties:
        ecgi:
          # description': E-UTRAN CelI Global Identifier.
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': Ecgi
          $ref: '#/components/schemas/Ecgi'
        plmn:
          # description': Public Land Mobile Network Identity.
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': Plmn
          $ref: '#/components/schemas/Plmn'
        siV2xConfig:
          description: V2X sidelink communication configuration, as defined in ETSI TS 136 331 [i.11].
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': SystemInformationBlockType21 (as defined in ETSI TS 136 331 [i.11])
          type: string
      required:
      - plmn
      - ecgi
      - siV2xConfig
      type: object
      x-etsi-ref: 6.5.12
    
    
    Pc5ProvisioningInfo.proInfoPc5:
            description: The provisioning information per location as defined below.
Elian Kraja's avatar
Elian Kraja committed
            properties:
              dstLayer2Id:
                description: "For sidelink communication, the Destination Layer-2 ID is set to the ProSe Layer-2 Group ID or Prose UE ID, see ETSI TS\_136\_321 [i.12].\nPLMN operators coordinate to make sure Destination Layer-2 ID(s) for different V2X services are configured in a consistent manner."
                type: string
                x-etsi-mec-cardinality: '1'
                x-etsi-mec-origin-type: String
              locationInfo:
                # description': Location information to identify a cell of a base station or a particular geographical area.
                # x-etsi-mec-cardinality': '1'
                # x-etsi-mec-origin-type': LocationInfo
                $ref: '#/components/schemas/LocationInfo'
              neighbourCellInfo:
                description: The information of the neighbour cells in a visiting PLMN that support V2X communication over PC5.
                items:
                  $ref: '#/components/schemas/Pc5NeighbourCellInfo'
                minItems: 0
                type: array
                x-etsi-mec-cardinality: 0..N
                x-etsi-mec-origin-type: Pc5NeighbourCellInfo
            required:
            - locationInfo
            - dstLayer2Id
            
    Pc5ProvisioningInfo:
      properties:
          proInfoPc5:
            type: array
            items:
             $ref: '#/components/schemas/Pc5ProvisioningInfo.proInfoPc5'
Elian Kraja's avatar
Elian Kraja committed
          timeStamp:
            # description': Time stamp.
            # x-etsi-mec-cardinality': 0..1
            # x-etsi-mec-origin-type': TimeStamp
            $ref: '#/components/schemas/TimeStamp'
      required:
      - proInfoPc5
      type: object
      x-etsi-ref: 6.2.4
      
    Plmn:
      properties:
        mcc:
          description: The Mobile Country Code part of PLMN Identity.
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: String
        mnc:
          description: The Mobile Network Code part of PLMN Identity.
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: String
      required:
      - mcc
      - mnc
      type: object
      x-etsi-ref: 6.5.4
    
    PredictedQos.routes.routeInfo:
      required:
      - location
      properties:
        location:
          $ref: '#/components/schemas/LocationInfo'
        time:
          $ref: '#/components/schemas/TimeStamp'
        rsrp:
          description: 'Reference Signal Received Quality as defined in ETSI TS 136 214 [i.13]. Shall only be included in the response'
          type: integer
          format: Uint8
        
        rsrq:
          description: 'Reference Signal Received Quality as defined in ETSI TS 136 214 [i.13]. Shall only be included in the response'
          type: integer  
          format: Uint8
          
    PredictedQos.routes:
     properties:
      routeinfo:
        description: 'Information relating to a specific route. The first structure shall relate to the route origin and the last to the route destination. Intermediate waypoint locations may also be provided. '
        type: array
        minItems: 2
        items:
          $ref: '#/components/schemas/PredictedQos.routes.routeInfo'
     required:
     - routeinfo
      
    PredictedQos:
      description: 'predicted QoS of a vehicular UE'
      properties:
        timeGranularity:
          $ref: '#/components/schemas/TimeStamp'
        locationGranularity:
          description: 'Granularity of visited location. Measured in meters'
          type: string
        routes:
          type: array
          items:
            $ref: '#/components/schemas/PredictedQos.routes'
      required:
      - locationGranularity
      - routes
      type: object
      x-etsi-mec-cardinality: 0..1  
      
      
Elian Kraja's avatar
Elian Kraja committed
    ProvChgPc5Notification:
      properties:
        dstLayer2Id:
          description: For sidelink communication, the Destination Layer-2 ID is set to the ProSe Layer-2 Group ID or Prose UE ID, see ETSI TS 136 321 [i.12].
          type: string
          x-etsi-mec-cardinality: 0..1
          x-etsi-mec-origin-type: String
        locationInfo:
          # description': Location information to identify a cell of a base station or a particular geographical area.
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': LocationInfo
          $ref: '#/components/schemas/LocationInfo'
        neighbourCellInfo:
          description: The information of the neighbour cells in a visiting PLMN that support V2X communication over PC5.
          items:
            $ref: '#/components/schemas/Pc5NeighbourCellInfo'
          minItems: 0
          type: array
          x-etsi-mec-cardinality: 0..N
          x-etsi-mec-origin-type: Pc5NeighbourCellInfo
        notificationType:
          description: Shall be set to "ProvChgPc5Notification".
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: String
        timeStamp:
          # description': Time stamp.
          # x-etsi-mec-cardinality': 0..1
          # x-etsi-mec-origin-type': TimeStamp
          $ref: '#/components/schemas/TimeStamp'
      required:
      - notificationType
      - locationInfo
      type: object
      x-etsi-ref: 6.4.4
      
    ProvChgPc5Subscription.links:
          description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests.
          properties:
            self:
              # description': Self-referring URI. The URI shall be unique within the VIS API as it acts as an ID for the subscription.
              # x-etsi-mec-cardinality': '1'
              # x-etsi-mec-origin-type': LinkType
              $ref: '#/components/schemas/LinkType'
          required:
          - self
          type: object
          x-etsi-mec-cardinality: 0..1 
    
    ProvChgPc5Subscription.filterCriteria:
          description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response.
          properties:
            dstLayer2Id:
              description: For sidelink communication, the Destination Layer-2 ID is set to the ProSe Layer-2 Group ID or Prose UE ID, see ETSI TS 136 321 [i.12].
              type: string
              x-etsi-mec-cardinality: '1'
              x-etsi-mec-origin-type: String
            locationInfo:
              # description': Location information to identify a cell of a base station or a particular geographical area.
              # x-etsi-mec-cardinality': '1'
              # x-etsi-mec-origin-type': LocationInfo
              $ref: '#/components/schemas/LocationInfo'
            neighbourCellInfo:
              description: The information of the neighbour cells in a visiting PLMN that support V2X communication over PC5.
              items:
                $ref: '#/components/schemas/Pc5NeighbourCellInfo'
              minItems: 0
              type: array
              x-etsi-mec-cardinality: 0..N
              x-etsi-mec-origin-type: Pc5NeighbourCellInfo
          required:
          - locationInfo
          - dstLayer2Id
          type: object
          x-etsi-mec-cardinality: '1' 
    ProvChgPc5Subscription:
      properties:
        _links:
          $ref: '#/components/schemas/ProvChgPc5Subscription.links'
        callbackReference:
          description: URI selected by the service consumer to receive notifications on the subscribed VIS information. This shall be included both in the request and in response.
          format: uri
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: URI
        expiryDeadline:
          # description': Time stamp.
          # x-etsi-mec-cardinality': 0..1
          # x-etsi-mec-origin-type': TimeStamp
          $ref: '#/components/schemas/TimeStamp'
        filterCriteria:
          $ref: '#/components/schemas/ProvChgPc5Subscription.filterCriteria'
        subscriptionType:
          description: Shall be set to "ProvChgPc5Subscription".
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: String
      required:
      - subscriptionType
      - callbackReference
      - filterCriteria
      type: object
      x-etsi-ref: 6.3.4
    ProvChgUuMbmsNotification:
      properties:
        locationInfo:
          # description': Location information to identify a cell of a base station or a particular geographical area.
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': LocationInfo
          $ref: '#/components/schemas/LocationInfo'
        neighbourCellInfo:
          description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu MBMS.
          items:
            $ref: '#/components/schemas/UuMbmsNeighbourCellInfo'
          minItems: 0
          type: array
          x-etsi-mec-cardinality: 0..N
          x-etsi-mec-origin-type: UuMbmsNeighbourCellInfo
        notificationType:
          description: Shall be set to "ProvChgUuMbmsNotification".
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: String
        timeStamp:
          # description': Time stamp.
          # x-etsi-mec-cardinality': 0..1
          # x-etsi-mec-origin-type': TimeStamp
          $ref: '#/components/schemas/TimeStamp'
        v2xServerUsd:
          # description': User Service Description for V2X Application Server is used to configure the UE for receiving local V2X Application Server information when it is provided over MBMS.
          # x-etsi-mec-cardinality': 0..1
          # x-etsi-mec-origin-type': V2xServerUsd
          $ref: '#/components/schemas/V2xServerUsd'
      required:
      - notificationType
      - locationInfo
      type: object
      x-etsi-ref: 6.4.3
    ProvChgUuMbmsSubscription.links:
          description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests.
          properties:
            self:
              # description': Self-referring URI. The URI shall be unique within the VIS API as it acts as an ID for the subscription.
              # x-etsi-mec-cardinality': '1'
              # x-etsi-mec-origin-type': LinkType
              $ref: '#/components/schemas/LinkType'
          required:
          - self
          type: object
          x-etsi-mec-cardinality: 0..1
    
    ProvChgUuMbmsSubscription.filterCriteria:
          description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response.
          properties:
            locationInfo:
              # description': Location information to identify a cell of a base station or a particular geographical area.
              # x-etsi-mec-cardinality': '1'
              # x-etsi-mec-origin-type': LocationInfo
              $ref: '#/components/schemas/LocationInfo'
            neighbourCellInfo:
              description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu MBMS.
              items:
                $ref: '#/components/schemas/UuMbmsNeighbourCellInfo'
              minItems: 0
              type: array
              x-etsi-mec-cardinality: 0..N
              x-etsi-mec-origin-type: UuMbmsNeighbourCellInfo
            v2xServerUsd:
              # description': User Service Description for V2X Application Server is used to configure the UE for receiving local V2X Application Server information when it is provided over MBMS.
              # x-etsi-mec-cardinality': '1'
              # x-etsi-mec-origin-type': V2xServerUsd
              $ref: '#/components/schemas/V2xServerUsd'
          required:
          - locationInfo
          - v2xServerUsd
          type: object
          x-etsi-mec-cardinality: '1'
          
    ProvChgUuMbmsSubscription:
      properties:
        _links:
          $ref: '#/components/schemas/ProvChgUuMbmsSubscription.links'
        callbackReference:
          description: URI selected by the service consumer to receive notifications on the subscribed VIS information. This shall be included both in the request and in response.
          format: uri
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: URI
        expiryDeadline:
          # description': Time stamp.
          # x-etsi-mec-cardinality': 0..1
          # x-etsi-mec-origin-type': TimeStamp
          $ref: '#/components/schemas/TimeStamp'
        filterCriteria:
          $ref: '#/components/schemas/ProvChgUuMbmsSubscription.filterCriteria'
        subscriptionType:
          description: Shall be set to "ProvChgUuMbmsSubscription".
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: String
      required:
      - subscriptionType
      - callbackReference
      - filterCriteria
      type: object
      x-etsi-ref: 6.3.3
    ProvChgUuUniNotification:
      properties:
        locationInfo:
          # description': Location information to identify a cell of a base station or a particular geographical area.
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': LocationInfo
          $ref: '#/components/schemas/LocationInfo'
        neighbourCellInfo:
          description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu unicast.
          items:
            $ref: '#/components/schemas/UuUniNeighbourCellInfo'
          minItems: 0
          type: array
          x-etsi-mec-cardinality: 0..N
          x-etsi-mec-origin-type: UuUniNeighbourCellInfo
        notificationType:
          description: Shall be set to "ProvChgUuUniNotification".
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: String
        timeStamp:
          # description': Time stamp.
          # x-etsi-mec-cardinality': 0..1
          # x-etsi-mec-origin-type': TimeStamp
          $ref: '#/components/schemas/TimeStamp'
        v2xApplicationServer:
          # description': V2X Application Server address (consisting of IP address and UDP port) for unicast.
          # x-etsi-mec-cardinality': 0..1
          # x-etsi-mec-origin-type': V2xApplicationServer
          $ref: '#/components/schemas/V2xApplicationServer'
      required:
      - notificationType
      - locationInfo
      type: object
      x-etsi-ref: 6.4.2
    ProvChgUuUniSubscription.links:
          description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests.
          properties:
            self:
              # description': Self-referring URI. The URI shall be unique within the VIS API as it acts as an ID for the subscription.
              # x-etsi-mec-cardinality': '1'
              # x-etsi-mec-origin-type': LinkType
              $ref: '#/components/schemas/LinkType'
          required:
          - self
          type: object
          x-etsi-mec-cardinality: 0..1
    
    ProvChgUuUniSubscription.filterCriteria:
          description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response.
          properties:
            locationInfo:
              # description': Location information to identify a cell of a base station or a particular geographical area.
              # x-etsi-mec-cardinality': '1'
              # x-etsi-mec-origin-type': LocationInfo
              $ref: '#/components/schemas/LocationInfo'
            neighbourCellInfo:
              description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu unicast.
              items:
                $ref: '#/components/schemas/UuUniNeighbourCellInfo'
              minItems: 0
              type: array
              x-etsi-mec-cardinality: 0..N
              x-etsi-mec-origin-type: UuUniNeighbourCellInfo
            v2xApplicationServer:
              # description': V2X Application Server address (consisting of IP address and UDP port) for unicast.
              # x-etsi-mec-cardinality': '1'
              # x-etsi-mec-origin-type': V2xApplicationServer
              $ref: '#/components/schemas/V2xApplicationServer'
          required:
          - locationInfo
          - v2xApplicationServer
          type: object
          x-etsi-mec-cardinality: '1'
          
    ProvChgUuUniSubscription:
      properties:
        _links:
          $ref: '#/components/schemas/ProvChgUuUniSubscription.links'
        callbackReference:
          description: URI selected by the service consumer to receive notifications on the subscribed VIS information. This shall be included both in the request and in response.
          format: uri
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: URI
        expiryDeadline:
          # description': Time stamp.
          # x-etsi-mec-cardinality': 0..1
          # x-etsi-mec-origin-type': TimeStamp
          $ref: '#/components/schemas/TimeStamp'
        filterCriteria:
          $ref: '#/components/schemas/ProvChgUuUniSubscription.filterCriteria'
        subscriptionType:
          description: Shall be set to "ProvChgUuUniSubscription".
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: String
      required:
      - subscriptionType
      - callbackReference
      - filterCriteria
      type: object
      x-etsi-ref: 6.3.2
Elian Kraja's avatar
Elian Kraja committed
    SubscriptionLinkList.links.subscriptions:
                description: "The service consumer\u2019s subscriptions."
                properties:
                  href:
                    description: The URI referring to the subscription.
                    format: uri
                    type: string
                    x-etsi-mec-cardinality: '1'
                    x-etsi-mec-origin-type: URI
                  subscriptionType:
                    description: Type of the subscription. The values are as defined in the \"subscriptionType\" attribute for each different V2X information event subscription data type.
                    type: string
                    x-etsi-mec-cardinality: '1'
                    x-etsi-mec-origin-type: String
                required:
                - href
                - subscriptionType
                x-etsi-mec-cardinality: 0..N   
    
    SubscriptionLinkList.links:
          description: List of hyperlinks related to the resource.
          properties:
              self:
                # description': URI of this resource.
                # x-etsi-mec-cardinality': '1'
                # x-etsi-mec-origin-type': LinkType
                $ref: '#/components/schemas/LinkType'
              subscriptions:
               type: array
               items:
                $ref: '#/components/schemas/SubscriptionLinkList.links.subscriptions'
          type: object
          required:
          - self
          x-etsi-mec-cardinality: '1'
          
    SubscriptionLinkList:
      properties:
        _links:
          $ref: '#/components/schemas/SubscriptionLinkList.links'
      required:
      - _links
      type: object
      x-etsi-ref: 6.3.6
      
    TddInfo:
      properties:
        earfcn:
          # description': ''
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': Earfcn
          $ref: '#/components/schemas/Earfcn'
        subframeAssignment:
          description: Uplink-downlink subframe configuration information.
          type: string
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: String
        transmissionBandwidth:
          # description': ''
          # x-etsi-mec-cardinality': '1'
          # x-etsi-mec-origin-type': TransmissionBandwidth
          $ref: '#/components/schemas/TransmissionBandwidth'
      required:
      - earfcn
      - transmissionBandwidth
      - subframeAssignment
      type: object
      x-etsi-ref: 6.5.7
    TimeStamp:
      properties:
        nanoSeconds:
          description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.
          format: Uint32
          type: integer
          x-etsi-mec-cardinality: '1'
          x-etsi-mec-origin-type: Uint32
        seconds:
          description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC.