Commit 967fdf70 authored by Mike Roy's avatar Mike Roy
Browse files

Create MEC011.md

parent fb6776f6
Loading
Loading
Loading
Loading
+60 −0
Original line number Diff line number Diff line
# MEC011 - Edge Platform Application Enablement
MEC011 v2.2.1 is divided in two distinct APIs:
- MEC Application Support API
- MEC Service Management API

The following tables list supported Endpoints for each API.

### Service Management API
|Supported | Endpoint |  Notes:   |
| --------| -------- |  -------- |
| Yes | `/services`  |     |
| Yes | `/applications/{appInstanceId}/services`   |     |
| Yes | `/applications/{appInstanceId}/subscriptions`   |     |
| Yes | `/transports` | |
| Yes | _Liveness URI is dynamic_ | |

### Application Support API
|Supported | Endpoint |  Notes:   |
| --------| -------- |  -------- |
| Yes | `/applications/{appInstanceId}/subscriptions`   |     |
| Yes | `/applications/{appInstanceId}/confirm_ready`   |     |
| Yes | `/applications/{appInstanceId}/confirm_termination`  |     |
| No  | `/applications/{appInstanceId}/traffic_rules` | _No traffic through platform_ |
| No  | `/applications/{appInstanceId}/dns_rules` | _No DNS support_ |
| Yes | `/timing/timing_caps`   | _Mocked data (requires NTP server)_  |
| Yes | `/timing/current_time`   |     |

>_NOTE: <br>
STF599 MEC011 Development Plan is scoped in 3 phases_
1. _Focus on Service Consuming MEC applications_
1. _Focus on Service Providing MEC applications_
1. _Focus on adding the concept of "Scope of Locality_
<br><br>
_API Endpoints presented below will be gradually implemented as required; by Phase 2 all endpoints mentioned below shall be implemented._

------
## MEC011 v2.2.1 (published)
References:
* https://www.etsi.org/deliver/etsi_gs/MEC/001_099/011/02.02.01_60/gs_MEC011v020201p.pdf

### Service Management API Endpoints
| Endpoint | Sandbox Usage |Notes |
| ---------- | --------------------- | -------------- |
| `/services` <br> `/services/{serviceId}`  | GET - Returns a list/individual MEC service(s) | Existing MEC services can be discovered |
| `/applications/{appInstanceId}/services` | GET - Returns a list of MEC services for an individual application <br><br> POST - Creates a MEC service for an individual application | Existing MEC services can be discovered <br><br> Existing MEC services use POST to create their service resource |
| `/applications/{appInstanceId}/services/{serviceId}` | GET - Returns an individual MEC services for an individual application <br><br> PUT - updates an existing service resource <br><br> DELETE removes an existing service resource| Existing MEC services can be discovered <br><br> Existing MEC services use PUT to modify their service resource <br><br> Existing MEC services use DELETE when terminating |
| `/applications/{appInstanceId}/subscriptions` | GET - Returns a list of subscriptions <br><br> POST - creates a subscription |  Existing MEC services don't use this endpoint <br><br> User can subscribe to MEC services management events |
| `/applications/{appInstanceId}/subscriptions/{subscriptionId}` | GET - Returns an individual subscription <br><br> DELETE - removes an existing subscription | Existing MEC services don't use this endpoint <br><br> User can delete subscription(s) |
| `/transports` | GET - Returns a list of supported MEC transports | Only HTTP supported |
| _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 | Existing MEC applications use this endpoint to report their liveness

### Application Support API Endpoints
| Endpoint | Sandbox Usage |Notes |
| ---------- | --------------------- | -------------- |
| `/applications/{appInstanceId}/subscriptions` | GET - Returns a list of subscriptions <br><br> POST - creates a subscription |  Existing MEC services don't use this endpoint <br><br> User can subscribe to MEC application management events |
| `/applications/{appInstanceId}/subscriptions/{subscriptionId}` | GET - Returns an individual subscription <br><br> DELETE - removes an existing subscription | Existing MEC services don't use this endpoint <br><br> User can delete subscription(s) |
| `/applications/{appInstanceId}/confirm_ready` | POST - confirms the application is ready | Existing MEC application report readiness
| `/applications/{appInstanceId}/confirm_termination` | POST - confirms the application is terminated | Existing MEC applications reports termination |
| `/timing/timing_caps` | GET - returns information about timing caps | Mocked information returned since no NTP server is used
| `/timing/current_time` | GET - returns current time | Time of the MEC Sandbox VM is returned