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 are in compliance with the API Standards defined in Multi-access Edge Computing (MEC); MEC Management; Part 2: Application lifecycle, rules and requirements managementETSI GS MEC 010-2 V2.1.1 (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 :- 

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

API Definitions

Application Package Management

Onboard Application

...

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 are in compliance with the API Standards defined in Multi-access Edge Computing (MEC); MEC Management; Part 2: Application lifecycle, rules and requirements managementETSI GS MEC 010-2 V2.1.1 (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 :- 

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

API Definitions

Application Package Management

Onboard Application

1.API NameOnboard ApplicationType : 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 URI/ealtedge/mepm/app_pkgm/v1/app_packages/
Request Parameters
NameCardinalityTypeDescription
R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]1Complex
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.

Get Package Info

2.API Name Get Package Info Type : GETInterface : 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 URI/ealtedge/mepm/app_pkgm/v1/app_packages/{{ID}}
Request  Body Parameters - Not Applicable

Response Codes201
Response Parameters
Parameter NameCardinalityTypeDescription
R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]1Complex

Delete Application Package

3.API Name Delete Package Type : DELETEInterface : MM3
DescriptionDELETE method realizes the procedure of "delete operation" of application package resource in MEO

Resource URI/ealtedge/mepm/app_pkgm/v1/app_packages/{{ID}}
Request Body Parameters - Not Applicable

Response Codes

204. No Response body will be returned.

Application Life Cycle Management

Create Application Instance

1.API NameCreate Application InstanceType : 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 URI/ealtedge/mepm/app_lcm/v1/app_instances
Request Body Parameters
Parameter NameCardinalityTypeDescription

appDId

1StringApplication Description ID
appInstancename1StringApplication Instance Name

appInstanceDescriptor

1StringApplication Instance Descriptor
Response Codes201
Response Parameters
Parameter NameCardinalityTypeDescription
R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]1ComplexApplication Instance Info

Get Application Instance Information

2.API Name / CategoryApplication Instance Info Type : GETInterface : 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 URI/ealtedge/mepm/app_lcm/v1/app_instances/{appInstanceId}
Request Body Parameters - None

Response Codes201
Response Parameters
Parameter NameCardinalityTypeDescription / Example
AppInstanceInfo1ComplexApplication Instance Info

Delete Application Instance

3.API Name: Delete Application InstanceType : DELETEInterface : MM3
DescriptionThe DELETE method deletes an individual application instance resource, which refers to the procedure of "delete application instance identifier operation"
Resource URI/ealtedge/mepm/app_lcm/v1/app_instances/{appInstanceId}
Request Body Parameters - None

Response Codes204
Response Parameters - No Content

Instantiate Application

4.API Name: Instantiate ApplicationType : POST 

Interface : MM3

OSS→ MEO, MEO->MEPM

DescriptionTo instantiate the application instance
Resource URI/ealtedge/mepm/app_lcm/v1/app_instances/{appInstanceId}/instantiate 
Request Body Parameters
Attribute NameCardinalityTypeDescription

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

1ComplexRequest 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 (OSS→ MEO, MEO->MEPM)

DescriptionTo instantiate the application instance
Resource URI/ealtedge/mepm/app_lcm/v1/app_instances/{appInstanceId}/terminate
Request Body Parameters
NameCardinalityTypeDescription

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

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 : MM1
DescriptionTo get the List of all the Services Registered in MEP services

/ealtedge/mep/mec_service_mgmt/v1/services
Request Body Parameters - No Parameters
Response Codes201
Response Parameters
Parameter NameCardinalityTypeDescription




Get Service

2.API Name
Type : GETInterface : MM1
DescriptionGet Service Information of a specific service. Service Id is passed in the request URI
Resource URI/ealtedge/mep/mec_service_mgmt/v1/services/serviceId
Request Body Parameters - No Parameters
Response Codes201
Response Parameters
Parameter NameCardinalityTypeDescription




Service Registration

3.API NameService RegistrationType : POSTInterface : MM1
DescriptionThis 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" procedure
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/services
Request Body Parameters
Parameter NameCardinalityTypeDescription
ServiceInfo1Complex
Response Codes201 : Created
Response Parameters
Parameter NameCardinalityTypeDescription
ServiceInfo1ComplexUpon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource.



4.API NameService RegistrationType : GETInterface : MM1
DescriptionThis 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" procedure
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/services
Request Body Parameters – None
Response Codes201 : Created
Response Parameters
Parameter NameCardinalityTypeDescription
ServiceInfo0..NComplexUpon success, a response body containing an array of the mecServices is returned.

Service Management Subscription

5.API NameService Management SubscriptionType : GETInterface : MM1
DescriptionThe 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
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/subscriptions
Request Body Parameters - None
Response Codes200 : OK
Response Parameters
Parameter NameCardinalityTypeDescription
SubscriptionLinkList1ComplexUpon success, a response body containing the list of links to the requested subscriptions is returned.

Service Subscription

6.API NameNew service SubscriptionType : POSTInterface : MM1
DescriptionThe 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 event notifications" procedure
Resource URI/ealtedge/mec_service_mgmt/v1/applications/{appInstanceId}/subscriptions
Request Body Parameters
Parameter NameCardinalityTypeDescription
SerAvailabilityNotificatio nSubscription1ComplexPayload 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
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.

Get Package Info

Get Package Info 
2.API Name SerAvailabilityNotificatio nSubscription1ComplexUpon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created subscription resource.

Individual Service Management Subscription

3This 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
7.API Nameindividual mecSrvMgmtSubscriptionType : GETInterface : MM3DescriptionMM1
DescriptionThe 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/mepm/app_pkgmmec_service_mgmt/v1/app_packagesapplications/{{ID}appInstanceId}/subscriptions/{subscriptionId}
Request  Request Body Parameters - Not ApplicableNone
Response Codes201
Response Parameters
Parameter NameCardinalityTypeDescription
R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]SerAvailabilityNotification Subscription1Complex

Delete Application Package

Upon success, a response body containing the requested subscription is returned.

Individual Service Management Deletion

8.API
Name 
NameDelete
Package 
mecSrvMgmtSubscriptionType : DELETEInterface :
MM3
MM1
Description
DELETE method realizes the procedure of "delete operation" of application package resource in MEO
.This method is typically used in "Unsubscribing from event notifications" procedure
Resource URI/ealtedge/
mepm/app_pkgm
mec_service_mgmt/v1/
app_packages
applications/{appInstanceId}/subscriptions/{
ID
subscriptionId}
}
Request Body Parameters -
Not Applicable
None
Response Codes204
. No Response body will be returned.

Application Life Cycle Management

Create Application Instance

1
: No content
Response Parameters - None

Get Service Information

9.API Name
Create Application Instance
Get Service InformationType :
POST 
GETInterface :
MM3
MM1
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
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/
mepm/app_lcm/v1/app_instancesRequest Body ParametersParameter NameCardinalityTypeDescription

appDId

1StringApplication Description IDappInstancename1StringApplication Instance Name

appInstanceDescriptor

1StringApplication Instance DescriptorResponse Codes201
mec_service_mgmt/v1/applications/{appInstanceId}/services/{serviceId}
Request Body Parameters - None
Response Codes200: OK
Response Parameters
Parameter NameCardinalityTypeDescription
R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]1ComplexApplication Instance Info

Get Application Instance Information

2.API Name / CategoryApplication Instance Info Type : GETInterface : MM3DescriptionThis 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 URI/ealtedge/mepm/app_lcm/v1/app_instances/{appInstanceId}Request
ServiceInfo1ComplexIt is used to indicate nonspecific success. The response body contains a representation of the resource.

Update Service Information

Response Parameters
10.API NameUpdate Service InformationType : GETInterface : MM1
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 Codes
201
200: OK
Parameter NameCardinalityTypeDescription
/ Example
AppInstanceInfo
ServiceInfo1Complex
Application Instance Info

Delete Application Instance

3
Upon success, a response body containing data type describing the updated ServiceInfo is returned.

Service Deregistration Information

11.API Name
: Delete Application Instance
Service DeregistrationType : DELETEInterface :
MM3
MM1
Description
The DELETE
This method deletes
an individual application instance resource, which refers to the procedure of "delete application instance identifier operation"
a mecService resource. This method is typically used in the service deregistration procedure
Resource URI/ealtedge/
mepm/app_lcm/v1/app_instances/{appInstanceId
mec_service_mgmt/v1/applications/{appInstanceId}/services/{serviceId}
Request Body Parameters - None
Response Codes204 : No Content
Response Parameters
- No Content

Instantiate Application

4.API Name: Instantiate ApplicationType : POST 

Interface : MM3

OSS→ MEO, MEO->MEPM

DescriptionTo instantiate the application instanceResource URI/ealtedge/mepm/app_lcm/v1/app_instances/{appInstanceId}/instantiate Request Body Parameters
Parameter NameCardinalityTypeDescription




Types

AppPkgInfo
Anchor
AppPkgInfo
AppPkgInfo

MEC Service Management

Service Discovery

...

Service Discovery

...

Service Discovery

...

Service Discovery

...

Service Discovery

...

Service Discovery

...

Types

...

AppPkgInfo Parameters

Attribute NameCardinalityData Type
Description

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

1ComplexRequest parameters of the "Instantiate Application" operationResponse Codes202 -  Accepted. The request was accepted for processing, but the processing has not yet been completedResponse Parameters - Response Body is Empty

Terminate Application

...

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

...

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

...

AppPkgInfo Parameters
Description  
ID1StringID
AppDID1StringApplication Development ID
AppProvider0..1String

Application Provider.

Ex : Huawei

AppName1StringApplication Name. Ex : Face Recognition                                     
AppSoftwareVersion1StringApplication Software Version. Ex : 1.0
AppDVersion1StringApplication Deployment Version. Ex: 1.0
OnboardingState1StringOn Boarding State. Ex : ONBOARDED
DeployType1StringDeploy Type ; Ex : Helm
AppPackage1StringApplication Package

CreateAppPkg
Anchor
CreateAppPkg
CreateAppPkg

CreateAppPkg Parameters

Attribute NameCardinalityData TypeDescription
appPkgName1StringApplication Package Name  to be onboarded
appPkgVersion1StringApplication Package Version  to be onboarded

appProvider

0..1StringThe provider's name of the application package to be onboarded.
checksumchecksumchecksumChecksum of the onboarded application package
userDefinedData0..1KeyValuePairUser defined data for the application package.
appPkgPath1StringAddress information of the application package Currently not in use

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 Type
Description  
Description
ID
serInstanceId0..1
StringIDAppDID1StringApplication Development IDAppProvider0..1String

Application Provider.

Ex : Huawei

AppName1StringApplication Name. Ex : Face Recognition                                     AppSoftwareVersion1StringApplication Software Version. Ex : 1.0AppDVersion1StringApplication Deployment Version. Ex: 1.0OnboardingState1StringOn Boarding State. Ex : ONBOARDEDDeployType1StringDeploy Type ; Ex : HelmAppPackage1StringApplication Package

...

CreateAppPkg Parameters

Attribute NameCardinalityData TypeDescriptionappPkgName1StringApplication Package Name  to be onboardedappPkgVersion1StringApplication Package Version  to be onboardedappProvider
SerInstanceIdIdentifier 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..1String
The provider's name of the application package to be onboarded.checksumchecksumchecksumChecksum of the onboarded application packageuserDefinedData
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.
transportInfo0..1
KeyValuePairUser defined data for the application package.appPkgPath1StringAddress information of the application package Currently not in use

...

ApplnstanceInfo Parameters

Attribute NameCardinalityData TypeDescriptionID1String

Application Instance Description

Ex : ID1

AppInstanceName
TransportInfoInformation 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..1
StringApplication Descriptor IDAppInstanceDescription0..1String

Application Provider

Ex: Huawei

AppDID1String

Application Name 

Ex : Face_Recognition.

AppProvider1StringAppName1StringDeploy Type ; Ex : HelmAppSoftVersion1String

Application Package ID

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

AppDVersion1String

Instantiation State.

Ex : NOT_INSTANTIATED

...

Describes the information of selected host for the application instance

...

TerminateAppRequest Parameters

Attribute NameCardinalityData TypeDescriptionterminationType1Enum

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
BooleanIndicate 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.
type1R3 - API Documentation Enterprise Application on Lightweight 5G Telco Edge (EALTEdge) [WIP]Type 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].