Newer
Older
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
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: