Newer
Older
openapi: 3.0.2
info:
version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1
title: SOL011 - NS Lifecycle Operation Granting Interface
description: >
SOL011 - NS Lifecycle Operation Granting Interface
IMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification
it refers to. In case of discrepancies the published ETSI Group Specification takes precedence.
Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution=
license:
name: ETSI Forge copyright notice
url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
externalDocs:
description: ETSI GS NFV-SOL 011 V3.3.1
url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/011/03.03.01_60/gs_NFV-SOL011v030301p.pdf
security:
- OauthSecurity:
- all
servers:
- url: http://127.0.0.1/nslcog/v1
- url: https://127.0.0.1/nslcog/v1
paths:
"/api_versions":
$ref: '../endpoints/SOL011_endpoints.yaml#/endpoints/api_versions'
description: >-
This resource represents grant. The NFVO-N can use this resource to request a grant.
post:
description: >-
The POST method requests a grant for a particular NS lifecycle operation.
This method shall follow the provisions specified in the tables 7.5.3.3.1-1 and 7.5.3.3.1-2
for URI query parameters, request and response data structures, and response codes.
parameters:
- $ref: "../components/SOL011_params.yaml#/components/parameters/Version"
- $ref: "../components/SOL011_params.yaml#/components/parameters/Accept"
- $ref: "../components/SOL011_params.yaml#/components/parameters/ContentType"
- $ref: "../components/SOL011_params.yaml#/components/parameters/Authorization"
requestBody:
$ref: "#/components/requestBodies/GrantNsLifecycleOperationRequest"
responses:
"201":
$ref: '#/components/responses/Grants.Post.201'
"400":
$ref: ../components/SOL011_resp.yaml#/components/responses/400
"401":
$ref: ../components/SOL011_resp.yaml#/components/responses/401
"403":
$ref: '#/components/responses/Grants.Post.403'
"404":
$ref: ../components/SOL011_resp.yaml#/components/responses/404
"405":
$ref: ../components/SOL011_resp.yaml#/components/responses/405
"406":
$ref: ../components/SOL011_resp.yaml#/components/responses/406
"422":
$ref: ../components/SOL011_resp.yaml#/components/responses/422
"500":
$ref: ../components/SOL011_resp.yaml#/components/responses/500
"503":
$ref: ../components/SOL011_resp.yaml#/components/responses/503
"504":
$ref: ../components/SOL011_resp.yaml#/components/responses/504
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
"/grants/{grantId}":
description: >-
This resource represents an individual grant..
get:
description: >-
The GET method reads a grant.
This method shall follow the provisions specified in the tables 7.5.4.3.2-1 and 7.5.4.3.2-2
for URI query parameters, request and response data structures, and response codes.
parameters:
- $ref: "#/components/parameters/grantId"
- $ref: "../components/SOL011_params.yaml#/components/parameters/Version"
- $ref: "../components/SOL011_params.yaml#/components/parameters/Accept"
- $ref: "../components/SOL011_params.yaml#/components/parameters/Authorization"
responses:
"200":
$ref: '#/components/responses/Grant.Get.200'
"400":
$ref: ../components/SOL011_resp.yaml#/components/responses/400
"401":
$ref: ../components/SOL011_resp.yaml#/components/responses/401
"403":
$ref: ../components/SOL011_resp.yaml#/components/responses/403
"404":
$ref: ../components/SOL011_resp.yaml#/components/responses/404
"405":
$ref: ../components/SOL011_resp.yaml#/components/responses/405
"406":
$ref: ../components/SOL011_resp.yaml#/components/responses/406
"422":
$ref: ../components/SOL011_resp.yaml#/components/responses/422
"500":
$ref: ../components/SOL011_resp.yaml#/components/responses/500
"503":
$ref: ../components/SOL011_resp.yaml#/components/responses/503
"504":
$ref: ../components/SOL011_resp.yaml#/components/responses/504
parameters:
grantId:
name: grantId
in: path
description: >-
Identifier of the grant
required: true
schema:
$ref: '../components/SOL011_schemas.yaml#/components/schemas/Identifier'
requestBodies:
GrantNsLifecycleOperationRequest:
description: >-
The NS lifecycle operation grant request parameters, as defined in clause 7.6.2.2.
content:
application/json:
schema:
$ref: "#/components/schemas/GrantNsLifecycleOperationRequest"
responses:
Shall be returned when the grant has been created successfully.
A representation of the created "Individual grant" resource shall be returned in the response body.
The HTTP response shall include a "Location" HTTP header that indicates the URI of the
"Individual grant" resource just created.
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.
schema:
type: string
Version:
description: >
Version of the API used in the response.
schema:
type: string
Location:
description: >
URI of the "Individual grant" resource just created
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/Grant'
description: >-
Shall be returned upon the following error: the grant request was rejected.
A ProblemDetails structure shall be included in the response to provide more
details about the rejection in the "details" attribute.
headers:
Content-Type:
description: The MIME type of the body of the response.
schema:
type: string
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.
schema:
type: string
Version:
description: >
Version of the API used in the response.
schema:
type: string
content:
application/json:
schema:
$ref: '../components/SOL011_schemas.yaml#/components/schemas/ProblemDetails'
Grant.Get.200:
description: >-
Shall be returned when the grant has been read successfully.
A representation of the "Individual grant" resource shall be returned in the response body.
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.
schema:
type: string
Version:
description: >
Version of the API used in the response.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/Grant'
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
schemas:
GrantNsLifecycleOperationRequest:
description: >-
This type represents request parameters for the "grant NS lifecycle" operation.
It shall comply with the provisions defined in table 7.6.2.2-1.
type: object
required:
- nsInstanceId
- nsdId
- lifecycleOperation
properties:
nsInstanceId:
description: >-
Identifier of the NS instance which this grant request relates to.
Each NFVO-N instance manages its own namespace for NS instance identifiers.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
nsdId:
description: >-
Identifier of the NSD that defines the NS for which the lifecycle management operation is to be granted.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
lifecycleOperation:
description: >-
Type of the lifecycle management operation for which the granting is requested.
The NS LCM operations InstantiateNS, CreateNsIdentifier, DeleteNsIdentifier and
QueryNs can be executed by NFVO-N without requesting granting.
$ref: "#/components/schemas/NsLcmOperation"
additionalParams:
description: >-
Additional parameters passed by NFVO-N, specific to the NS and the lifecycle management operation.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/KeyValuePairs"
NsLcmOperation:
description: >-
The enumeration NsLcmOperation shall comply with the provisions defined in table 7.6.4.3-1.
It indicates the type of the NS lifecycle management operation for which the granting is requested.
type: string
enum:
- SCALE
- TERMINATE
- HEAL
Grant:
description: >-
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
type: object
required:
- id
- nsInstanceId
- nsLcmOpOccId
- _links
properties:
id:
description: >-
Identifier of the grant.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
nsInstanceId:
description: >-
Identifier of the NS instance which this grant request relates to.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
nsLcmOpOccId:
description: >-
Identifier of the NS lifecycle management operation occurrence associated to the GrantRequest.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
additionalParams:
description: >-
Additional parameters passed by NFVO-N, specific to the NS and the lifecycle management operation.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/KeyValuePairs"
_links:
description: >-
Links to resources related to this resource.
type: object
required:
- self
- nsLcmOpOcc
- nsInstance
properties:
self:
description: >-
URI of this resource
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Link"
nsLcmOpOcc:
description: >-
Related NS lifecycle management operation occurrence
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Link"
nsInstance:
description: >-
Related NS instance.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Link"