Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Introduction

As part of this release EALTEdge Blueprint are releasing few API's which can be used by other Akraino Blueprints or Non Akraino Blueprints / Projects. The API's given are for the MM3 and MP1 Interface.

These APIs are in compliance with the API Standards defined by ETSI in Multi-access Edge Computing (MEC); MEC Management; Part 2: Application lifecycle, rules and requirements managementETSI GS MEC 010-2 V2.1.1 management. (https://www.etsi.org/deliver/etsi_gs/MEC/001_099/01002/02.01.01_60/gs_MEC01002v020101p.pdf)

In this release EALTEdge are exposing API's related to :- 

...

and Multi-access Edge Computing (MEC); Edge Platform Application Enablement (https://www.etsi.org/deliver/etsi_gs/MEC/001_099/011/02.01.01_60/gs_MEC011v020101p.pdf)


In this release EALTEdge are exposing API's related to :- 

  1. Application Life Cycle Management
  2. MEC Service Management.

API Definitions

Application

...

Life Cycle Management

...

Create Application Instance

1.API Name
Onboard
Create Application InstanceType : POST Interface : MM3
Description
This API is for MEO to onboard package, currently we just upload package directly to MEPM-APPLCM in the rest request, appPkgPath is of no use
The POST method is used to create an application instance resource, which refers to the procedure of "creating application instance resource operation"

Resource URI/ealtedge/mepm/app_
pkgm
lcm/v1/app_
packages/
instances
Request Body Parameters
Parameter NameCardinalityTypeDescription
R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]1

appDId

1StringApplication Description ID
appInstancename1StringApplication Instance Name

appInstanceDescriptor

1StringApplication Instance Descriptor
Complex
Response Codes201
: Created
Response Parameters
Parameter NameCardinalityTypeDescription
R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]0..NComplexIndicates a successful request. The response body shall contain a representation of the application package resource.

...

AppInstanceInfo1ComplexApplication Instance Info

Get Application Instance

2.API
Name Get Package
Name / CategoryApplication Instance Info Type : GETInterface : MM3
Description
This API is for MEO to onboard package, currently we just upload package directly to MEPM-APPLCM in the rest request, appPkgPath is of no use
The GET method retrieves the information of an individual application instance via reading an individual application instance resource, which is used by the procedure of "query application instance information operation"

Resource URI/ealtedge/mepm/app_
pkgm
lcm/v1/app_
packages
instances/{
{ID}
appInstanceId}
Request 
Request Body Parameters -
Not Applicable
None

Response Codes201
Response Parameters
Parameter NameCardinalityTypeDescription
R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]
/ Example
AppInstanceInfo1ComplexApplication Instance Info

Delete Application

...

Instance

3.API
Name Delete Package 
Name: Delete Application InstanceType : DELETEInterface : MM3
DescriptionThe DELETE method
realizes
deletes an individual application instance resource, which refers to the procedure of "delete application instance identifier operation"
of application package resource in MEO
Resource URI/ealtedge/mepm/app_
pkgm
lcm/v1/app_
packages
instances/{
{ID
appInstanceId}
}
Request Body Parameters -
Not Applicable
None

Response Codes204
. No Response body will be returned.

Application Life Cycle Management

Create Application Instance

Response Parameters - No Content

Instantiate Application

4
1
.API Name
Create
: Instantiate Application
Instance
Type : POST 

Interface : MM3

DescriptionThis
API is for MEO to onboard package, currently we just upload package directly to MEPM-APPLCM in the rest request, appPkgPath is of no use
resource represents the task of instantiating an application instance. The client can use this resource to instantiate an application instance. 
Resource URI/ealtedge/mepm/app_lcm/v1/app_instances/{appInstanceId}/instantiate 
Request Body Parameters
Parameter
Attribute NameCardinalityTypeDescription
appDId

#InstantiateAppRequest

1
StringApplication Description IDappInstancename1StringApplication Instance Name

appInstanceDescriptor

1StringApplication Instance DescriptorResponse Codes201Response ParametersParameter NameCardinalityTypeDescriptionR3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]1ComplexApplication Instance Info

Get Application Instance Information

...

Delete Application Instance

...

Instantiate Application

...

Interface : MM3

OSS→ MEO, MEO->MEPM

...

R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]

...

Terminate Application

...

Interface : MM3 (OSS→ MEO, MEO->MEPM)

...

R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]                     

...

ComplexRequest parameters of the "Instantiate Application" operation

Response Codes202 -  Accepted. The request was accepted for processing, but the processing has not yet been completed
Response Parameters - Response Body is Empty

Terminate Application

5.API Name: Terminate ApplicationType : POST 

Interface : MM3

DescriptionThis resource represents the task of terminating an application instance. The client can use this resource to terminate an application instance
Resource URI/ealtedge/mepm/app_lcm/v1/app_instances/{appInstanceId}/terminate
Request Body Parameters
NameCardinalityTypeDescription

#TerminateAppRequest                     

1Complex

Response Codes202 -  Accepted. The request was accepted for processing, but the processing has not yet been completed
Response Parameters - Response Body is Empty


MEC Service Management

Get Service List

1.API NameGet Service ListType : GETInterface : MP1
DescriptionTo get the List of all the Services Registered in MEP services

/ealtedge/mep

...

MEC Service Management

Get Service List

...

Get Service

...

Service Registration

3.API NameService RegistrationType : POSTInterface : MM1DescriptionThis method is used to create a mecService resource that is associated with the application instance. This method is typically used in "service availability update and new service registration" procedureResource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/servicesRequest Body ParametersParameter NameCardinalityTypeDescriptionServiceInfo1ComplexResponse Codes201 : CreatedResponse ParametersParameter NameCardinalityTypeDescriptionServiceInfo1ComplexUpon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource.4.API NameService RegistrationType : GETInterface : MM1DescriptionThis method retrieves information about a list of mecService resources that is associated with an application instance. This method is typically used in "service availability query" procedureResource URI/ealtedge
/mec_service_mgmt/v1
/applications/{appInstanceId}
/services
Request Body
Parameters – None
Parameters - No Parameters
Response Codes201
: Created
Response Parameters
Parameter NameCardinalityTypeDescription
ServiceInfo0..NComplexUpon success, a response body containing an array of the mecServices is returned.

Service Management Subscription





Get Service

2
5
.API NameGet Service
Management Subscription
ID InformationType : GETInterface :
MM1
MP1
Description
The GET method may be used to request information about all subscriptions for this requestor. Upon success, the response contains payload body with all the subscriptions for the requestor
Get Service Information of a specific service. Service Id is passed in the request URI
Resource URI/ealtedge/mep/mec_service_mgmt/v1/
applications/{appInstanceId}/subscriptions
services/serviceId
Request Body Parameters -
None
No Parameters
Response Codes
200 : OK
201
Response Parameters
Parameter NameCardinalityType
DescriptionSubscriptionLinkList1ComplexUpon success, a response body containing the list of links to the requested subscriptions is returned.

Service Subscription

Description




Service Registration

3
6
.API Name
New service Subscription
Service RegistrationType : POSTInterface :
MM1
MP1
Description
The POST
This method
may be
is 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 payload body describing the created subscription
mecService resource that is associated with the application instance. This method is typically used in "
Subscribing to
service availability
event notifications
update and new service registration" procedure
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/
subscriptions
services
Request Body Parameters
Parameter NameCardinalityTypeDescription
SerAvailabilityNotificatio nSubscription
ServiceInfo1Complex
Payload body in the request contains a subscription to the MEC service availability notifications that is to be created.

Response Codes201 : Created
Response Parameters
Parameter NameCardinalityTypeDescription
SerAvailabilityNotificatio nSubscription
ServiceInfo1ComplexUpon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created
subscription
resource.

Individual Service Management Subscription



7
4.API Name
individual mecSrvMgmtSubscription
Service Availability InformationType : GETInterface :
MM1
MP1
Description
The GET
This method
requests
retrieves information about a
subscription for this requestor. Upon success, the response contains payload body with the subscription for the requestor
list of MEC Service resources that is associated with an application instance. This method is typically used in "service availability query" procedure
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/
subscriptions/{subscriptionId}
services
Request Body
Parameters -
Parameters – None
Response Codes201 : Created
Response Parameters
Parameter NameCardinalityTypeDescription
SerAvailabilityNotification Subscription1
ServiceInfo0..NComplexUpon success, a response body containing an array of the
requested subscription
mecServices is returned.

...

Service Management

...

Subscription

8
5.API Name
Delete mecSrvMgmtSubscription
Fetch all Subscription InformationType :
DELETE
GETInterface :
MM1
MP1
Description
.This method is typically used in "Unsubscribing from event notifications" procedure
The GET method may be used to request information about all subscriptions for this requester. Upon success, the response contains payload body with all the subscriptions for the requester
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/subscriptions
/{subscriptionId}
Request Body Parameters - None
Response Codes
204
200 :
No content
OK
Response Parameters
- None

Get Service Information

Parameter NameCardinalityTypeDescription
SubscriptionLinkList1ComplexUpon success, a response body containing the list of links to the requested subscriptions is returned.

Service Subscription

6
9
.API Name
Get Service Information
New service SubscriptionType :
GET
POSTInterface :
MM1
MP1
Description
This method retrieves information about a mecService resource that is associated with an application instance
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 payload body describing the created subscription. This method is typically used in "Subscribing to service availability
query
event notifications" procedure
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/
services/{serviceId}
subscriptions
Request Body Parameters
- None
Parameter NameCardinalityTypeDescription
SerAvailabilityNotificatio nSubscription1ComplexPayload body in the request contains a subscription to the MEC service availability notifications that is to be created.
Response Codes
200
201 :
OK
Created
Response Parameters
Parameter NameCardinalityTypeDescription
ServiceInfo
SerAvailabilityNotificatio nSubscription1Complex
It is used to indicate nonspecific success. The response body contains a representation of the resource.

Update Service Information

Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created subscription resource.

Individual Service Management Subscription

7
10
.API Name
Update Service
Single Subscription InformationType : GETInterface :
MM1
MP1
Description
This method updates the information about a mecService resource that is associated with the application instance
The GET method requests information about a subscription for this Requestor. Upon success, the response contains payload body with the subscription for the Requestor
Resource URI/ealtedge/mec_service_mgmt/v1/applications
/{appInstanceId}/services/{serviceId}Request Body Parameters - NoneParameter NameCardinalityTypeDescriptionServiceInfo1ComplexIt is used to indicate nonspecific success. The response body contains a representation of the resource.Response
/{appInstanceId}/subscriptions/{subscriptionId}
Request Body Parameters - None
Response Codes
200: OK
201
Response Parameters
Parameter NameCardinalityTypeDescription
ServiceInfo
SerAvailabilityNotification Subscription1ComplexUpon success, a response body containing
data type describing the updated ServiceInfo
the requested subscription is returned.

Individual Service

...

Management Deletion

11
8.API Name
Service Deregistration
Delete Individual SubscriptionType : DELETEInterface :
MM1
MP1
Description
This method deletes a mecService resource.
This method is typically used in
the service deregistration
"Unsubscribing from event notifications" procedure
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/
services
subscriptions/{
serviceId
subscriptionId}
Request Body Parameters - None
Response Codes204 : No
Content
content
Response Parameters
Parameter NameCardinalityTypeDescription

Types

...

AppPkgInfo Parameters

...

Application Provider.

Ex : Huawei

...

CreateAppPkg Parameters

- None

Get Service Information

9.API NameGet Service InformationType : GETInterface : MP1
DescriptionThis method retrieves information about a mecService resource that is associated with an application instance. This method is typically used in "service availability query"
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/services/{serviceId}
Request Body Parameters - None
Response Codes200: OK
Response Parameters
Parameter NameCardinalityTypeDescription
ServiceInfo1ComplexIt is used to indicate nonspecific success. The response body contains a representation of the resource.

Update Service Information

10.API NameUpdate Service InformationType : GETInterface : MP1
DescriptionThis method updates the information about a mecService resource that is associated with the application instance
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/services/{serviceId}
Request Body Parameters - None
Parameter NameCardinalityTypeDescription
ServiceInfo1ComplexIt is used to indicate nonspecific success. The response body contains a representation of the resource.
Response Body Parameters - None
Response Codes200: OK
Parameter NameCardinalityTypeDescription
ServiceInfo1ComplexUpon success, a response body containing data type describing the updated ServiceInfo is returned.

Service Deregistration Information

11.API NameService DeregistrationType : DELETEInterface : MP1
DescriptionThis method deletes a MEC Service resource. This method is typically used in the service deregistration procedure
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/services/{serviceId}
Request Body Parameters - None
Response Codes204 : No Content
Response Parameters
Parameter NameCardinalityTypeDescription




Types

...

appProvider

...

ApplnstanceInfo

Anchor
ApplnstanceInfo
ApplnstanceInfo

ApplnstanceInfo Parameters

Attribute NameCardinalityData TypeDescription
ID1String

Application Instance Description

Ex : ID1

AppInstanceName0..1StringApplication Descriptor ID
AppInstanceDescription0..1String

Application Provider

Ex: Huawei

AppDID1String

Application Name 

Ex : Face_Recognition.

AppProvider1String
AppName1StringDeploy Type ; Ex : Helm
AppSoftVersion1String

Application Package ID

Ex: b1bb0ce7-ebca-4fa7-95ed-4840d70a1177

AppDVersion1String

Instantiation State.

Ex : NOT_INSTANTIATED

InstantiateAppRequest
Anchor
InstantiateAppRequest
InstantiateAppRequest

InstantiateAppRequest Parameters
Attribute NameCardinalityData TypeDescription
selectedMECHostInfo1..NMECHostInformation

Describes the information of selected host for the application instance

TerminateAppRequest
Anchor
TerminateAppRequest
TerminateAppRequest

TerminateAppRequest Parameters

Attribute NameCardinalityData TypeDescription
terminationType1Enum

Indicates whether forceful or graceful termination is
requested. See note.
• FORCEFUL: it will shut down the application
instance and release the resources immediately
after accepting the request. See note.
• GRACEFUL: it will first arrange to take the
application instance out of service after
accepting the request. Once the operation of
taking the application instance out of service
finishes or once the timer value specified in the
"gracefulTerminationTimeout" attribute expires,
it will shut down the application instance and
release the resources.

gracefulTerminationTimeout0..1IntegerThis attribute is only applicable in case of graceful
termination. It defines the time to wait for the
application instance to be taken out of service before
shutting down the application and releasing the
resources.
The unit is seconds.
If not given and the "terminationType" attribute is set to
"GRACEFUL", it is expected to wait for the successful
taking out of service of the application, no matter how
long it takes, before shutting down the application and
releasing the resources.

ServiceInfo
Anchor
ServiceInfo
ServiceInfo

ServiceInfo Parameters

Attribute NameCardinalityData TypeDescription
serInstanceId0..1SerInstanceIdIdentifier of the service instance assigned by the MEPM/MEC platform. For the uniqueness of the identifier across the MEC system, UUID format [i.7] is recommended. Shall be absent in POST requests, and present otherwise.
serName1serNameThe name of the service. This is how the service producing MEC application identifies the service instance it produces.
serCategory0..1CategoryRefA Category reference. (The category resource is used to group product offerings, service and resource candidates in logical containers. Categories may contain other categories and/or product offerings, resource or service candidates.) (see note 1) For the serCategory, the example values include: 1. "RNI" 2. "Location" 3. "Bandwidth Management".
version1StringVersion of the Service
state1ServiceStateContains the service state.
transportId0..1StringIdentifier 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.
transportInfo0..1TransportInfoInformation regarding the transport used by the service. May be present in POST requests to signal the use of an application-provided transport for the service, and shall be present otherwise.
serializer1Serializer TypeIndicate the supported serialization format of the service
scopeOfLocality0..1LocalityTypeThe scope of locality as expressed by "consumedLocalOnly" and "isLocal". If absent, defaults to MEC_HOST
consumedLocalOnly0..1BooleanIndicate whether the service can only be consumed by the MEC applications located in the same locality (as defined by scopeOfLocality) as this service instance (TRUE) or not (FALSE). Default to TRUE if absent.
isLocal0..1BooleanIndicate whether the service is located in the same locality (as defined by scopeOfLocality) as the consuming MEC application (TRUE) or not (FALSE). Default to TRUE if absent.

TransportInfo
Anchor
TransportInfo
TransportInfo

TransportInfo Parameters

Attribute NameCardinalityData TypeDescription
id1stringThe identifier of this transport.
name1stringThe name of this transport. .
description0..1stringHuman-readable description of this transport.
type1
R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]
#TransportTypeType of the transport
protocol1stringThe name of the protocol used. Shall be set to "HTTP" for a REST API
version1StringThe version of the protocol used.
endpoint1EndPointInfoInformation about the endpoint to access the transport.
security1SecurityInfoIndicate the supported serialization format of the service
implSpecificInfo0..1Not SpecifiedAdditional implementation specific details of the transport.

Enumeration

TransportType
Anchor
TransportType
TransportType

TransportType Parameters

Enumeration ValueDescription
REST_HTTPRESTful API using HTTP (as defined in IETF RFC 7230 [11] and related specifications).
MB_TOPIC_BASEDTopic-based message bus which routes messages to receivers based on subscriptions, if a pattern passed on subscription matches the topic of the message. EXAMPLE: MQTT (see [i.4])
MB_ROUTINGRouting-based message bus which routes messages to receivers based on subscriptions, if a key passed on subscription is equal to the key of the message.
MB_PUBSUBPublish-subscribe based message bus which distributes messages to all subscribers.
RPCRemote procedure call. EXAMPLE: GRPC
RPC_STREAMINGRemote procedure call supporting streams of requests and responses. EXAMPLE: GRPC
WEBSOCKETWebsockets as defined in IETF RFC 6455 [12].