Commit 3447b434 authored by piscione's avatar piscione
Browse files

Updated specifications: fix on examples, callback and minor.

parent 24964e52
Pipeline #9805 failed with stage
in 0 seconds
openapi: 3.1.0
info:
title: MEC Application Support API
version: '2.1.1'
description: The ETSI MEC ISG MEC011 MEC Application Support API described using OpenAPI
license:
name: BSD-3-Clause
url: 'https://forge.etsi.org/legal-matters'
contact:
email: cti_support@etsi.org
version: '2.1.1'
externalDocs:
description: ETSI GS MEC011 Application Enablement API, V2.1.1
url: https://www.etsi.org/deliver/etsi_gs/MEC/001_099/011/02.01.01_60/gs_MEC011v020101p.pdf
tags:
- name: appTrafficRules
- name: appDnsRules
- name: appSubscriptions
- name: appConfirmTermination
- name: appConfirmReady
- name: timing
- name: callbacks
jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema
servers:
- url: http://127.0.0.1:8081/mec_app_support/v1
......@@ -16,7 +30,6 @@ paths:
get:
tags:
- appTrafficRules
summary: ApplicationsTrafficRules_GET
description: This method retrieves information about all the traffic rules associated with a MEC application instance.
operationId: ApplicationsTrafficRules_GET
parameters:
......@@ -115,7 +128,7 @@ paths:
get:
tags:
- appTrafficRules
summary: ApplicationsTrafficRule_GET
description: This method retrieves information about all the traffic rules associated with a MEC application instance.
operationId: ApplicationsTrafficRule_GET
parameters:
......@@ -196,7 +209,7 @@ paths:
put:
tags:
- appTrafficRules
summary: ApplicationsTrafficRule_PUT
description: This method retrieves information about all the traffic rules associated with a MEC application instance.
operationId: ApplicationsTrafficRule_PUT
parameters:
......@@ -298,7 +311,6 @@ paths:
get:
tags:
- appDnsRules
summary: ApplicationsDnsRules_GET
description: This method retrieves information about all the DNS rules associated with a MEC application instance.
operationId: ApplicationsDnsRules_GET
parameters:
......@@ -387,7 +399,6 @@ paths:
get:
tags:
- appDnsRules
summary: ApplicationsDnsRule_GET
description: This method retrieves information about a DNS rule associated with a MEC application instance.
operationId: ApplicationsDnsRule_GET
parameters:
......@@ -457,7 +468,6 @@ paths:
put:
tags:
- appDnsRules
summary: ApplicationsDnsRule_PUT
description: This method activates, de-activates or updates a traffic rule.
operationId: ApplicationsDnsRule_PUT
parameters:
......@@ -548,7 +558,6 @@ paths:
get:
tags:
- appSubscriptions
summary: ApplicationsSubscriptions_GET
description: The GET method may be used to request information about all subscriptions for this requestor. Upon success, the response contains entity body with all the subscriptions for the requestor.
operationId: ApplicationsSubscriptions_GET
parameters:
......@@ -602,7 +611,6 @@ paths:
post:
tags:
- appSubscriptions
summary: ApplicationsSubscriptions_POST
description: The POST method may be used to create a new subscription. One example use case is to create a new subscription to the MEC service availability notifications. Upon success, the response contains entity body describing the created subscription.
operationId: ApplicationsSubscriptions_POST
parameters:
......@@ -668,12 +676,28 @@ paths:
description: Empty schema
contentMediaType: text/plain
deprecated: false
callbacks:
AppTerminationNotification:
'{$request.body#/callbackUri}':
post:
description: Represents the information that the MEP notifies the
subscribed application instance about the corresponding
application instance termination/stop'
operationId: AppTerminationNotification_POST
tags:
- callbacks
requestBody:
$ref: '#/components/requestBodies/AppTerminationNotification'
responses:
'200':
description: Expected responses from callback consumer, if it accepts the callback
parameters: []
/applications/{appInstanceId}/subscriptions/{subscriptionId}:
get:
tags:
- appSubscriptions
summary: ApplicationsSubscription_GET
description: The GET method requests information about a subscription for this requestor. Upon success, the response contains entity body with the subscription for the requestor.
operationId: ApplicationsSubscription_GET
parameters:
......@@ -734,7 +758,7 @@ paths:
delete:
tags:
- appSubscriptions
summary: ApplicationsSubscription_DELETE
description: This method deletes a mecAppSuptApiSubscription. This method is typically used in "Unsubscribing from service availability event notifications" procedure.
operationId: ApplicationsSubscription_DELETE
parameters:
......@@ -782,7 +806,7 @@ paths:
post:
tags:
- appConfirmTermination
summary: ApplicationsConfirmTermination_POST
description: This method is used to confirm the application level termination of an application instance.
operationId: ApplicationsConfirmTermination_POST
parameters:
......@@ -866,7 +890,7 @@ paths:
post:
tags:
- appConfirmReady
summary: ApplicationsConfirmReady_POST
description: 'This method may be used by the MEC application instance to notify the MEC platform that it is up and running. '
operationId: ApplicationsConfirmReady_POST
parameters:
......@@ -950,7 +974,7 @@ paths:
get:
tags:
- timing
summary: TimingCaps_GET
description: This method retrieves the information of the platform's timing capabilities which corresponds to the timing capabilities query
operationId: TimingCaps_GET
parameters: []
......@@ -999,7 +1023,7 @@ paths:
get:
tags:
- timing
summary: TimingCurrentTime_GET
description: This method retrieves the information of the platform's current time which corresponds to the get platform time procedure
operationId: TimingCurrentTime_GET
parameters: []
......@@ -1328,13 +1352,6 @@ components:
instance:
type: string
description: A URI reference that identifies the specific occurrence of the problem
ReadyIndicationType:
title: ReadyIndicationType
const: READY
type: string
description: Indication about the MEC application instance.
examples:
- READY
Self:
title: Self
required:
......@@ -1649,16 +1666,14 @@ components:
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
security:
- {}
tags:
- name: appTrafficRules
- name: appDnsRules
- name: appSubscriptions
- name: appConfirmTermination
- name: appConfirmReady
- name: timing
- name: callbacks
externalDocs:
description: ETSI GS MEC011 Application Enablement API, V2.1.1
url: https://www.etsi.org/deliver/etsi_gs/MEC/001_099/011/02.01.01_60/gs_MEC011v020101p.pdf
......@@ -2,21 +2,34 @@ openapi: 3.1.0
info:
title: MEC Service Management API
description: The ETSI MEC ISG MEC011 MEC Service Management API described using OpenAPI
license:
name: BSD-3-Clause
url: 'https://forge.etsi.org/legal-matters'
contact:
email: cti_support@etsi.org
version: '2.1.1'
externalDocs:
description: ETSI GS MEC011 Application Enablement API, V2.1.1
url: https://www.etsi.org/deliver/etsi_gs/MEC/001_099/011/02.01.01_60/gs_MEC011v020101p.pdf
jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema
servers:
- url: http://127.0.0.1:8081/mec_service_mgmt/v1
variables: {}
- url: https://127.0.0.1:8081/mec_service_mgmt/v1
variables: {}
tags:
- name: appSubscriptions
- name: appServices
- name: services
- name: transports
- name: callbacks
paths:
/applications/{appInstanceId}/subscriptions:
get:
tags:
- appSubscriptions
summary: ApplicationsSubscriptions_GET
description: The GET method may be used to request information about all subscriptions for this requestor. Upon success, the response contains entity body with all the subscriptions for the requestor.
operationId: ApplicationsSubscriptions_GET
parameters:
......@@ -70,7 +83,7 @@ paths:
post:
tags:
- appSubscriptions
summary: ApplicationsSubscriptions_POST
description: The POST method may be used to create a new subscription. One example use case is to create a new subscription to the MEC service availability notifications. Upon success, the response contains entity body describing the created subscription.
operationId: ApplicationsSubscriptions_POST
parameters:
......@@ -88,6 +101,7 @@ paths:
schema:
$ref: '#/components/schemas/SerAvailabilityNotificationSubscription'
required: true
responses:
'201':
description: Entity body in the request contains a subscription to the MEC service availability notifications that is to be created.
......@@ -136,12 +150,36 @@ paths:
description: Empty schema
contentMediaType: text/plain
deprecated: false
callbacks:
ServiceAvailailityNotification:
'{$request.body#/callbackReference}':
post:
description: >-
'Represents the service availability information that
is used in the following cases
when the MEC platform announces the newly available
services to the authorized relevant MEC applications (e.g.
the applications that indicate the services as "optional"
or "required") that are subscribed to the corresponding
service availability notifications
when the MEC platform notifies the authorized relevant
applications that are subscribed to the corresponding
service availability notifications about the service availability changes.'
operationId: ServiceAvailabilityNotification_POST
tags:
- callbacks
requestBody:
$ref: '#/components/requestBodies/ServiceAvailabilityNotification'
responses:
'200':
description: Expected responses from callback consumer, if it accepts the callback
parameters: []
/applications/{appInstanceId}/subscriptions/{subscriptionId}:
get:
tags:
- appSubscriptions
summary: ApplicationsSubscription_GET
description: The GET method requests information about a subscription for this requestor. Upon success, the response contains entity body with the subscription for the requestor.
operationId: ApplicationsSubscription_GET
parameters:
......@@ -202,7 +240,7 @@ paths:
delete:
tags:
- appSubscriptions
summary: ApplicationsSubscription_DELETE
description: This method deletes a mecSrvMgmtSubscription. This method is typically used in "Unsubscribing from service availability event notifications" procedure.
operationId: ApplicationsSubscription_DELETE
parameters:
......@@ -250,7 +288,6 @@ paths:
get:
tags:
- appServices
summary: AppServices_GET
description: This method retrieves information about a list of mecService resources. This method is typically used in "service availability query" procedure
operationId: AppServices_GET
parameters:
......@@ -423,7 +460,6 @@ paths:
post:
tags:
- appServices
summary: AppServices_POST
description: This method is used to create a mecService resource. This method is typically used in "service availability update and new service registration" procedure
operationId: AppServices_POST
parameters:
......@@ -526,7 +562,6 @@ paths:
get:
tags:
- appServices
summary: AppServicesServiceId_GET
description: This method retrieves information about a mecService resource. This method is typically used in "service availability query" procedure
operationId: AppServicesServiceId_GET
parameters:
......@@ -615,7 +650,6 @@ paths:
put:
tags:
- appServices
summary: AppServicesServiceId_PUT
description: This method updates the information about a mecService resource
operationId: AppServicesServiceId_PUT
parameters:
......@@ -723,7 +757,6 @@ paths:
delete:
tags:
- appServices
summary: AppServicesServiceId_DELETE
description: 'This method deletes a mecService resource. This method is typically used in the service deregistration procedure. '
operationId: AppServicesServiceId_DELETE
parameters:
......@@ -771,7 +804,7 @@ paths:
get:
tags:
- services
summary: Services_GET
description: This method retrieves information about a list of mecService resources. This method is typically used in "service availability query" procedure
operationId: Services_GET
parameters:
......@@ -939,7 +972,7 @@ paths:
get:
tags:
- services
summary: ServicesServiceId_GET
description: This method retrieves information about a mecService resource. This method is typically used in "service availability query" procedure
operationId: ServicesServiceId_GET
parameters:
......@@ -1023,7 +1056,7 @@ paths:
get:
tags:
- transports
summary: Transports_GET
description: This method retrieves information about a list of available transports. This method is typically used by a service-producing application to discover transports provided by the MEC platform in the "transport information query" procedure
operationId: Transports_GET
parameters: []
......@@ -1294,11 +1327,8 @@ components:
_links:
$ref: '#/components/schemas/Self'
filteringCriteria:
type: 'null'
not:
type: object
description: Filtering criteria to match services for which events are requested to be reported. If absent, matches all services. All child attributes are combined with the logical "AND" operation.
description: This type represents a subscription to the notifications from the MEC platform regarding the availability of a MEC service or a list of MEC services.
$ref: '#/components/schemas/SerAvailabilityNotificationSubscription.FilteringCriteria'
SerAvailabilityNotificationSubscription.FilteringCriteria:
title: SerAvailabilityNotificationSubscription.FilteringCriteria
type: object
......@@ -1423,56 +1453,6 @@ components:
description: This enumeration defines the possible states of a service.
examples:
- ACTIVE
ServiceInfo.Post:
title: ServiceInfo.Post
required:
- serName
- version
- state
- serializer
type: object
properties:
serInstanceId:
type: string
description: Identifier of the service instance assigned by the MEC platform.
examples:
- ServiceInstance123
serName:
type: string
description: The name of the service. This is how the service producing MEC application identifies the service instance it produces.
examples:
- ExampleService
serCategory:
$ref: '#/components/schemas/CategoryRef'
version:
type: string
description: Service version
examples:
- ServiceVersion1
state:
$ref: '#/components/schemas/ServiceState'
transportId:
type: string
description: Identifier of the platform-provided transport to be used by the service. Valid identifiers may be obtained using the "Transport information query" procedure. May be present in POST requests to signal the use of a platform-provided transport for the service, and shall be absent otherwise.
examples:
- Rest1
transportInfo:
$ref: '#/components/schemas/TransportInfo'
serializer:
$ref: '#/components/schemas/SerializerType'
scopeOfLocality:
$ref: '#/components/schemas/LocalityType'
consumedLocalOnly:
type: boolean
description: Indicate whether the service can only be consumed by the MEC applications located in the same locality (as defined by scopeOfLocality) as this service instance.
examples:
- false
isLocal:
type: boolean
description: Indicate whether the service is located in the same locality (as defined by scopeOfLocality) as the consuming MEC application.
examples:
- true
description: This type represents the general information of a MEC service.
ServiceInfo:
title: ServiceInfo
required:
......@@ -1593,14 +1573,13 @@ components:
description: The enumeration TransportType represents types of transports
examples:
- REST_HTTP
requestBodies:
ServiceAvailabilityNotification:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceAvailabilityNotification'
required: true
security:
- {}
tags:
- name: appSubscriptions
- name: appServices
- name: services
- name: transports
- name: callbacks
externalDocs:
description: ETSI GS MEC011 Application Enablement API, V2.1.1
url: https://www.etsi.org/deliver/etsi_gs/MEC/001_099/011/02.01.01_60/gs_MEC011v020101p.pdf
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment