Newer
Older
info:
title: MEC Service Management API
description: The ETSI MEC ISG MEC011 MEC Service Management API described using OpenAPI
license:
name: BSD-3-Clause
url: 'https://forge.etsi.org/legal-matters'
contact:
email: cti_support@etsi.org
description: 'ETSI GS MEC011 Application Enablement API, V3.1.1'
url: >-
https://www.etsi.org/deliver/etsi_gs/MEC/001_099/011/03.01.01_60/gs_MEC011v030101p.pdf
jsonSchemaDialect: 'https://json-schema.org/draft/2020-12/schema'
- url: 'http://127.0.0.1:8081/mec_service_mgmt/v1'
variables: {}
- url: 'https://127.0.0.1:8081/mec_service_mgmt/v1'
variables: {}
- name: appSubscriptions
- name: appServices
- name: services
- name: transports
- name: callbacks
- name: individualMECservice
'/applications/{appInstanceId}/subscriptions':
get:
tags:
- appSubscriptions
summary: Get subscriptions
description: >-
The GET method may be used to request information about all
subscriptions for this requestor. Upon success, the response contains
entity body with all the subscriptions for the requestor.
operationId: ApplicationsSubscriptions_GET
parameters:
- name: appInstanceId
in: path
description: >-
Represents a MEC application instance. Note that the appInstanceId
is allocated by the MEC platform manager.
required: true
style: simple
schema:
type: string
responses:
'200':
description: >-
Upon success, a response message content containing the list of
links to the requested subscriptions is returned.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/MecServiceMgmtApiSubscriptionLinkList'
description: >-
Bad Request. It is used to indicate that incorrect parameters were
passed to the request.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
post:
tags:
- appSubscriptions
summary: Create subscription
description: >-
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 entity body
describing the created subscription.
operationId: ApplicationsSubscriptions_POST
parameters:
- name: appInstanceId
in: path
description: >-
Represents a MEC application instance. Note that the appInstanceId
is allocated by the MEC platform manager.
required: true
style: simple
schema:
type: string
description: >-
Message content in the request contains a subscription to the MEC
application termination notifications that is to be created.
content:
application/json:
schema:
$ref: '#/components/schemas/SerAvailabilityNotificationSubscription'
required: true
responses:
'201':
description: >-
Entity body in the request contains a subscription to the MEC
service availability notifications that is to be created.
headers:
location:
description: The resource URI of the created resource
content:
text/plain:
schema:
type: string
description: The resource URI of the created resource
contentMediaType: text/plain
content:
application/json:
schema:
$ref: '#/components/schemas/SerAvailabilityNotificationSubscription'
'400':
description: >-
Bad Request. It is used to indicate that incorrect parameters were
passed to the request.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
'403':
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
callbacks:
ServiceAvailailityNotification:
'{$request.body#/callbackReference}':
'Represents the service availability information that is used
in the following cases
when the MEC platform announces the newly available
services to the authorized relevant MEC applications (e.g. the
applications that indicate the services as "optional" or
"required") that are subscribed to the corresponding service
availability notifications when the MEC platform notifies the
authorized relevant applications that are subscribed to the
corresponding service availability notifications about the
service availability changes.'
operationId: ServiceAvailabilityNotification_POST
$ref: '#/components/requestBodies/ServiceAvailabilityNotification'
'200':
description: >-
Expected responses from callback consumer, if it accepts the
callback
'/applications/{appInstanceId}/subscriptions/{subscriptionId}':
get:
tags:
- appSubscriptions
summary: Get subscription
description: >-
The GET method requests information about a subscription for this
requestor. Upon success, the response contains message content with the
subscription for the requestor.
operationId: ApplicationsSubscription_GET
parameters:
- name: appInstanceId
in: path
description: >-
Represents a MEC application instance. Note that the appInstanceId
is allocated by the MEC platform manager.
required: true
style: simple
schema:
type: string
- name: subscriptionId
in: path
description: >-
Represents a subscription to the notifications from the MEC
platform.
required: true
style: simple
schema:
type: string
responses:
'200':
description: >-
Upon success, a response message content containing the requested
subscription is returned.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/SerAvailabilityNotificationSubscription'
description: >-
Bad Request. It is used to indicate that incorrect parameters were
passed to the request.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
'403':
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
delete:
tags:
description: >-
This method deletes a mecSrvMgmtSubscription. This method is typically
used in "Unsubscribing from service availability event notifications"
procedure.
operationId: ApplicationsSubscription_DELETE
parameters:
- name: appInstanceId
in: path
description: >-
Represents a MEC application instance. Note that the appInstanceId
is allocated by the MEC platform manager.
required: true
style: simple
schema:
type: string
- name: subscriptionId
in: path
description: >-
Represents a subscription to the notifications from the MEC
platform.
required: true
style: simple
schema:
type: string
responses:
'204':
description: No Content
headers: {}
content: {}
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
parameters: []
'/applications/{appInstanceId}/services':
get:
tags:
description: >-
This method retrieves information about a list of mecService resources.
This method is typically used in "service availability query" procedure
parameters:
- name: appInstanceId
in: path
description: >-
Represents a MEC application instance. Note that the appInstanceId
is allocated by the MEC platform manager.
required: true
style: simple
schema:
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
- name: ser_instance_id
in: query
description: >-
A MEC application instance may use multiple ser_instance_ids as an
input parameter to query the availability of a list of MEC service
instances. Either "ser_instance_id" or "ser_name" or
"ser_category_id" or none of them shall be present.
style: form
explode: true
schema:
type: array
items:
type: string
- name: ser_name
in: query
description: >-
A MEC application instance may use multiple ser_names as an input
parameter to query the availability of a list of MEC service
instances. Either "ser_instance_id" or "ser_name" or
"ser_category_id" or none of them shall be present.
style: form
explode: true
schema:
type: array
items:
type: string
- name: ser_category_id
in: query
description: >-
A MEC application instance may use ser_category_id as an input
parameter to query the availability of a list of MEC service
instances in a serCategory. Either "ser_instance_id" or "ser_name"
or "ser_category_id" or none of them shall be present.
style: form
explode: true
schema:
type: string
- name: consumed_local_only
in: query
description: >-
Indicate whether the service can only be consumed by the MEC
applications located in the same locality (as defined by
scopeOfLocality) as this service instance.
style: form
explode: true
schema:
type: boolean
- name: is_local
in: query
description: >-
Indicate whether the service is located in the same locality (as
defined by scopeOfLocality) as the consuming MEC application.
style: form
explode: true
schema:
type: boolean
- name: scope_of_locality
in: query
description: >-
A MEC application instance may use scope_of_locality as an input
parameter to query the availability of a list of MEC service
instances with a certain scope of locality.
style: form
explode: true
schema:
responses:
'200':
description: >-
It is used to indicate nonspecific success. The response message
content contains a representation of the resource.
headers: {}
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceInfo'
description: ''
examples:
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
- - serInstanceId: ServiceInstance123
serName: ExampleService
serCategory:
href: catItem1
id: id12345
name: RNI
version: version1
version: ServiceVersion1
state: ACTIVE
transportInfo:
id: TransId12345
name: REST
description: REST API
type: REST_HTTP
protocol: HTTP
version: '2.0'
endpoint:
addresses:
- host: 192.0.2.0
port: 8080
security:
oAuth2Info:
grantTypes:
- OAUTH2_CLIENT_CREDENTIALS
tokenEndpoint: /mecSerMgmtApi/security/TokenEndPoint
serializer: JSON
contentMediaType: application/json
examples:
ServiceInfoList:
value:
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
- serInstanceId: ServiceInstance123
serName: ExampleService
serCategory:
href: catItem1
id: id12345
name: RNI
version: version1
version: ServiceVersion1
state: ACTIVE
transportInfo:
id: TransId12345
name: REST
description: REST API
type: REST_HTTP
protocol: HTTP
version: '2.0'
endpoint:
addresses:
- host: 192.0.2.0
port: 8080
security:
oAuth2Info:
grantTypes:
- OAUTH2_CLIENT_CREDENTIALS
tokenEndpoint: /mecSerMgmtApi/security/TokenEndPoint
serializer: JSON
description: >-
Bad Request. It is used to indicate that incorrect parameters were
passed to the request.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
description: >-
It is used to indicate that the server is refusing to process the
request because the request URI is longer than the server is willing
or able to process.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
post:
tags:
description: >-
This method is used to create a mecService resource. This method is
typically used in "service availability update and new service
registration" procedure
operationId: AppServices_POST
parameters:
- name: appInstanceId
in: path
description: >-
Represents a MEC application instance. Note that the appInstanceId
is allocated by the MEC platform manager.
required: true
style: simple
schema:
type: string
description: >-
New ServiceInfo with updated "state" is included as entity body of the
request
content:
application/json:
schema:
oneOf:
- type: object
- type: object
description: >-
New ServiceInfo with updated "state" is included as entity body
of the request
contentMediaType: application/json
required: true
responses:
'201':
description: >-
Upon success, the HTTP response shall include a Location HTTP header
that contains the resource URI of the created resource.
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
headers:
location:
description: The resource URI of the created resource
content:
text/plain:
schema:
type: string
description: The resource URI of the created resource
contentMediaType: text/plain
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceInfo'
examples:
ServiceInfo:
value:
serInstanceId: ServiceInstance123
serName: ExampleService
serCategory:
href: catItem1
id: id12345
name: RNI
version: version1
version: ServiceVersion1
state: ACTIVE
transportInfo:
id: TransId12345
name: REST
description: REST API
type: REST_HTTP
protocol: HTTP
version: '2.0'
endpoint:
uris:
- /mecSerMgmtApi/service/EntryPoint
security:
oAuth2Info:
grantTypes:
- OAUTH2_CLIENT_CREDENTIALS
tokenEndpoint: /mecSerMgmtApi/security/TokenEndPoint
serializer: JSON
description: >-
Bad Request. It is used to indicate that incorrect parameters were
passed to the request.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
parameters: []
'/applications/{appInstanceId}/services/{serviceId}':
get:
tags:
description: >-
This method retrieves information about a mecService resource. This
method is typically used in "service availability query" procedure
operationId: AppServicesServiceId_GET
parameters:
- name: appInstanceId
in: path
description: >-
Represents a MEC application instance. Note that the appInstanceId
is allocated by the MEC platform manager.
required: true
style: simple
schema:
type: string
- name: serviceId
in: path
description: Represents a MEC service instance (see note).
required: true
style: simple
schema:
type: string
responses:
'200':
description: >-
It is used to indicate nonspecific success. The response message
content contains a representation of the resource.
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceInfo'
examples:
ServiceInfo:
value:
serInstanceId: ServiceInstance123
serName: ExampleService
serCategory:
href: catItem1
id: id12345
name: RNI
version: version1
version: ServiceVersion1
state: ACTIVE
transportInfo:
id: TransId12345
name: REST
description: REST API
type: REST_HTTP
protocol: HTTP
version: '2.0'
endpoint:
uris:
- /mecSerMgmtApi/service/EntryPoint
security:
oAuth2Info:
grantTypes:
- OAUTH2_CLIENT_CREDENTIALS
tokenEndpoint: /mecSerMgmtApi/security/TokenEndPoint
serializer: JSON
description: >-
Bad Request. It is used to indicate that incorrect parameters were
passed to the request.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
description: This method updates the information about a mecService resource
operationId: AppServicesServiceId_PUT
- name: appInstanceId
in: path
description: >-
Represents a MEC application instance. Note that the appInstanceId
is allocated by the MEC platform manager.
required: true
style: simple
schema:
type: string
- name: serviceId
in: path
description: Represents a MEC service instance. (see note)
required: true
style: simple
schema:
type: string
description: >-
New ServiceInfo with updated "state" is included as entity body of the
request
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceInfo'
required: true
responses:
'200':
description: >-
It is used to indicate nonspecific success. The response message
content contains a representation of the resource.
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceInfo'
examples:
ServiceInfo:
value:
serInstanceId: ServiceInstance123
serName: ExampleService
serCategory:
href: catItem1
id: id12345
name: RNI
version: version1
version: ServiceVersion1
state: ACTIVE
transportInfo:
id: TransId12345
name: REST
description: REST API
type: REST_HTTP
protocol: HTTP
version: '2.0'
endpoint:
uris:
- /mecSerMgmtApi/service/EntryPoint
security:
oAuth2Info:
grantTypes:
- OAUTH2_CLIENT_CREDENTIALS
tokenEndpoint: /mecSerMgmtApi/security/TokenEndPoint
serializer: JSON
description: >-
Bad Request. It is used to indicate that incorrect parameters were
passed to the request.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
description: >-
Precondition Failed. It is used when a condition has failed during
conditional requests, e.g. when using ETags to avoid write
conflicts.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
description: >-
This method deletes a mecService resource. This method is typically used
in the service deregistration procedure.
operationId: AppServicesServiceId_DELETE
parameters:
- name: appInstanceId
in: path
description: >-
Represents a MEC application instance. Note that the appInstanceId
is allocated by the MEC platform manager.
required: true
style: simple
schema:
type: string
- name: serviceId
in: path
description: Represents a MEC service instance. (see note)
required: true
style: simple
schema:
type: string
responses:
'204':
description: No Content
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
parameters: []
/services:
get:
tags:
description: >-
This method retrieves information about a list of mecService resources.
This method is typically used in "service availability query" procedure
operationId: Services_GET
parameters:
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
- name: ser_instance_id
in: query
description: >-
A MEC application instance may use multiple ser_instance_ids as an
input parameter to query the availability of a list of MEC service
instances. Either "ser_instance_id" or "ser_name" or
"ser_category_id" or none of them shall be present.
style: form
explode: true
schema:
type: array
items:
type: string
- name: ser_name
in: query
description: >-
A MEC application instance may use multiple ser_names as an input
parameter to query the availability of a list of MEC service
instances. Either "ser_instance_id" or "ser_name" or
"ser_category_id" or none of them shall be present.
style: form
explode: true
schema:
type: array
items:
type: string
- name: ser_category_id
in: query
description: >-
A MEC application instance may use ser_category_id as an input
parameter to query the availability of a list of MEC service
instances in a serCategory. Either "ser_instance_id" or "ser_name"
or "ser_category_id" or none of them shall be present.
style: form
explode: true
schema:
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
- name: consumed_local_only
in: query
description: >-
Indicate whether the service can only be consumed by the MEC
applications located in the same locality (as defined by
scopeOfLocality) as this service instance.
style: form
explode: true
schema:
type: boolean
- name: is_local
in: query
description: >-
Indicate whether the service is located in the same locality (as
defined by scopeOfLocality) as the consuming MEC application.
style: form
explode: true
schema:
type: boolean
- name: scope_of_locality
in: query
description: >-
A MEC application instance may use scope_of_locality as an input
parameter to query the availability of a list of MEC service
instances with a certain scope of locality.
style: form
explode: true
schema:
responses:
'200':
description: >-
It is used to indicate nonspecific success. The response message
content contains a representation of the resource.
headers: {}
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceInfo'
description: ''
examples:
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
- - serInstanceId: ServiceInstance123
serName: ExampleService
serCategory:
href: catItem1
id: id12345
name: RNI
version: version1
version: ServiceVersion1
state: ACTIVE
transportInfo:
id: TransId12345
name: REST
description: REST API
type: REST_HTTP
protocol: HTTP
version: '2.0'
endpoint:
addresses:
- host: 192.0.2.0
port: 8080
security:
oAuth2Info:
grantTypes:
- OAUTH2_CLIENT_CREDENTIALS
tokenEndpoint: /mecSerMgmtApi/security/TokenEndPoint
serializer: JSON
contentMediaType: application/json
examples:
ServiceInfoList:
value:
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
- serInstanceId: ServiceInstance123
serName: ExampleService
serCategory:
href: catItem1
id: id12345
name: RNI
version: version1
version: ServiceVersion1
state: ACTIVE
transportInfo:
id: TransId12345
name: REST
description: REST API
type: REST_HTTP
protocol: HTTP
version: '2.0'
endpoint:
addresses:
- host: 192.0.2.0
port: 8080
security:
oAuth2Info:
grantTypes:
- OAUTH2_CLIENT_CREDENTIALS
tokenEndpoint: /mecSerMgmtApi/security/TokenEndPoint
serializer: JSON
'400':
description: >-
Bad Request. It is used to indicate that incorrect parameters were
passed to the request.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
'403':
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
'414':
description: >-
It is used to indicate that the server is refusing to process the
request because the request URI is longer than the server is willing
or able to process.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
parameters: []
get:
tags:
description: >-
This method retrieves information about a mecService resource. This
method is typically used in "service availability query" procedure
operationId: ServicesServiceId_GET
parameters:
- name: serviceId
in: path
description: Represents a MEC service instance. (see note)
required: true
style: simple
schema:
type: string
x-etsi-notes: "NOTE:\t serviceId corresponds to serInstanceId"
responses:
'200':
description: >-
It is used to indicate nonspecific success. The response message
content contains a representation of the resource.
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceInfo'
examples:
ServiceInfo:
value:
serInstanceId: ServiceInstance123
serName: ExampleService
serCategory:
href: catItem1
id: id12345
name: RNI
version: version1
version: ServiceVersion1
state: ACTIVE
transportInfo:
id: TransId12345
name: REST
description: REST API
type: REST_HTTP
protocol: HTTP
version: '2.0'
endpoint:
uris:
- /mecSerMgmtApi/service/EntryPoint
security:
oAuth2Info:
grantTypes:
- OAUTH2_CLIENT_CREDENTIALS
tokenEndpoint: /mecSerMgmtApi/security/TokenEndPoint
serializer: JSON
'400':
description: >-
Bad Request. It is used to indicate that incorrect parameters were
passed to the request.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
'403':
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
parameters: []
/transports:
get:
tags:
description: >-
This method retrieves information about a list of available transports.
This method is typically used by a service-producing application to
discover transports provided by the MEC platform in the "transport
information query" procedure
operationId: Transports_GET
parameters: []
responses:
'200':
description: >-
It is used to indicate nonspecific success. The response messages
content contains a representation of the resource.
headers: {}
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/TransportInfo'
description: ''
contentMediaType: application/json
'400':
description: >-
Bad Request. It is used to indicate that incorrect parameters were
passed to the request.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
'403':
description: >-
Forbidden. The operation is not allowed given the current status of
the resource.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: >-
Not Found. It is used when a client provided a URI that cannot be
mapped to a valid resource URI.
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
text/plain:
schema:
type: object
description: Empty schema
contentMediaType: text/plain
deprecated: false
parameters: []
/resource_uri_allocated_by_MEC_platform:
get:
tags:
description: >-
This method retrieves information about an "Individual
mecServiceLiveness" resource
operationId: get_individual_MEC_service
responses:
'200':
description: >-
It is used to indicate nonspecific success. The response message
content contains a representation of the resource.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceLivenessInfo'
'400':
description: >-
It is used to indicate that incorrect parameters were passed to the
request. In the returned ProblemDetails structure, the "detail"
attribute should convey more information about the error.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'403':
description: >-
The operation is not allowed given the current status of the
resource. More information shall be provided in the "detail"
attribute of the "ProblemDetails" structure.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: >-
It is used when a client provided a URI that cannot be mapped to a
valid resource URI. In the returned ProblemDetails structure, the
"detail" attribute should convey more information about the error.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
patch:
tags:
description: >-
This method updates a resource on top of the existing resource state
with partial changes described by the client.
operationId: patch_individual_MEC_service
requestBody:
description: It contains an update of the liveness state.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceLivenessUpdate'
required: true
responses:
'200':
description: >-
Upon success, a response message content is returned containing the
updated liveness interval value of the service Instance.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceLivenessInfo'
'204':
description: >-
Successful response sent when there is no need to provide a new
liveness interval value to the service Instance.
headers: {}
content: {}
'400':
description: >-
It is used to indicate that incorrect parameters were passed to the
request. In the returned ProblemDetails structure, the "detail"
attribute should convey more information about the error.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'403':
description: >-
The operation is not allowed given the current status of the
resource. More information shall be provided in the "detail"
attribute of the "ProblemDetails" structure.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: >-
It is used when a client provided a URI that cannot be mapped to a
valid resource URI. In the returned ProblemDetails structure, the
"detail" attribute should convey more information about the error.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'409':
description: >-
The operation is not allowed due to a conflict with the state of the
resource. The MEC platform shall respond with this code if the
service instance is in "INACTIVE" state. More information shall be
provided in the "detail" attribute of the "ProblemDetails"
structure.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'412':
description: >-
It is used when a condition has failed during conditional requests,
e.g. when using ETags to avoid write conflicts. In the returned
ProblemDetails structure, the "detail" attribute should convey more
information about the error.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
components:
schemas:
CategoryRef:
required:
- href
- id
- name
- version
properties:
href:
type: string
description: Reference of the catalogue
examples:
type: string
description: Unique identifier of the category
examples:
description: >-
Name of the category, example values include RNI, Location &
Bandwidth Management
version:
type: string
description: Category version
examples:
description: This type represents the category reference
EndPointInfo.Address:
required:
properties:
host:
type: string
description: Host portion of the address
examples:
type: integer
description: Port portion of the address
contentEncoding: int32
examples:
description: A IP address and port pair
EndPointInfo.Addresses:
required:
properties:
addresses:
items:
$ref: '#/components/schemas/EndPointInfo.Address'
description: >-
Entry point information of the service as one or more pairs of IP
address and port. See note.
description: This type represents information about a transport endpoint.
EndPointInfo.Alternative:
required:
alternative:
type: object
description: >-
Entry point information of the service in a format defined by an
implementation, or in an external specification. See note.
description: This type represents information about a transport endpoint.
EndPointInfo.Uris:
required:
properties:
uris:
items:
description: >-
Entry point information of the service as string, formatted
according to URI syntax
description: This type represents information about a transport endpoint.
EndPointInfo.Fqdn:
title: EndPointInfo.Fqdn
required:
- fqdn
type: object
properties:
fqdn:
type: array
items:
type: string
description: Fully Qualified Domain Name of the service. See note.
description: 'This type represents information about a transport endpoint. '
LinkType:
type: object
properties:
href:
type: string
description: URI referring to a resource
examples:
- /mecSerMgmtApi/example
description: >-
This type represents a type of link and may be referenced from data
structures
MecServiceMgmtApiSubscriptionLinkList.Links:
title: MecServiceMgmtApiSubscriptionLinkList.Links
required:
properties:
self:
$ref: '#/components/schemas/LinkType'
subscriptions:
type: array
items:
$ref: >-
#/components/schemas/MecServiceMgmtApiSubscriptionLinkList.Subscription
description: The MEC application instance's subscriptions
description: Self-referring URI.
MecServiceMgmtApiSubscriptionLinkList.Subscription:
title: MecServiceMgmtApiSubscriptionLinkList.Subscription
required:
properties:
href:
type: string
description: URI referring to a resource
examples:
rel:
type: string
description: The value shall be se to SerAvailabilityNotificationSubscription.
description: A link to a subscription.
MecServiceMgmtApiSubscriptionLinkList:
title: MecServiceMgmtApiSubscriptionLinkList
required:
properties:
_links:
$ref: '#/components/schemas/MecServiceMgmtApiSubscriptionLinkList.Links'
description: >-
This type represents a list of links related to currently existing
subscriptions for a MEC application instance. This information is
returned when sending a request to receive current subscriptions.
ProblemDetails:
type: object
properties:
type:
description: >-
A URI reference according to IETF RFC 3986 that identifies the
problem type
title:
description: 'A short, human-readable summary of the problem type'
status:
type: integer
description: The HTTP status code for this occurrence of the problem
contentEncoding: int32
detail:
description: >-
A human-readable explanation specific to this occurrence of the
problem
instance:
description: >-
A URI reference that identifies the specific occurrence of the
problem
title: SecurityInfo.OAuth2Info.GrantType
- OAUTH2_AUTHORIZATION_CODE
- OAUTH2_IMPLICIT_GRANT
- OAUTH2_RESOURCE_OWNER
- OAUTH2_CLIENT_CREDENTIALS
type: string
description: OAuth 2.0 grant type
examples:
- OAUTH2_CLIENT_CREDENTIALS
SecurityInfo.OAuth2Info:
required:
- grantTypes
- tokenEndpoint
properties:
grantTypes:
maxItems: 4
minItems: 1
type: array
items:
$ref: '#/components/schemas/SecurityInfo.OAuth2Info.GrantType'
description: List of supported OAuth 2.0 grant types.
tokenEndpoint:
type: string
description: The token endpoint
examples:
- /mecSerMgmtApi/security/TokenEndPoint
description: Parameters related to use of OAuth 2.0
SecurityInfo:
type: object
properties:
oAuth2Info:
$ref: '#/components/schemas/SecurityInfo.OAuth2Info'
description: This type represents security information related to a transport
required:
properties:
self:
$ref: '#/components/schemas/LinkType'
SerAvailabilityNotificationSubscription:
title: SerAvailabilityNotificationSubscription
required:
- subscriptionType
- callbackReference
- _links
properties:
subscriptionType:
type: string
description: Shall be set to SerAvailabilityNotificationSubscription.
examples:
- SerAvailabilityNotificationSubscription
callbackReference:
description: >-
URI selected by the MEC application instance to receive
notifications on the subscribed MEC service availability
information. This shall be included in both the request and the
response.
_links:
$ref: '#/components/schemas/Self'
filteringCriteria:
$ref: >-
#/components/schemas/SerAvailabilityNotificationSubscription.FilteringCriteria
x-etsi-notes: "NOTE:\tThe attributes \"serInstanceIds\", \"serNames\" and \"serCategories\" provide mutually-exclusive alternatives to define a set of services. Only one of them may be present."
SerAvailabilityNotificationSubscription.FilteringCriteria:
title: SerAvailabilityNotificationSubscription.FilteringCriteria
type: object
properties:
serInstanceIds:
type: array
items:
type: string
description: Identifiers of service instances about which to report events.
type: array
items:
type: string
description: Names of services about which to report events.
type: array
items:
$ref: '#/components/schemas/CategoryRef'
description: Categories of services about which to report events.
type: array
items:
$ref: '#/components/schemas/ServiceState'
description: >-
States of the services about which to report events. If the event
is a state change, this filter represents the state after the
change.
description: >-
Indicate whether the service is located in the same locality (as
defined by scopeOfLocality) as the consuming MEC application.
- true
description: >-
Filtering criteria to match services for which events are requested to
be reported. If absent, matches all services. All child attributes are
combined with the logical "AND" operation.
ServiceAvailabilityNotification:
title: ServiceAvailabilityNotification
required:
- notificationType
- serviceReferences
- _links
properties:
notificationType:
type: string
description: Shall be set to SerAvailabilityNotificationSubscription.
examples:
- SerAvailabilityNotificationSubscription
type: array
$ref: >-
#/components/schemas/ServiceAvailabilityNotification.ServiceReferences
_links:
$ref: '#/components/schemas/Subscription'
description: This type represents the service availability information.
ServiceAvailabilityNotification.ServiceReferences:
title: ServiceAvailabilityNotification.ServiceReferences
- serName
- serInstanceId
- state
- changeType
description: >-
The name of the service. This is how the service producing MEC
application identifies the service instance it produces.
type: string
description: Identifier of the service instance assigned by the MEC platform.
examples:
state:
$ref: '#/components/schemas/ServiceState'
changeType:
$ref: '#/components/schemas/ServiceAvailabilityNotification.ChangeType'
description: List of links to services whose availability has changed.
title: ServiceAvailabilityNotification.ChangeType
- ADDED
- REMOVED
- STATE_CHANGED
- ATTRIBUTES_CHANGED
type: string
description: |-
Type of the change. Valid values:
1. ADDED: The service was newly added.
2. REMOVED: The service was removed.
3. STATE_CHANGED: Only the state of the service was changed.
4. ATTRIBUTES_CHANGED: At least one attribute of the service other than state was changed. The change may or may not include changing the state.
SerializerType:
title: SerializerType
- JSON
- XML
- PROTOBUF3
type: string
description: The enumeration represents types of serializers
examples:
LocalityType:
title: LocalityType
- MEC_SYSTEM
- MEC_HOST
- NFVI_POP
- ZONE
- ZONE_GROUP
- NFVI_NODE
description: >-
The scope of locality as expressed by "consumedLocalOnly" and "isLocal".
If absent, defaults to MEC_HOST
ServiceState:
title: ServiceState
- ACTIVE
- INACTIVE
- SUSPENDED
type: string
description: This enumeration defines the possible states of a service.
examples:
ServiceInfo:
title: ServiceInfo
required:
- serName
- version
- state
- transportInfo
- serializer
properties:
serInstanceId:
type: string
description: Identifier of the service instance assigned by the MEC platform.
examples:
serName:
description: >-
The name of the service. This is how the service producing MEC
application identifies the service instance it produces.
serCategory:
$ref: '#/components/schemas/CategoryRef'
version:
type: string
description: Service version
examples:
state:
transportId:
type: string
description: >-
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. See note 2.
examples:
- transportId1
transportInfo:
$ref: '#/components/schemas/TransportInfo'
serializer:
scopeOfLocality:
consumedLocalOnly:
description: >-
Indicate whether the service can only be consumed by the MEC
applications located in the same locality (as defined by
scopeOfLocality) as this service instance.
description: >-
Indicate whether the service is located in the same locality (as
defined by scopeOfLocality) as the consuming MEC application.
livenessInterval:
type: integer
description: >-
Interval (in seconds) between two consecutive "heartbeat" messages
(see clause 8.2.10.3.3). If the service-producing application
supports sending "heartbeat" messages, it shall include this
attribute in the registration request. In this case, the application
shall either set the value of this attribute to zero or shall use
this attribute to propose a non-zero positive value for the liveness
interval. If the application has provided this attribute in the
request and the MEC platform requires "heartbeat" messages, the MEC
platform shall return this attribute value in the HTTP responses.
The MEC platform may use the value proposed in the request or may
choose a different value. If the MEC platform does not require
"heartbeat" messages for this service instance it shall omit the
attribute in responses.
_links:
type: object
required:
- self
properties:
self:
$ref: '#/components/schemas/LinkType'
liveness:
$ref: '#/components/schemas/LinkType'
description: This type represents the general information of a MEC service.
x-etsi-notes: "NOTE 1:\tThe service category may be included in the application descriptor. It may be allocated by the operator or by the application developer.\nNOTE 2:\tEither transportId or transportInfo but not both shall be present in POST requests.\nNOTE 3:\tValues NFVI_POP, ZONE and NFVI_NODE are used when the service instance is deployed as a VNF.\nNOTE 4:\tThe isLocal is used only in service availability query response and service availability subscription/notification messages.\nNOTE 5:\tValue ZONE_GROUP can be used when the service instance is deployed as a VNF.\nNOTE 6:\tRegarding the value MEC_SYSTEM, if the service is running on the same MEC system as the MEC app, then it will be local to it."
ServiceLivenessInfo:
type: object
required:
- state
- timeStamp
- interval
properties:
state:
$ref: '#/components/schemas/ServiceState'
timeStamp:
type: object
description: >-
The time when the last "heartbeat" message was received by MEC
platform
required:
- seconds
- nanoSeconds
properties:
seconds:
type: integer
nanoSeconds:
interval:
type: integer
description: >-
The interval (in seconds) between two consecutive "heartbeat"
messages (see clause 8.2.10.3.3) that MEC platform has determined.
ServiceLivenessUpdate:
type: object
required:
- state
properties:
state:
$ref: '#/components/schemas/ServiceState'
Subscription:
required:
properties:
subscription:
$ref: '#/components/schemas/LinkType'
description: A link to the related subscription
TransportInfo:
required:
- id
- name
- type
- protocol
- version
- endpoint
- security
properties:
id:
type: string
description: The identifier of this transport
examples:
type: string
description: The name of this transport
examples:
description:
type: string
description: Human-readable description of this transport
examples:
protocol:
type: string
description: The name of the protocol used. Shall be set to HTTP for a REST API.
examples:
version:
type: string
description: The version of the protocol used
examples:
endpoint:
oneOf:
- $ref: '#/components/schemas/EndPointInfo.Uris'
- $ref: '#/components/schemas/EndPointInfo.Fqdn'
- $ref: '#/components/schemas/EndPointInfo.Addresses'
- $ref: '#/components/schemas/EndPointInfo.Alternative'
description: This type represents information about a transport endpoint
x-etsi-notes: "NOTE:\tExactly one of \"uris\", \"fqdn\", \"addresses\" or \"alternative\" shall be present."
security:
$ref: '#/components/schemas/SecurityInfo'
implSpecificInfo:
type: object
description: Additional implementation specific details of the transport
description: This type represents the general information of a MEC service.
- REST_HTTP
- MB_TOPIC_BASED
- MB_ROUTING
- MB_PUBSUB
- RPC
- RPC_STREAMING
- WEBSOCKET
type: string
description: The enumeration TransportType represents types of transports
examples:
requestBodies:
ServiceAvailabilityNotification:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceAvailabilityNotification'
required: true