MecAppSupportApi.yaml 59.8 KB
Newer Older
          description: Bad Request. It is used to indicate that incorrect parameters were passed to the request.
          headers: {}
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/plain:
              schema:
                type: object
                description: Empty schema
                contentMediaType: text/plain
          description: Forbidden. The operation is not allowed given the current status of the resource.
          headers: {}
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
          description: Not Found. It is used when a client provided a URI that cannot be mapped  to a valid resource URI.
          headers: {}
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/plain:
              schema:
                type: object
                description: Empty schema
                contentMediaType: text/plain
      deprecated: false
    parameters: []
  /timing/current_time:
      summary: 'Retrieve current time'
      description: This method retrieves the information of the platform's current time which corresponds to the get platform time procedure
      operationId: TimingCurrentTime_GET
      parameters: []
      responses:
        '200':
          description: It is used to indicate nonspecific success. The response body contains a representation of the resource.
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CurrentTime'
          description: Bad Request. It is used to indicate that incorrect parameters were passed to the request.
          headers: {}
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/plain:
              schema:
                type: object
                description: Empty schema
                contentMediaType: text/plain
          description: Forbidden. The operation is not allowed given the current status of the resource.
          headers: {}
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
          description: Not Found. It is used when a client provided a URI that cannot be mapped  to a valid resource URI.
          headers: {}
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/plain:
              schema:
                type: object
                description: Empty schema
                contentMediaType: text/plain
      deprecated: false
    parameters: []
Walter Featherstone's avatar
Walter Featherstone committed
    AppReadyConfirmation:
      title: AppReadyConfirmation
Walter Featherstone's avatar
Walter Featherstone committed
      required:
      - indication
      type: object
Walter Featherstone's avatar
Walter Featherstone committed
      properties:
        indication:
          const: READY
          type: string
          description: Indication about the MEC application instance.
          examples:
          - READY
      description: This type represents the information that the MEC application instance indicates to the MEC platform that it is up and running.
Walter Featherstone's avatar
Walter Featherstone committed
    AppTerminationConfirmation:
      title: AppTerminationConfirmation
Walter Featherstone's avatar
Walter Featherstone committed
      required:
      - operationAction
      type: object
Walter Featherstone's avatar
Walter Featherstone committed
      properties:
        operationAction:
          $ref: '#/components/schemas/OperationActionType'
      description: This type represents the information that the MEC application instance provides to the MEC platform when informing it that the application has completed its application level related terminate/stop actions, e.g. retention of application state in the case of stop.
Walter Featherstone's avatar
Walter Featherstone committed
    AppTerminationNotification.Links:
      title: AppTerminationNotification.Links
Walter Featherstone's avatar
Walter Featherstone committed
      required:
      - subscription
      type: object
Walter Featherstone's avatar
Walter Featherstone committed
      properties:
        subscription:
          $ref: '#/components/schemas/LinkType'
        confirmTermination:
          $ref: '#/components/schemas/LinkType.ConfirmTermination'
      description: Object containing hyperlinks related to the resource.
      title: AppTerminationNotification
      - notificationType
      - operationAction
      - maxGracefulTimeout
      - _links
      type: object
          type: string
          description: Shall be set to AppTerminationNotification.
          examples:
          - AppTerminationNotification
Walter Featherstone's avatar
Walter Featherstone committed
        operationAction:
          $ref: '#/components/schemas/OperationActionType'
          type: integer
          description: Maximum timeout value in seconds for graceful termination or graceful stop of an application instance.
          contentEncoding: int32
          examples:
          - 10
Walter Featherstone's avatar
Walter Featherstone committed
          $ref: '#/components/schemas/AppTerminationNotification.Links'
      description: This type represents the information that the MEC platform notifies the subscribed application instance about  the corresponding application instance termination/stop.
      title: AppTerminationNotificationSubscription
      - subscriptionType
      - callbackReference
      - _links
      - appInstanceId
      type: object
          type: string
          description: Shall be set to AppTerminationNotificationSubscription.
          examples:
          - AppTerminationNotificationSubscription
          type: string
          description: URI selected by the MEC application instance to receive notifications on the subscribed MEC application instance management information. This shall be included in both the request and the response.
        _links:
          $ref: '#/components/schemas/Self'
        appInstanceId:
          type: string
          description: It is used as the filtering criterion for the subscribed events.
          examples:
          - ID1
      description: This type represents the information that the MEC platform notifies the subscribed application instance about  the corresponding application instance termination/stop.
      title: CurrentTime
      - seconds
      - nanoSeconds
      - timeSourceStatus
      type: object
          description: The seconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC
          contentEncoding: int32
          examples:
          - 1577836800
          description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC
          contentEncoding: int32
          examples:
          - 0
          $ref: '#/components/schemas/TimeSourceStatus'
      description: This type represents the information provided by the MEC platform in response to the Get Platform Time Request message.
      title: DestinationInterface.InterfaceType
      description: Type of the interface
      examples:
      - TUNNEL
      title: DestinationInterface
      - interfaceType
      type: object
      properties:
        interfaceType:
          $ref: '#/components/schemas/DestinationInterface.InterfaceType'
        tunnelInfo:
          $ref: '#/components/schemas/TunnelInfo'
        srcMacAddress:
          type: string
          description: Source address identifies the MAC address of the interface
          examples:
          - 02-00-00-00-00-00
          type: string
          description: Source address identifies the MAC address of the interface
          examples:
          - 02-00-00-00-00-00
          type: string
          description: IP address of the remote destination
          examples:
          - 192.0.2.0
      description: This type represents the destination interface. If the action is FORWARD_DECAPSULATED, FORWARD_ENCAPSULATED or PASSTHROUGH one value shall be provided. If the action is DUPLICATE_DECAPSULATED or DUPLICATE_ENCAPSULATED, two values shall be provided. If the action is DROP, no value shall be provided.
      title: DnsRule.IpAddressType
      description: IP address type
      examples:
      - IP_V6
    DnsRule.State:
      title: DnsRule.State
      - ACTIVE
      - INACTIVE
      type: string
      description: DNS rule state. This attribute may be updated using HTTP PUT method
      examples:
      - ACTIVE
      title: DnsRule
      - dnsRuleId
      - domainName
      - ipAddressType
      - ipAddress
      - state
      type: object
          type: string
          description: Identifies the DNS Rule
          examples:
          - dnsRule1
          type: string
          description: FQDN resolved by the DNS rule
          examples:
          - www.example.com
        ipAddressType:
          $ref: '#/components/schemas/DnsRule.IpAddressType'
        ipAddress:
          type: string
          description: IP address associated with the FQDN resolved by the DNS rule
          examples:
          - 192.0.2.0
          type: integer
          description: Time to live value
          contentEncoding: int32
      description: This type represents the general information of a DNS rule.
Walter Featherstone's avatar
Walter Featherstone committed
    LinkType:
      title: LinkType
      type: object
      properties:
        href:
          type: string
          description: URI referring to a resource
          examples:
          - /mecAppSuptApi/example
      description: This type represents a type of link and may be referenced from data structures
Walter Featherstone's avatar
Walter Featherstone committed
    LinkType.ConfirmTermination:
      title: LinkType.ConfirmTermination
        href:
          type: string
          description: URI referring to a resource
          examples:
          - /mecAppSuptApi/example
      description: Link to the task resource where to confirm termination in case the  application is ready to be terminated before expiry of the timeout.
Walter Featherstone's avatar
Walter Featherstone committed
    MecAppSuptApiSubscriptionLinkList.Links:
      title: MecAppSuptApiSubscriptionLinkList.Links
      - self
      type: object
      properties:
        self:
          $ref: '#/components/schemas/LinkType'
Walter Featherstone's avatar
Walter Featherstone committed
        subscriptions:
Walter Featherstone's avatar
Walter Featherstone committed
            $ref: '#/components/schemas/MecAppSuptApiSubscriptionLinkList.Subscription'
          description: The MEC application instance's subscriptions
      description: Self-referring URI.
Walter Featherstone's avatar
Walter Featherstone committed
    MecAppSuptApiSubscriptionLinkList.Subscription:
      title: MecAppSuptApiSubscriptionLinkList.Subscription
      - href
      - rel
      type: object
          type: string
          description: URI referring to a resource
          examples:
          - /mecAppSuptApi/example
          description: The values shall be set to AppTerminationNotificationSubscription.
      description: A link to a subscription.
Walter Featherstone's avatar
Walter Featherstone committed
    MecAppSuptApiSubscriptionLinkList:
      title: MecAppSuptApiSubscriptionLinkList
      - _links
      type: object
Walter Featherstone's avatar
Walter Featherstone committed
          $ref: '#/components/schemas/MecAppSuptApiSubscriptionLinkList.Links'
      description: This type represents a list of links related to currently existing subscriptions for a MEC application instance. This information is returned when sending a request to receive current subscriptions.
Walter Featherstone's avatar
Walter Featherstone committed
    OperationActionType:
      title: OperationActionType
Walter Featherstone's avatar
Walter Featherstone committed
      enum:
      - STOPPING
      - TERMINATING
      type: string
      description: Operation that is being performed on the MEC application instance.
      examples:
      - TERMINATING
      title: ProblemDetails
          type: string
          description: A URI reference according to IETF RFC 3986 that identifies the problem type
          type: string
          description: A short, human-readable summary of the problem type
          type: integer
          description: The HTTP status code for this occurrence of the problem
          contentEncoding: int32
          type: string
          description: A human-readable explanation specific to this occurrence of the problem
          type: string
          description: A URI reference that identifies the specific occurrence of the problem
      title: Self
      - self
      type: object
      properties:
        self:
          $ref: '#/components/schemas/LinkType'
      description: Self-referring URI.
      title: TimingCaps.NtpServers.AuthenticationOption
      - NONE
      - SYMMETRIC_KEY
      - AUTO_KEY
      description: NTP authentication option
      examples:
      - NONE
      title: TimingCaps.NtpServers.NtpServerAddrType
      - IP_ADDRESS
      - DNS_NAME
      description: Address type of NTP server
      examples:
      - IP_ADDRESS
      title: TimingCaps.NtpServers
      - ntpServerAddrType
      - ntpServerAddr
      - minPollingInterval
      - maxPollingInterval
      - localPriority
      - authenticationOption
      - authenticationKeyNum
      type: object
      properties:
        ntpServerAddrType:
          $ref: '#/components/schemas/TimingCaps.NtpServers.NtpServerAddrType'
        ntpServerAddr:
          type: string
          description: NTP server address
          examples:
          - 192.0.2.0
          type: integer
          description: Minimum poll interval for NTP messages, in seconds as a power of two. Range 3 to 17
          contentEncoding: int32
          examples:
          - 3
          type: integer
          description: Maximum poll interval for NTP messages, in seconds as a power of two. Range 3 to 17
          contentEncoding: int32
          examples:
          - 17
          type: integer
          description: NTP server local priority
          contentEncoding: int32
          examples:
          - 1
        authenticationOption:
          $ref: '#/components/schemas/TimingCaps.NtpServers.AuthenticationOption'
        authenticationKeyNum:
          type: integer
          description: Authentication key number
          contentEncoding: int32
          examples:
          - 1
    TimingCaps_PtpMasters:
      title: TimingCaps_PtpMasters
      - ptpMasterIpAddress
      - ptpMasterLocalPriority
      - delayReqMaxRate
      type: object
          type: string
          description: PTP Server (referred to as "master" in IEEE 1588-2019) IP Address
          examples:
          - 192.0.2.0
          type: integer
          description: PTP Server (referred to as "master" in IEEE 1588-2019 ) local priority
          contentEncoding: int32
          examples:
          - 1
          type: integer
          description: Acceptable maximum rate of the Delay_Req messages in packets per second
          contentEncoding: int32
          examples:
          - 10
      description: NTP server detail.
      title: TimingCaps.TimeStamp
      - seconds
      - nanoSeconds
      type: object
          description: The seconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC
          contentEncoding: int32
          examples:
          - 1577836800
          description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC
          contentEncoding: int32
          examples:
          - 0
      description: time
      title: TimingCaps
      type: object
      properties:
        timeStamp:
          $ref: '#/components/schemas/TimingCaps.TimeStamp'
        ntpServers:
          type: array
          items:
            $ref: '#/components/schemas/TimingCaps.NtpServers'
          description: Available NTP servers
            $ref: '#/components/schemas/TimingCaps_PtpMasters'
          description: Number of available PTP Servers (referred to as "masters" in IEEE 1588-2019)
      description: This type represents the information provided by the MEC platform in response to the Timing capabilities Query message.
      title: TrafficFilter
            type: string
          description: An IP address or a range of IP address. For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses. For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.
            type: string
          description: An IP address or a range of IP address. For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses. For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.
            type: string
            type: string
          description: A port or a range of ports
            type: string
          description: Specify the protocol of the traffic filter
            type: string
          description: Used for token based traffic rule
            type: string
          description: Used for GTP tunnel based traffic rule
        tgtTunnelAddress:
            type: string
          description: Used for GTP tunnel based traffic rule
        srcTunnelPort:
            type: string
          description: Used for GTP tunnel based traffic rule
        dstTunnelPort:
            type: string
          description: Used for GTP tunnel based traffic rule
          type: integer
          description: Used to match all packets that have the same Quality Class Indicator (QCI).
          contentEncoding: int32
          examples:
          - 1
          type: integer
          description: Used to match all IPv4 packets that have the same Differentiated Services Code Point (DSCP)
          contentEncoding: int32
          examples:
          - 0
          type: integer
          description: Used to match all IPv6 packets that have the same Traffic Class.
          contentEncoding: int32
          examples:
          - 1
      description: This type represents the traffic filter.
      title: TrafficRule.Action
      - DROP
      - FORWARD_DECAPSULATED
      - FORWARD_ENCAPSULATED
      - PASSTHROUGH
      - DUPLICATE_DECAPSULATED
      - DUPLICATE_ENCAPSULATED
      description: The action of the MEC host data plane when a packet matches the trafficFilter
      examples:
      - DROP
    TrafficRule.FilterType:
      title: TrafficRule.FilterType
      description: Definition of filter per FLOW or PACKET. If flow the filter match UE->EPC packet and the reverse packet is handled in the same context
      examples:
      - FLOW
      title: TrafficRule.State
      - ACTIVE
      - INACTIVE
      type: string
      description: Contains the traffic rule state. This attribute may be updated using HTTP PUT method
      examples:
      - ACTIVE
      title: TrafficRule
      - trafficRuleId
      - filterType
      - priority
      - trafficFilter
      - action
      - state
      type: object
          type: string
          description: Identify the traffic rule.
          examples:
          - TrafficRule1
        filterType:
          $ref: '#/components/schemas/TrafficRule.FilterType'
        priority:
          type: integer
          description: Priority of this traffic rule within the range 0 to 255. If traffic rules conflict, the one with higher priority take precedence. Value indicates the priority in descending order, i.e. with 0 as the highest priority and 255 as the lowest priority.
          contentEncoding: int32
          examples:
          - 1
          type: array
          items:
            $ref: '#/components/schemas/TrafficFilter'
          description: ''
        action:
          $ref: '#/components/schemas/TrafficRule.Action'
        dstInterface:
          type: array
          items:
           $ref: '#/components/schemas/DestinationInterface'
          maxItems: 2
        state:
          $ref: '#/components/schemas/TrafficRule.State'
      description: This type represents the general information of a traffic rule.
      title: TunnelInfo.TunnelType
      - GTP_U
      - GRE
      type: string
      description: This type represents the tunnel information.
      examples:
      - GTP_U
    TunnelInfo:
      title: TunnelInfo
      - tunnelType
      type: object
      properties:
        tunnelType:
          $ref: '#/components/schemas/TunnelInfo.TunnelType'
        tunnelDstAddress:
          type: string
          description: Destination address of the tunnel
          - '?'
        tunnelSrcAddress:
          type: string
          description: Source address of the tunnel
          - '?'
      description: This type represents the tunnel information.
    TimeSourceStatus:
      title: TimeSourceStatus
      enum:
      - TRACEABLE
      - NONTRACEABLE
      type: string
      description: Platform Time Source status. 1 = TRACEABLE - time source is locked to the UTC time source. 2 = NONTRACEABLE - time source is not locked to the UTC time source
      examples:
      - TRACEABLE

  requestBodies:
    AppTerminationNotification:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AppTerminationNotification'
      required: true