Introduction
As part of this release, 5G MEC System Blueprint uses some APIs in conjunction with OpenNESS (Open Network Edge Services Software).
In this releaseĀ 5G MEC System are exposing API's related to :
- Application Life Cycle Management
- MEC Service Management.
API Definitions
Application Life Cycle Management
These API provides an abstraction layer for an operations admin, enabling them to configure and manage the lifecycle of applications.
Get a list of applications
...
3.API Name | Get an application | Type | GET |
Description | The GET method is used to get an application from the controller | ||
Resource URI | /apps/{app_id} | ||
Parameters | |||
Parameter Name | Cardinality | Type | Description |
app_id | 1 | string | The ID of the application |
Request Body-None | |||
Response Codes | 200 | ||
Response Parameters | |||
Parameter Name | Cardinality | Type | Description |
id | 1 | string | The ID of the application |
type | 1 | string | Enum:[container,vm] |
name | 1 | string | The name of the application |
version | 1 | string | The version of the application |
vendor | 1 | string | The vendor of the application |
description | 1 | string | Description of the application |
cores | 1 | integer | The number of cores to allocate to the application |
memory | 1 | integer | The memory in MB to allocate to the application |
ports | 1 | complex | A list of port/protocol combinations to expose |
source | 1 | string | Source URI of the app |
Response Codes | 404 | ||
Response Parameters | |||
App ID not found |
Update an existing application
...
10.API Name | Delete an application on a node | Type | DELETE |
Description | The DELETE method is used to delete an application on a node from the controller | ||
Resource URI | /nodes/{node_id}/apps/{app_id} | ||
Parameters | |||
Parameter Name | Cardinality | Type | Description |
node_id | 1 | string | The ID of the node |
app_id | 1 | string | The ID of the application |
Request Body-None | |||
Response Codes | 204 | ||
Deleted the application for the specified node and application | |||
Response Codes | 404 | ||
Node ID or app ID not found |
Connection Establishment
1.API Name | Connection Establishment | Type | GET |
Description | The GET method is used to connect to a secure WebSocket to receive streaming notifications | ||
Resource URI | /notifications | ||
Parameters-None | |||
Request Body-None | |||
Response Codes | 101 | ||
Upgrade to Websockets | |||
Response Codes | 403 | ||
Unauthorized |
Publish Notification
2.API Name | Publish Notification | Type | POST |
Description | The POST method is used to push a single notification to all subscribed application | ||
Resource URI | /notifications | ||
Parameters | |||
Parameter Name | Cardinality | Type | Description |
body | 1 | json | The information of the notification |
Request Body-None | |||
Response Codes | 202 | ||
Notification was received and will be forwarded | |||
Response Codes | 403 | ||
Unauthorized |
Service Discovery
3.API Name | Service Discovery | Type | GET |
Description | The GET method is used to list all currently activated producers on the local appliance and get their status, subscribable notification types, and address | ||
Resource URI | /services | ||
Parameters-None | |||
Request Body-None | |||
Response Codes | 200 | ||
Parameter Name | Cardinality | Type | Description |
service | 1 | json | The information of the service |
Response Codes | 403 | ||
Unauthorized |
Service Deactivation
4.API Name | Service Deactivation | Type | DELETE |
Description | The DELETE method is used to unregister a producer for all of its notification types in the local MEC environment | ||
Resource URI | /services | ||
Parameters-None | |||
Request Body-None | |||
Response Codes | 204 | ||
Service registration removed | |||
Response Codes | 403 | ||
Unauthorized |
Service Activation
5.API Name | Service Activation | Type | POST |
Description | The POST method is used to register a producer to begin publishing notifications in the local MEC environment | ||
Resource URI | /services | ||
Parameters | |||
Parameter Name | Cardinality | Type | Description |
body | 1 | json | The information of the service |
Request Body-None | |||
Response Codes | 200 | ||
OK | |||
Response Codes | 400 | ||
Invalid content, a required property is missing | |||
Response Codes | 403 | ||
Unauthorized |
List Subscriptions
6.API Name | List Subscriptions | Type | GET |
Description | The GET method is used to list all producers currently subscribed to and their registered notification types | ||
Resource URI | /subscriptions | ||
Parameters-None | |||
Request Body-None | |||
Response Codes | 200 | ||
Parameter Name | Cardinality | Type | Description |
Subscription | 1 | json | The information of the subscription |
Response Codes | 400 | ||
Invalid content, a required property is missing | |||
Response Codes | 403 | ||
Unauthorized |
Mass Unsubscription
7.API Name | Mass Unsubscription | Type | DELETE |
Description | The DELETE method is used to unsubscribe from all producers except the platform defaults | ||
Resource URI | /subscriptions | ||
Parameters-None | |||
Request Body-None | |||
Response Codes | 204 | ||
Non-default subscriptions removed | |||
Response Codes | 403 | ||
Unauthorized |
Service Unsubscription
8.API Name | Service Unsubscription | Type | DELETE |
Description | The DELETE method is used to unsubscribe from a particular or entire namespace of producers | ||
Resource URI | /subscriptions/{urn.namespace} | ||
Parameters | |||
Parameter Name | Cardinality | Type | Description |
urn.namespace | 1 | string | The non-unique portion of the URN that identifies the class excluding a trailing separator |
urn.id | 1 | string | The per-namespace unique portion of the URN that when appended to the namespace with a separator forms the complete URN |
Request Body-None | |||
Response Codes | 204 | ||
Subscription removed | |||
Response Codes | 403 | ||
Unauthorized |
Service Subscription
9.API Name | Service Subscription | Type | POST |
Description | The POST method is used to subscribe to a set of notification types, optionally specifying the exact producer by URN | ||
Resource URI | /subscriptions/{urn.namespace} | ||
Parameters | |||
Parameter Name | Cardinality | Type | Description |
urn.namespace | 1 | string | The non-unique portion of the URN that identifies the class excluding a trailing separator |
body | 1 | json | The list of all notification types registered by all producers in this namespace |
Request Body-None | |||
Response Codes | 204 | ||
Subscription added | |||
Response Codes | 403 | ||
Unauthorized |
Service Unsubscription
10.API Name | Service Unsubscription | Type | DELETE |
Description | The DELETE method is used to unsubscribe from a particular or entire namespace of producers | ||
Resource URI | /subscriptions/{urn.namespace}/{urn.id} | ||
Parameters | |||
Parameter Name | Cardinality | Type | Description |
urn.namespace | 1 | string | The non-unique portion of the URN that identifies the class excluding a trailing separator |
urn.id | 1 | string | The per-namespace unique portion of the URN that when appended to the namespace with a separator forms the complete URN. |
Request Body-None | |||
Response Codes | 204 | ||
Subscription removed | |||
Response Codes | 403 | ||
Unauthorized |
Service Subscription
11.API Name | Service Subscription | Type | POST |
Description | The POST method is used to subscribe to a set of notification types, optionally specifying the exact producer by URN | ||
Resource URI | /subscriptions/{urn.namespace}/{urn.id} | ||
Parameters | |||
Parameter Name | Cardinality | Type | Description |
urn.namespace | 1 | string | The non-unique portion of the URN that identifies the class excluding a trailing separator |
urn.id | 1 | string | The per-namespace unique portion of the URN that when appended to the namespace with a separator forms the complete URN. |
body | 1 | json | The list of all notification types registered by all producers in this namespace |
Request Body-None | |||
Response Codes | 201 | ||
Subscription added | |||
Response Codes | 403 | ||
Unauthorized |