MecAppSupportApi.yaml 91.2 KB
Newer Older
      title: MecAppSuptApiSubscriptionLinkList
      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:
      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
      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:
      title: TimingCaps.NtpServers.NtpServerAddrType
        - IP_ADDRESS
        - DNS_NAME
      description: Address type of NTP server
      examples:
      title: TimingCaps.NtpServers
        - ntpServerAddrType
        - ntpServerAddr
        - minPollingInterval
        - maxPollingInterval
        - localPriority
        - authenticationOption
      type: object
      properties:
        ntpServerAddrType:
          $ref: '#/components/schemas/TimingCaps.NtpServers.NtpServerAddrType'
        ntpServerAddr:
          type: string
          description: NTP server address
          examples:
          type: integer
          description: >-
            Minimum poll interval for NTP messages, in seconds as a power of
            two. Range 3 to 17
          contentEncoding: int32
          examples:
          type: integer
          description: >-
            Maximum poll interval for NTP messages, in seconds as a power of
            two. Range 3 to 17
          contentEncoding: int32
          examples:
          type: integer
          description: NTP server local priority
          contentEncoding: int32
          examples:
        authenticationOption:
          $ref: '#/components/schemas/TimingCaps.NtpServers.AuthenticationOption'
        authenticationKeyNum:
          type: integer
          description: >-
            Authentication key number. This configuration is valid and shall be
            present if authenticationOption is set to SYMMETRIC_KEY
          contentEncoding: int32
          examples:
    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
          type: integer
          description: >-
            PTP Server (referred to as "master" in IEEE 1588-2019 ) local
            priority
          contentEncoding: int32
          examples:
          type: integer
          description: >-
            Acceptable maximum rate of the Delay_Req messages in packets per
            second
          contentEncoding: int32
          examples:
      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:
          description: >-
            The nanoseconds part of the time. Time is defined as Unix-time since
            January 1, 1970, 00:00:00 UTC
          contentEncoding: int32
          examples:
      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:
          type: integer
          description: >-
            Used to match all IPv4 packets that have the same Differentiated
            Services Code Point (DSCP)
          contentEncoding: int32
          examples:
          type: integer
          description: Used to match all IPv6 packets that have the same Traffic Class.
          contentEncoding: int32
          examples:
      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
    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
      title: TrafficRule.State
      type: string
      description: >-
        Contains the traffic rule state. This attribute may be updated using
        HTTP PUT method
      title: TrafficRule
        - trafficRuleId
        - filterType
        - priority
        - trafficFilter
        - action
        - state
      type: object
          type: string
          description: Identify the traffic rule.
          examples:
        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:
          type: array
          items:
            $ref: '#/components/schemas/TrafficFilter'
          description: ''
        action:
          $ref: '#/components/schemas/TrafficRule.Action'
        dstInterface:
            $ref: '#/components/schemas/DestinationInterface'
        state:
          $ref: '#/components/schemas/TrafficRule.State'
      description: This type represents the general information of a traffic rule.
      x-etsi-notes: "NOTE 1:\tValue indicates the priority in descending order, i.e. with 0 as the highest priority and 255 as the lowest priority.\nNOTE 2:\tSome applications (like inline/tap) require two interfaces. The first interface in the case of inline/tap is on the client (e.g. UE) side and the second on the core network (e.g. EPC) side."
      title: TunnelInfo.TunnelType
      type: string
      description: This type represents the tunnel information.
    TunnelInfo:
      title: TunnelInfo
      type: object
      properties:
        tunnelType:
          $ref: '#/components/schemas/TunnelInfo.TunnelType'
        tunnelDstAddress:
          type: string
          description: Destination address of the tunnel
            - '192.127.4.100/32'
        tunnelSrcAddress:
          type: string
          description: Source address of the tunnel
            - '192.127.4.101/32'
      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
        - TRACEABLE
    CategoryRef:
      title: CategoryRef
      required:
        - href
        - id
        - name
        - version
      type: object
      properties:
        href:
          type: string
          description: Reference of the catalogue
          examples:
            - /example/catalogue1
        id:
          type: string
          description: Unique identifier of the category
          examples:
            - id12345
        name:
          type: string
          description: >-
            Name of the category, example values include RNI, Location &
            Bandwidth Management
          examples:
            - RNI
        version:
          type: string
          description: Category version
          examples:
            - version1
      description: This type represents the category reference
    EndPointInfo.Address:
      title: EndPointInfo.Address
      required:
        - host
        - port
      type: object
      properties:
        host:
          type: string
          description: Host portion of the address
          examples:
            - 192.0.2.0
        port:
          type: integer
          description: Port portion of the address
          contentEncoding: int32
          examples:
            - 8080
      description: A IP address and port pair
    EndPointInfo.Addresses:
      title: EndPointInfo.Addresses
      required:
        - addresses
      type: object
      properties:
        addresses:
          type: array
          items:
            $ref: '#/components/schemas/EndPointInfo.Address'
          description: >-
            Entry point information of the service as one or more pairs of IP
            address and port. See note.
      description: This type represents information about a transport endpoint.
    EndPointInfo.Alternative:
      title: EndPointInfo.Alternative
      required:
        - alternative
      type: object
      properties:
        alternative:
          type: object
          description: >-
            Entry point information of the service in a format defined by an
            implementation, or in an external specification. See note.
      description: This type represents information about a transport endpoint.
    EndPointInfo.Uris:
      title: EndPointInfo.Uris
      required:
        - uris
      type: object
      properties:
        uris:
          type: array
          items:
            type: string
          description: >-
            Entry point information of the service as string, formatted
            according to URI syntax
      description: This type represents information about a transport endpoint.
    EndPointInfo.Fqdn:
      title: EndPointInfo.Fqdn
      required:
        - fqdn
      type: object
      properties:
        fqdn:
          type: array
          items:
            type: string
          description: Fully Qualified Domain Name of the service. See note.
      description: 'This type represents information about a transport endpoint. '
    ServiceDependency:
      properties:
        requestedPermissions:
          description: >-
            Requested permissions regarding the access of the application to the
            service. See clause 8.2 of ETSI GS MEC 009 [4].
            The format of this attribute is left for the data model design
            stage.
          items:
            $ref: '#/components/schemas/Not_specified'
          minItems: 0
          type: array
        serCategory:
          $ref: '#/components/schemas/CategoryRef'
        serName:
          description: 'The name of the service, for example, RNIS, LocationService, etc.'
          type: string
        serTransportDependencies:
          description: >-
            Indicates transport and serialization format dependencies of
            consuming the service. Defaults to REST + JSON if absent. See note.
          items:
            $ref: '#/components/schemas/TransportDependency'
          minItems: 0
          type: array
        version:
          description: The version of the service.
          type: string
      required:
        - serName
        - version
      type: object
      x-etsi-notes: "NOTE:\tThis attribute indicates groups of transport bindings that a service-consuming MEC application supports for the consumption of the MEC service defined by this ServiceDependency structure. If at least one of the indicated groups is supported by the service it may be consumed by the application."
    TransportDependency:
      properties:
        labels:
          description: >-
            Set of labels that allow to define groups of transport bindings. The
            mechanism of the grouping is defined below this table.
          items:
            type: string
          minItems: 1
          type: array
        serializers:
          description: >-
            Information about the serializers in this transport binding, as
            defined in the SerializerType type in ETSI GS MEC 011 [i.4]. Support
            for at least one of the entries is required in conjunction with the
            transport.
          items:
            $ref: '#/components/schemas/SerializerType'
          minItems: 1
          type: array
        transport:
          $ref: '#/components/schemas/TransportDescriptor'
      required:
        - transport
        - serializers
        - labels
      type: object
    TransportDescriptor:
      properties:
        protocol:
          description: >-
            The name of the protocol used. Shall be set to "HTTP" for a REST
            API.
          type: string
        security:
          $ref: '#/components/schemas/SecurityInfo'
        type:
          $ref: '#/components/schemas/TransportType'
        version:
          description: The version of the protocol used.
          type: string
      required:
        - type
        - protocol
        - version
        - security
      type: object
    SerializerType:
      title: SerializerType
      enum:
        - JSON
        - XML
        - PROTOBUF3
      type: string
      description: The enumeration represents types of serializers
      examples:
        - JSON
    SecurityInfo:
      title: SecurityInfo
      type: object
      properties:
        oAuth2Info:
          $ref: '#/components/schemas/SecurityInfo.OAuth2Info'
      description: This type represents security information related to a transport
    SecurityInfo.OAuth2Info:
      title: SecurityInfo.OAuth2Info
      required:
        - grantTypes
        - tokenEndpoint
      type: object
      properties:
        grantTypes:
          maxItems: 4
          minItems: 1
          type: array
          items:
            $ref: '#/components/schemas/SecurityInfo.OAuth2Info.GrantType'
          description: List of supported OAuth 2.0 grant types.
        tokenEndpoint:
          type: string
          description: The token endpoint
          examples:
            - /mecSerMgmtApi/security/TokenEndPoint
      description: Parameters related to use of OAuth 2.0
    SecurityInfo.OAuth2Info.GrantType:
      title: SecurityInfo.OAuth2Info.GrantType
      enum:
        - OAUTH2_AUTHORIZATION_CODE
        - OAUTH2_IMPLICIT_GRANT
        - OAUTH2_RESOURCE_OWNER
        - OAUTH2_CLIENT_CREDENTIALS
      type: string
      description: OAuth 2.0 grant type
      examples:
        - OAUTH2_CLIENT_CREDENTIALS
    TransportType:
      title: TransportType
      enum:
        - REST_HTTP
        - MB_TOPIC_BASED
        - MB_ROUTING
        - MB_PUBSUB
        - RPC
        - RPC_STREAMING
        - WEBSOCKET
      type: string
      description: The enumeration TransportType represents types of transports
      examples:
        - REST_HTTP
    FeatureDependency:
      properties:
        featureName:
          description: 'The name of the feature, for example, UserApps, UEIdentity, etc.'
          type: string
        version:
          description: The version of the feature.
          type: string
      required:
        - featureName
        - version
      type: object
    AppProfile:
      type: object
      required:
        - easId
        - endPt
        - acIds
        - scheds
        - permLvl
        - easFeats
        - svcContSupp
        - appLocs
      properties:
        easId:
          description: The identifier of the EAS
          type: string
          examples:
            - appName
        endPt:
          description: The version of the feature.
          oneOf:
            - $ref: '#/components/schemas/EndPointInfo.Uris'
            - $ref: '#/components/schemas/EndPointInfo.Fqdn'
            - $ref: '#/components/schemas/EndPointInfo.Addresses'
            - $ref: '#/components/schemas/EndPointInfo.Alternative'
        acIds:
          type: array
          items:
            type: string
          minItems: 1
          description: Identities of the Application Clients that can be served by the EAS
        provId:
          type: string
          description: Identifier of the ASP that provides the EAS.
          examples:
            - appProvider1
        type:
          description: The category or type of EAS.
          type: string
        scheds:
          type: array
          items:
            type: string
          minItems: 1
          description: The availability schedule of the EAS.
        svcArea:
          type: string
          description: >-
            The list of geographical and topological areas that the EAS serves.
            ACs in the UE that are outside the area will not be served.
        svcKpi:
          type: string
          description: Service characteristics provided by the EAS.
        permLvl:
          type: array
          items:
            type: string
          minItems: 1
          description: level of service permissions supported by the EAS.
        easFeats:
          type: array
          items:
            type: string
          minItems: 1
          description: Service features supported by the EAS.
        svcContSupp:
          type: array
          items:
            type: string
          minItems: 1
          description: The ACR scenarios supported by the EAS for service continuity.
        appLocs:
          type: array
          items:
            type: string
          minItems: 1
          description: >-
            List of DNAI(s) and the N6 traffic information associated with the
            EAS.
        avlRep:
          type: integer
          description: >-
            The period indicating to the EES, how often the EES needs to check
            the EAS's availability after a successful registration.
          contentEncoding: int32
          examples:
            - 1577836800
        status:
          type: string
          description: 'EAS status information. '
  requestBodies:
    AppTerminationNotification:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AppTerminationNotification'
      required: true