Commit 397276e7 authored by Mubeena Ishaq's avatar Mubeena Ishaq
Browse files

Update MEC011.md to v3.1.1

parent ccd4b4f1
Loading
Loading
Loading
Loading
+24 −27
Original line number Diff line number Diff line
# MEC011 - Application Enablement Service
> _New STF599_
> _New STF678_

MEC011 v2.2.1 is divided in two distinct APIs:
MEC011 v3.1.1 is divided in two distinct APIs:
- MEC Application Support API
- MEC Service Management API

@@ -22,44 +22,41 @@ The following tables list MEC Sandbox supported endpoints for each MEC011 API.
| Yes | `/applications/{appInstanceId}/subscriptions`   |     |
| Yes | `/applications/{appInstanceId}/confirm_ready`   |     |
| Yes | `/applications/{appInstanceId}/confirm_termination`  |     |
| Yes | `/registrations`    |   |
| Yes | `/registrations/{appInstanceId}` |   |
| No  | `/applications/{appInstanceId}/traffic_rules` | _Data traffic is not emulated from terminals in the Sandbox_ |
| No  | `/applications/{appInstanceId}/dns_rules` | _Edge DNS is not support in the Sandbox_ |
| Yes | `/timing/timing_caps`   | _Sandbox does not include a NTP server_  <br> _Data is emulated with timing reference with Monaco local time_  |
| Yes | `/timing/current_time`   | _Monaco local time_  |

_NOTE -- STF599 MEC011 Development Plan is scoped in 3 phases_
1. _Service Consuming MEC applications_
1. _Service Providing MEC applications_
1. _Adding the concept of "Scope of Locality" - multiple MEC hosts emulated within the MEC Sandbox, releaized with MEC011 Mp1_

_API Endpoints presented below will be implemented per the above phases, as required; by phase 2 all endpoints mentioned listed as supported shall be implemented for STF Milestone C._

------
## MEC011 v2.2.1 (published)
## MEC011 v3.1.1 (published)
References:
* https://www.etsi.org/deliver/etsi_gs/MEC/001_099/011/02.02.01_60/gs_mec011v020201p.pdf
* https://forge.etsi.org/rep/mec/gs011-app-enablement-api/-/tree/v2.2.1
* https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecAppSupportApi.yaml
* https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecServiceMgmtApi.yaml
* https://www.etsi.org/deliver/etsi_gs/MEC/001_099/011/03.01.01_60/gs_MEC011v030101p.pdf
* https://forge.etsi.org/rep/mec/gs011-app-enablement-api
* https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecAppSupportApi.yaml
* https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecServiceMgmtApi.yaml

### Service Management API Endpoints
| Endpoint | Sandbox Usage |Notes |
| ---------- | --------------------- | -------------- |
| [/services](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecServiceMgmtApi.yaml#/services)  | GET - Returns a list/individual MEC service(s) | Available MEC services in the Sandbox can be discovered <br><br> Includes: <ul><li> Built-in MEC Services:  MEC012, MEC013, MEC028 <li> User MEC Services:  services registered by user MEC apps |
| [/services/{serviceId}](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecServiceMgmtApi.yaml#/services)  | GET - Returns an individual MEC service | Available MEC services in the Sandbox can be discovered <br><br> Includes: <ul><li> Built-in MEC Services:  MEC012, MEC013, MEC028 <li> User MEC Services:  services registered by user MEC apps |
| [/applications/{appInstanceId}/services](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecServiceMgmtApi.yaml#/appServices) | GET - Returns a list of MEC services offered by an individual application instance <br><br> POST - Creates or registers a MEC service with the Sandbox's MEC System offered by an individual application instance | Available MEC services offered by a app instance can be discovered <br><br> MEC apps or services use POST to create their service resource and offer it for other MEC apps to discover |
| [/applications/{appInstanceId}/services/{serviceId}](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecServiceMgmtApi.yaml#/appServices) | GET - Returns an individual MEC service offered by an individual application instance <br><br> PUT - updates an existing service resource <br><br> DELETE removes an existing service resource | An available MEC service offered by a individual app instance can be discovered <br><br> MEC apps and services use PUT to modify their service resource <br><br>  MEC apps and services use DELETE when terminating or removing a registered service |
| [/applications/{appInstanceId}/subscriptions](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecServiceMgmtApi.yaml#/appSubscriptions) | GET - Returns a list of subscriptions for a MEC Application instance <br><br> POST - creates a subscription |  Built-in MEC services don't use this endpoint <br><br> User or user MEC Application can subscribe to MEC services management events (e.g. service availability notification) |
| [/applications/{appInstanceId}/subscriptions/{subscriptionId}](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecServiceMgmtApi.yaml#/appSubscriptions) | GET - Returns an individual subscription <br><br> DELETE - removes an existing subscription | Built-in MEC services don't use this endpoint <br><br> User or user MEC Application can delete subscription(s) |
| [/transports](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecServiceMgmtApi.yaml#/transports) | GET - Returns a list of supported MEC transports | Only HTTP supported by the MEC Sandbox |
| [/services](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecServiceMgmtApi.yaml#/services)  | GET - Returns a list/individual MEC service(s) | Available MEC services in the Sandbox can be discovered <br><br> Includes: <ul><li> Built-in MEC Services:  MEC012, MEC013, MEC028 <li> User MEC Services:  services registered by user MEC apps |
| [/services/{serviceId}](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecServiceMgmtApi.yaml#/services)  | GET - Returns an individual MEC service | Available MEC services in the Sandbox can be discovered <br><br> Includes: <ul><li> Built-in MEC Services:  MEC012, MEC013, MEC028 <li> User MEC Services:  services registered by user MEC apps |
| [/applications/{appInstanceId}/services](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecServiceMgmtApi.yaml#/appServices) | GET - Returns a list of MEC services offered by an individual application instance <br><br> POST - Creates or registers a MEC service with the Sandbox's MEC System offered by an individual application instance | Available MEC services offered by a app instance can be discovered <br><br> MEC apps or services use POST to create their service resource and offer it for other MEC apps to discover |
| [/applications/{appInstanceId}/services/{serviceId}](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecServiceMgmtApi.yaml#/appServices) | GET - Returns an individual MEC service offered by an individual application instance <br><br> PUT - updates an existing service resource <br><br> DELETE removes an existing service resource | An available MEC service offered by a individual app instance can be discovered <br><br> MEC apps and services use PUT to modify their service resource <br><br>  MEC apps and services use DELETE when terminating or removing a registered service |
| [/applications/{appInstanceId}/subscriptions](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecServiceMgmtApi.yaml#/appSubscriptions) | GET - Returns a list of subscriptions for a MEC Application instance <br><br> POST - creates a subscription |  Built-in MEC services don't use this endpoint <br><br> User or user MEC Application can subscribe to MEC services management events (e.g. service availability notification) |
| [/applications/{appInstanceId}/subscriptions/{subscriptionId}](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecServiceMgmtApi.yaml#/appSubscriptions) | GET - Returns an individual subscription <br><br> DELETE - removes an existing subscription | Built-in MEC services don't use this endpoint <br><br> User or user MEC Application can delete subscription(s) |
| [/transports](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecServiceMgmtApi.yaml#/transports) | GET - Returns a list of supported MEC transports | Only HTTP supported by the MEC Sandbox |
| `/<dynamic-liveness-uri>` | GET - Returns info about the liveness of a MEC service of an application instance <br><br> PATCH - Sends a "heartbeat" message related to a MEC service instance | MEC applications use this endpoint to report their liveness

### Application Support API Endpoints
| Endpoint | Sandbox Usage |Notes |
| ---------- | --------------------- | -------------- |
| [/applications/{appInstanceId}/subscriptions](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecAppSupportApi.yaml#/appSubscriptions) | GET - Returns a list of subscriptions <br><br> POST - creates a subscription |  Built-in MEC services don't use this endpoint <br><br> User or user MEC Application can subscribe to MEC application management events |
| [/applications/{appInstanceId}/subscriptions/{subscriptionId}](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecAppSupportApi.yaml#/appSubscriptions) | GET - Returns an individual subscription <br><br> DELETE - removes an existing subscription |  Built-in MEC services don't use this endpoint <br><br> User or user MEC Application can delete subscription(s) |
| [/applications/{appInstanceId}/confirm_ready](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecAppSupportApi.yaml#/appConfirmReady) | POST - confirms the application is ready |  MEC application report readiness
| [/applications/{appInstanceId}/confirm_termination](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecAppSupportApi.yaml#/appConfirmTermination) | POST - confirms the application is terminated | MEC applications reports termination |
| [/timing/timing_caps](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecAppSupportApi.yaml#/timing) | GET - returns information about timing capabililities | Mocked information returned since no NTP server is used
| [/timing/current_time](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/v2.2.1/MecAppSupportApi.yaml#/timing) | GET - returns current time | Local time in Monaco (MEC Sandbox VM is returned which corresponds with Monaco time)
| [/applications/{appInstanceId}/subscriptions](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecAppSupportApi.yaml#/appSubscriptions) | GET - Returns a list of subscriptions <br><br> POST - creates a subscription |  Built-in MEC services don't use this endpoint <br><br> User or user MEC Application can subscribe to MEC application management events |
| [/applications/{appInstanceId}/subscriptions/{subscriptionId}](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecAppSupportApi.yaml#/appSubscriptions) | GET - Returns an individual subscription <br><br> DELETE - removes an existing subscription |  Built-in MEC services don't use this endpoint <br><br> User or user MEC Application can delete subscription(s) |
| [/applications/{appInstanceId}/confirm_ready](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecAppSupportApi.yaml#/appConfirmReady) | POST - confirms the application is ready |  MEC application report readiness
| [/applications/{appInstanceId}/confirm_termination](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecAppSupportApi.yaml#/appConfirmTermination) | POST - confirms the application is terminated | MEC applications reports termination |
| [/registrations](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecAppSupportApi.yaml#/appRegistrations) | POST - Creates or registers MEC app instances with the Sandbox's MEC System 
| [/registrations/{appInstanceId}](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecAppSupportApi.yaml#/appRegistrations) | GET - Returns an individual registration <br><br> PUT - updates an existing registration <br><br> DELETE - removes an existing registration |  An available MEC app instance can be discovered <br><br> MEC apps use PUT to modify their app resource <br><br>  MEC apps use DELETE when terminating or removing a registered app |
| [/timing/timing_caps](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecAppSupportApi.yaml#/timing) | GET - returns information about timing capabililities | Mocked information returned since no NTP server is used
| [/timing/current_time](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/gitlab/mec/gs011-app-enablement-api/raw/master/MecAppSupportApi.yaml#/timing) | GET - returns current time | Local time in Monaco (MEC Sandbox VM is returned which corresponds with Monaco time)