Newer
Older
title: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management'
description: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management described using OpenAPI.'
name: ETSI Forge
url: https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api
email: cti_support@etsi.org
version: '2.1.1'
jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema
- url: https://localhost/app_lcm/v1
variables: {}
summary: appInstancePOST
description: Create an application instance resource
$ref: '#/components/schemas/CreateAppInstanceRequest'
required: true
description: An application instance identifier and the related resource has been created successfully.
headers: {}
type: object
description: "'The data type of AppInstanceInfo represents the parameters of instantiated application instance resources.'"
contentMediaType: application/zip
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
summary: appInstanceGET
description: queries information relating to on-boarded application packages in the MEO
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
- name: filter
in: query
description: Attribute-based filtering parameters according to ETSI GS MEC 009
style: form
explode: true
schema:
type: string
- name: all_fields
in: query
description: Include all complex attributes in the response.
style: form
explode: true
schema:
type: string
- name: fields
in: query
description: Complex attributes of AppPkgInfo to be included into the response
style: form
explode: true
schema:
type: string
- name: exclude_fields
in: query
description: Complex attributes of AppPkgInfo to be excluded from the response.
style: form
explode: true
schema:
type: string
- name: exclude_default
in: query
description: Indicates to exclude the following complex attributes of AppPkgInfo from the response.
style: form
explode: true
schema:
type: string
description: Array the representations of zero or more application instances
headers: {}
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/AppInstanceInfo'
description: ''
contentMediaType: application/json
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
/app_instances/{appInstanceId}:
summary: appInstanceIdGET
description: Retrieves the information of an individual application instance via reading an individual application instance.
parameters:
- name: appInstanceId
in: path
description: Identifier of an individual application instance
required: true
style: simple
schema:
type: string
description: Contains a representation of the read resource.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/AppInstanceInfo'
'400':
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
summary: appInstanceIdDELETE
description: Deletes an individual application instance resource.
parameters:
- name: appInstanceId
in: path
description: Identifier of an individual application instance
required: true
style: simple
schema:
type: string
description: No Content
headers: {}
content: {}
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Conflict : The operation cannot be executed currently, due to a conflict with the state of the resource'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
/subscriptions:
summary: appLcmSubscriptionsPOST
description: subscribe to the notification of application instance operational state change
- name: subscriptionType
in: query
description: >-
"Query parameter to filter on a specific subscription type. Permitted values:
• "AppInstanceStateChange"
• "AppLcmOpOccStateChange"
"
style: form
explode: true
schema:
oneOf:
- $ref: '#/components/schemas/AppInst.SubscriptionType'
- $ref: '#/components/schemas/AppLcmOpOcc.SubscriptionType'
requestBody:
description: ''
- $ref: '#/components/schemas/AppInstSubscriptionRequest'
- $ref: '#/components/schemas/AppLcmOpOccSubscriptionRequest'
contentMediaType: application/json
required: true
description: a representation of the created SubscriptionInfo.
headers: {}
oneOf:
- $ref: '#/components/schemas/AppInstSubscriptionInfo'
- $ref: '#/components/schemas/AppLcmOpOccSubscriptionInfo'
contentMediaType: application/json
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
summary: appLcmSubscriptionsGET
description: Retrieves the information of multiple subscriptions to notifications related to an application instance.
- name: subscriptionType
in: query
description: 'Permitted values: AppInstanceStateChange or AppLcmOpOccStateChange'
style: form
explode: true
schema:
type: string
description: List of all subscriptions is returned.
headers: {}
$ref: '#/components/schemas/SubscriptionLinkList'
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
/subscriptions/{subscriptionId}:
summary: individualSubscriptionGET
description: Used to represent an individual subscription to notifications about application package changes.
operationId: individualSubscriptionGET
parameters:
- name: subscriptionId
in: path
description: Represents an individual subscription to notification related to an application instance
required: true
style: simple
schema:
type: string
- name: subscriptionType
in: query
description: 'Permitted values: AppInstanceStateChange or AppLcmOpOccStateChange'
required: true
style: form
explode: true
schema:
type: string
description: Representation of the resource.
headers: {}
- $ref: '#/components/schemas/AppInstSubscriptionInfo'
- $ref: '#/components/schemas/AppLcmOpOccSubscriptionInfo'
contentMediaType: application/json
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
summary: individualSubscriptionDELETE
description: Deletes the individual subscription to notifications about application package changes in MEO.
parameters:
- name: subscriptionId
in: path
description: Represents an individual subscription to notification related to an application instance
required: true
style: simple
schema:
type: string
description: No Content
headers: {}
content: {}
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
/user_defined_notification:
summary: appInstNotificationPOST
description: Delivers a notification from the application lifecycle management resource to the subscriber.
- $ref: '#/components/schemas/AppInstNotification'
- $ref: '#/components/schemas/AppLcmOpOccNotification'
contentMediaType: application/json
required: true
description: No Content
headers: {}
content: {}
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
/app_instances/{appInstanceId}/instantiate:
post:
tags:
- ''
summary: appLcmInstanciatePOST
description: task of instantiating an application instance.
parameters:
- name: appInstanceId
in: path
description: Identifier of an individual application instance
style: simple
schema:
type: string
requestBody:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/InstantiateAppRequest'
description: accepted for processing, but the processing has not yet been completed.
headers: {}
content: {}
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Conflict : The operation cannot be executed currently, due to a conflict with the state of the resource'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
/app_instances/{appInstanceId}/terminate:
post:
tags:
- ''
summary: appLcmTerminatePOST
description: terminate an application instance.
parameters:
- name: appInstanceId
in: path
description: Identifier of an individual application instance
style: simple
schema:
type: string
requestBody:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/TerminateAppRequest'
description: accepted for processing, but the processing has not yet been completed.
headers: {}
content: {}
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Conflict : The operation cannot be executed currently, due to a conflict with the state of the resource'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
/app_instances/{appInstanceId}/operate:
post:
tags:
- ''
summary: appLcmOperatePOST
description: change the operational state, i.e. start or stop, of the application instance
parameters:
- name: appInstanceId
in: path
description: Identifier of an individual application instance
style: simple
schema:
type: string
requestBody:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/OperateAppRequest'
description: accepted for processing, but the processing has not yet been completed.
headers: {}
content: {}
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Conflict : The operation cannot be executed currently, due to a conflict with the state of the resource'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
summary: appLcmOpOccsGET
description: retrieves information of operation status about multiple application instance lifecycle management operation occurrences
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
- name: filter
in: query
description: Attribute-based filtering parameters according to ETSI GS MEC 009
style: form
explode: true
schema:
type: string
- name: all_fields
in: query
description: Include all complex attributes in the response.
style: form
explode: true
schema:
type: string
- name: fields
in: query
description: Complex attributes of AppPkgInfo to be included into the response
style: form
explode: true
schema:
type: string
- name: exclude_fields
in: query
description: Complex attributes of AppPkgInfo to be excluded from the response.
style: form
explode: true
schema:
type: string
- name: exclude_default
in: query
description: Indicates to exclude the following complex attributes of AppPkgInfo from the response.
style: form
explode: true
schema:
type: string
description: Status information for zero or more application instance lifecycle management operation occurrences was queried successfully
headers: {}
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/AppInstanceLcmOpOcc'
description: ''
contentMediaType: application/json
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
/app_lcm_op_occs/{appLcmOpOccId}:
get:
tags:
- ''
summary: appLcmOpOccsbyIdGET
description: reads the status information of an individual application LCM operation occurrence