Newer
Older
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
or POST request triggering a VNF LCM operation. It can also be
retrieved from the "vnfLcmOpOccId" attribute in the
VnfLcmOperationOccurrenceNotification.
in: path
required: true
type: string
post:
description: >
The POST method initiates rolling back a VNF lifecycle operation if
that operation has experienced a temporary failure, i.e. the related
"VNF LCM operation occurrence" resource is in "FAILED_TEMP" state.
responses:
202:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/202"
400:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
401:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
403:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
404:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-resource-not-exists-VNF-LCM"
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
405:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
406:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
409:
$ref: "responses/VNFLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP"
500:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
503:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
###############################################################################
# Fail operation task #
###############################################################################
'/vnf_lcm_op_occs/{vnfLcmOpOccId}/fail':
#SOL003 location: 5.4.16
parameters:
- name: vnfLcmOpOccId
description: >
Identifier of a VNF lifecycle management operation occurrence to be
be marked as "failed". This identifier can be retrieved from the
resource referenced by the "Location" HTTP header in the response to
a PATCH or POST request triggering a VNF LCM operation. It can also
be retrieved from the "vnfLcmOpOccId" attribute in the
VnfLcmOperationOccurrenceNotification.
in: path
required: true
type: string
post:
description: >
The POST method marks a VNF lifecycle management operation occurrence
as "finally failed" if that operation occurrence is in "FAILED_TEMP"
state.
responses:
200:
description: >
The state of the VNF lifecycle management operation occurrence was
changed successfully. The response shall include a representation
of the VNF lifecycle operation occurrence resource.
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
schema:
$ref: "definitions/VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc"
400:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
401:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
403:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
404:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-resource-not-exists-VNF-LCM"
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
405:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
406:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
409:
$ref: "responses/VNFLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP"
500:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
503:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
###############################################################################
# Cancel operation task #
###############################################################################
'/vnf_lcm_op_occs/{vnfLcmOpOccId}/cancel':
#SOL003 location: 5.4.17
parameters:
- name: vnfLcmOpOccId
description: >
Identifier of a VNF lifecycle management operation occurrence to be
be cancelled. This identifier can be retrieved from the
resource referenced by the "Location" HTTP header in the response to
a PATCH or POST request triggering a VNF LCM operation. It can also
be retrieved from the "vnfLcmOpOccId" attribute in the
VnfLcmOperationOccurrenceNotification.
in: path
required: true
type: string
post:
description: >
The POST method initiates cancelling an ongoing VNF lifecycle
operation while it is being executed or rolled back, i.e. the related
"VNF LCM operation occurrence" is either in "PROCESSING" or
"ROLLING_BACK" state.
responses:
202:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/202"
400:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
401:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
403:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
404:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-resource-not-exists-VNF-LCM"
405:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
406:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
409:
description: >
The operation cannot be executed currently, due to a conflict with
the state of the VNF LCM operation occurrence resource.
Typically, this is due to the fact that the operation occurrence
is not in STARTING, PROCESSING or ROLLING_BACK state.
The response body shall contain a ProblemDetails structure, in
which the "detail" attribute shall convey more information about
the error.
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
schema:
$ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails"
500:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
503:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
###############################################################################
# Subscriptions #
###############################################################################
'/subscriptions':
#SOL003 location: 5.4.18
post:
description: >
The POST method creates a new subscription.
Creation of two subscription resources with the same callbackURI and
the same filter can result in performance degradation and will provide
duplicates of notifications to the NFVO, and might make sense only in
very rare use cases. Consequently, the VNFM may either allow creating
a subscription resource if another subscription resource with the same
filter and callbackUri already exists (in which case it shall return
the “201 Created” response code), or may decide to not create a
duplicate subscription resource (in which case it shall return a
“303 See Other” response code referencing the existing subscription
resource with the same filter and callbackUri).
parameters:
- name: LccnSubscriptionRequest
description: >
Details of the subscription to be created.
in: body
required: true
schema:
$ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscriptionRequest"
responses:
201:
description: >
The subscription was created successfully. The response body shall
contain a representation of the created subscription resource.
The HTTP response shall include a "Location" HTTP header that
points to the created subscription resource.
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
Location:
description: The resource URI of the created VNF instance
type: string
format: url
schema:
$ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription"
A subscription with the same callbackURI and the same filter already
exists and the policy of the VNFM is to not create redundant
subscriptions.
The HTTP response shall include a "Location" HTTP header that
contains the resource URI of the existing subscription resource.
The response body shall be empty.
headers:
Location:
description: The resource URI of the created VNF instance
type: string
format: url
400:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
401:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
403:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
404:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-not-suported-VNF-LCM"
405:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
406:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
500:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
503:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
get:
description: >
The GET method queries the list of active subscriptions of the
functional block that invokes the method. It can be used e.g. for
resynchronization after error situations.
responses:
200:
description: >
The list of subscriptions was queried successfully. The response
body shall contain the representations of all active subscriptions
of the functional block that invokes the method.
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
schema:
$ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription"
400:
description: >
Invalid attribute-based filtering parameters.
The response body shall contain a ProblemDetails structure, in
which the "detail" attribute should convey more information about
the error.
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
schema:
$ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails"
401:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
403:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
404:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-not-suported-VNF-LCM"
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
405:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
406:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
500:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
503:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
###############################################################################
# Individual subscription #
###############################################################################
'/subscriptions/{subscriptionId}':
#SOL003 location: 5.4.19
parameters:
- name: subscriptionId
description: >
Identifier of this subscription.
This identifier can be retrieved from the resource referenced by
the "Location" HTTP header in the response to a POST request
creating a new subscription resource. It can also be retrieved from
the "id" attribute in the payload body of that response.
in: path
type: string
required: true
get:
description: >
The GET method retrieves information about a subscription by reading
an individual subscription resource.
responses:
200:
description: >
The operation has completed successfully.
The response body shall contain a representation of the
subscription resource.
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
schema:
$ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription"
400:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
401:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
403:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
404:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-not-suported-VNF-LCM"
405:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
406:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
500:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
503:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
delete:
description: >
The DELETE method terminates an individual subscription.
responses:
204:
description: >
The subscription resource was deleted successfully.
The response body shall be empty.
400:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
401:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
403:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
404:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404-task-not-suported-VNF-LCM"
405:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
406:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
500:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
503:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"