Newer
Older
If the VNFM supports alternative 2 (paging) according to clause 4.7.2.1 for this resource,
inclusion of the Link HTTP header in this response shall follow the provisions in clause 4.7.2.3.
Michele Carignani
committed
headers:
#TODO: Add headers defined in 4.3.4.3
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
description: >
The used API version.
type: string
maximum: 1
minimum: 1
Link:
description: >
Reference to other resources. Used for paging in the present document, see clause 4.7.2.1.
type: string
maximum: 1
minimum: 0
Michele Carignani
committed
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
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
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"
405:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
406:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
409:
$ref: "responses/VNFLifecycleManagement_resp.yaml#/responses/409-inconsistent-state"
500:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
503:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
###############################################################################
# Individual VNF LCM operation occurrence #
###############################################################################
'/vnf_lcm_op_occs/{vnfLcmOpOccId}':
#SOL003 location: 5.4.13
parameters:
- name: vnfLcmOpOccId
description: >
Identifier of a VNF lifecycle management operation occurrence.
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
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
Michele Carignani
committed
get:
description: >
The client can use this method to retrieve status information about a
VNF lifecycle management operation occurrence by reading an individual
"VNF LCM operation occurrence" resource.
responses:
200:
description: >
Michele Carignani
committed
Information about an individual VNF instance was queried
successfully. The response body shall contain status
information about a VNF lifecycle management operation
occurrence.
headers:
#TODO: Add headers defined in 4.3.4.3
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
Version:
description: The used API version.
type: string
maximum: 1
minimum: 1
schema:
Michele Carignani
committed
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
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"
405:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
406:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
409:
$ref: "responses/VNFLifecycleManagement_resp.yaml#/responses/409-inconsistent-state"
500:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
503:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
###############################################################################
# Retry operation task #
###############################################################################
'/vnf_lcm_op_occs/{vnfLcmOpOccId}/retry':
#SOL003 location: 5.4.14
parameters:
- name: vnfLcmOpOccId
description: >
Identifier of a VNF lifecycle management operation occurrence to be
retried. 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
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
Michele Carignani
committed
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
post:
description: >
The POST method initiates retrying 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-not-suported-VNF-LCM"
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"
###############################################################################
# Rollback operation task #
###############################################################################
'/vnf_lcm_op_occs/{vnfLcmOpOccId}/rollback':
#SOL003 location: 5.4.15
parameters:
- name: vnfLcmOpOccId
description: >
Identifier of a VNF lifecycle management operation occurrence to be
be rolled back. 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
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
Michele Carignani
committed
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
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-not-suported-VNF-LCM"
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
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
Michele Carignani
committed
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: >
Michele Carignani
committed
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
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
Version:
description: The used API version.
type: string
maximum: 1
minimum: 1
schema:
Michele Carignani
committed
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
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-not-suported-VNF-LCM"
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
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
Michele Carignani
committed
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
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-not-suported-VNF-LCM"
405:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
406:
$ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
409:
description: >
Michele Carignani
committed
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
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
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
Version:
description: The used API version.
type: string
maximum: 1
minimum: 1
schema:
Michele Carignani
committed
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
parameters:
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
Michele Carignani
committed
post:
description: >
The POST method creates a new subscription.
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: >
Michele Carignani
committed
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
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
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
Version:
description: The used API version.
type: string
maximum: 1
minimum: 1
Michele Carignani
committed
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
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"
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.
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
parameters:
- name: filter
description: >
Attribute-based filtering expression according to clause 4.3.2.
The VNFM shall support receiving this parameter as part of the URI query string.
The EM may supply this parameter. All attribute names that appear in the LccnSubscription
and in data types referenced from it shall be supported by the VNFM in the filter expression.
EXAMPLE
objects
obj1: {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]}
obj2: {"id":456, "weight":500, "parts":[{"id":3, "color":"green"}, {"id":4, "color":"blue"}]}
Request 1:
GET …/container
Response 1:
[
{"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]},
{"id":456, "weight":500, "parts":[{"id":3, "color":"green"}, {"id":4, "color":"blue"}]}
]
Request 2:
GET …/container?filter=(eq.weight,100)
Response 2:
[
{"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]}
]
#Request 2 in EXAMPLE from clause 4.3.2 probably wrong, since "," should be used after opOne (eq), "." is used
in: query
required: false
type: string
Michele Carignani
committed
responses:
200:
description: >
The list of subscriptions was queried successfully.
The response body shall contain in an array the representations of all active subscriptions
of the functional block that invokes the method, i.e. zero or more representations of lifecycle
change notification subscriptions as defined in clause 5.5.2.16.
Michele Carignani
committed
headers:
Content-Type:
description: The MIME type of the body of the response.
type: string
maximum: 1
minimum: 1
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
Version:
description: The used API version.
type: string
maximum: 1
minimum: 1
Michele Carignani
committed
schema:
$ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription"
400:
description: >
Michele Carignani
committed
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
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
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
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"
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: >
Michele Carignani
committed
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
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
Michele Carignani
committed
get:
description: >
The GET method retrieves information about a subscription by reading
an individual subscription resource.
responses:
200:
description: >
Michele Carignani
committed
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
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
Version:
description: The used API version.
type: string
maximum: 1
minimum: 1
Michele Carignani
committed
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
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: >
Michele Carignani
committed
The subscription resource was deleted successfully.
The response body shall be empty.
headers:
WWW-Authenticate:
description: >
Challenge if the corresponding HTTP request has not provided
authorization, or error details if the corresponding HTTP
request has provided an invalid authorization token.
type: string
maximum: 1
minimum: 0
Version:
description: The used API version.
type: string
maximum: 1
minimum: 1
Michele Carignani
committed
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"