Newer
Older
swagger: "2.0"
info:
IMPORTANT: Please note that this file might be not aligned to the current
version of the ETSI Group Specification it refers to and has not been
approved by the ETSI NFV ISG. 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
license:
name: "ETSI Forge copyright notice"
url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
moscatelli
committed
contact:
name: "NFV-SOL WG"
externalDocs:
description: ETSI GS NFV-SOL 005 V2.4.1
url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf
basePath: "/nslcm/v1"
schemes:
- https
consumes:
- "application/json"
produces:
moscatelli
committed
- "application/json"
moscatelli
committed
###############################################################################
# NSInstances #
###############################################################################
'/ns_instances':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.2
post:
summary: Create a NS instance resource.
description: >
The POST method creates a new NS instance resource.
parameters:
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- name: Content-Type
description: >
The MIME type of the body of the request.
Reference: IETF RFC 7231
in: header
required: true
moscatelli
committed
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
- name: "body"
in: "body"
required: true
schema:
type: "object"
required:
moscatelli
committed
- "CreateNsRequest"
properties:
CreateNsRequest:
$ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/CreateNsRequest"
description: >
The NS creation parameters, as defined in clause 6.5.2.7.
moscatelli
committed
responses:
moscatelli
committed
A NS Instance identifier was created successfully.
The response body shall contain a representation of
the created NS instance, as defined in clause 6.5.2.8.
The HTTP response shall include a "Location" HTTP
header that contains the resource URI of the created
NS instance.
schema:
type: "object"
properties:
NsInstance:
$ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance"
Content-Type:
type: "string"
description: >
The MIME type of the body of the response.This header
field shall be present if the response has a non-empty message
body.
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.
Samir Medjiah
committed
Version:
description: >
Version of the API used in the response.
type: string
maximum: 1
Samir Medjiah
committed
minimum: 1
400:
$ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state"
416:
$ref: "responses/SOL005_resp.yaml#/responses/416"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
moscatelli
committed
$ref: "responses/SOL005_resp.yaml#/responses/503"
rameshnaraya
committed
Query NS Instances.
moscatelli
committed
The GET method queries information about multiple NS instances.
This method shall support the URI query parameters, request and response data structures, and response codes, as
specified in the Tables 6.4.2.3.2-1 and 6.4.2.3.2-2.
parameters:
- name: "filter"
in: "query"
required: false
type: "string"
moscatelli
committed
description: >
Samir Medjiah
committed
"Attribute-based filtering expression according to clause 4.3.2.
The NFVO shall support receiving this parameter as part of the URI
query string. The OSS/BSS may supply this parameter.
All attribute names that appear in the NsInstance and in data types
Samir Medjiah
committed
referenced from it shall be supported by the NFVO in the filter expression."
- name: "all_fields"
in: "query"
required: false
type: "string"
moscatelli
committed
description: >
"Include all complex attributes in the response. See clause 4.3.3 for details.
The NFVO shall support this parameter."
- name: "fields"
in: "query"
required: false
type: "string"
moscatelli
committed
description: >
"Complex attributes to be included into the response. See clause 4.3.3 for
details. The NFVO should support this parameter."
- name: "exclude_fields"
in: "query"
required: false
type: "string"
moscatelli
committed
description: >
"Complex attributes to be excluded from the response. See clause 4.3.3 for
details. The NFVO should support this parameter."
- name: "exclude_default"
in: "query"
required: false
type: "string"
moscatelli
committed
description: >
"Indicates to exclude the following complex attributes from the response.
See clause 4.3.3 for details. The NFVO shall support this parameter.
The following attributes shall be excluded from the NsInstance structure in
the response body if this parameter is provided, or none of the parameters
"all_fields," "fields", "exclude_fields", "exclude_default" are provided:
- vnfInstances
- pnfInfo
- virtualLinkInfo
- vnffgInfo
- sapInfo
- nsScaleStatus
- additionalAffinityOrAntiAffinityRules"
- name: nextpage_opaque_marker
in: query
description: >
Marker to obtain the next page of a paged response. Shall be supported by the NFVO
if the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource.
required: false
type: string
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
moscatelli
committed
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
responses:
200:
description: >
moscatelli
committed
Information about zero or more NS instances was
queried successfully.
The response body shall contain representations of
zero or more NS instances, as defined in
clause 6.5.2.8.
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.
maximum: 1
moscatelli
committed
minimum: 0
Samir Medjiah
committed
Version:
description: >
Version of the API used in the response.
type: string
maximum: 1
Samir Medjiah
committed
minimum: 1
schema:
type: array
items:
moscatelli
committed
$ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance"
400:
$ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state"
416:
$ref: "responses/SOL005_resp.yaml#/responses/416"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
moscatelli
committed
###############################################################################
# Individual NS instance #
###############################################################################
'/ns_instances/{nsInstanceId}':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.3
parameters:
- name: nsInstanceId
description: >
Identifier of the NS instance.
in: path
type: string
required: true
get:
description: >
The GET method retrieves information about a NS instance by
reading an individual NS instance resource.
parameters:
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- name: Content-Type
description: >
The MIME type of the body of the request.
Reference: IETF RFC 7231
in: header
required: true
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
moscatelli
committed
Information about an individual NS instance was queried successfully.
The response body shall contain a representation of the NS instance.
schema:
type: "object"
properties:
NsInstance:
$ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance"
headers:
Content-Type:
type: "string"
description: >
The MIME type of the body of the response.This header
field shall be present if the response has a non-empty message body.
moscatelli
committed
minimum: 1
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.
maximum: 1
minimum: 0
Samir Medjiah
committed
Version:
description: >
Version of the API used in the response.
type: string
maximum: 1
Samir Medjiah
committed
minimum: 1
400:
$ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state"
416:
$ref: "responses/SOL005_resp.yaml#/responses/416"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
moscatelli
committed
$ref: "responses/SOL005_resp.yaml#/responses/503"
description: >
Delete NS Identifier
moscatelli
committed
This method deletes an individual NS instance resource.
parameters:
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
responses:
204:
description: >
204 No Content
moscatelli
committed
The NS instance resource and the associated NS
identifier were 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.
maximum: 1
minimum: 0
Samir Medjiah
committed
Version:
description: >
Version of the API used in the response.
type: string
maximum: 1
Samir Medjiah
committed
minimum: 1
400:
$ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-INSTANTIATED"
412:
$ref: "responses/SOL005_resp.yaml#/responses/412"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Instantiate NS task #
###############################################################################
'/ns_instances/{nsInstanceId}/instantiate':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.4
parameters:
- name: nsInstanceId
description: >
Identifier of the NS instance to be instantiated.
in: path
type: string
required: true
moscatelli
committed
post:
description: >
The POST method requests to instantiate a NS instance resource.
parameters:
moscatelli
committed
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- name: Content-Type
description: >
The MIME type of the body of the request.
Reference: IETF RFC 7231
in: header
required: true
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
moscatelli
committed
- name: "body"
in: "body"
required: true
schema:
type: "object"
required:
- "InstantiateNsRequest"
properties:
InstantiateNsRequest:
$ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/InstantiateNsRequest"
description: >
Parameters for the instantiate NS operation, as defined in clause 6.5.2.10.
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location"
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-INSTANTIATED"
416:
$ref: "responses/SOL005_resp.yaml#/responses/416"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Scale NS task #
###############################################################################
'/ns_instances/{nsInstanceId}/scale':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.5
parameters:
- name: nsInstanceId
description: >
Identifier of the NS instance to be scaled.
in: path
type: string
required: true
moscatelli
committed
post:
description: >
The POST method requests to scale a NS instance resource.
moscatelli
committed
parameters:
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- name: Content-Type
description: >
The MIME type of the body of the request.
Reference: IETF RFC 7231
in: header
required: true
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
moscatelli
committed
- name: "body"
in: "body"
required: true
schema:
type: "object"
required:
- "ScaleNsRequest"
properties:
ScaleNsRequest:
$ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/ScaleNsRequest"
description: >
Parameters for the scale NS operation, as defined in clause 6.5.2.13.
responses:
202:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location"
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404-task-resource-not-exists"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
moscatelli
committed
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-NOT-INSTANTIATED"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Update NS task #
###############################################################################
'/ns_instances/{nsInstanceId}/update':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.6
parameters:
- name: nsInstanceId
description: >
Identifier of the NS instance to be updated.
in: path
type: string
required: true
moscatelli
committed
post:
description: >
Scale NS instance.
The POST method requests to scale a NS instance resource.
moscatelli
committed
parameters:
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- name: Content-Type
description: >
The MIME type of the body of the request.
Reference: IETF RFC 7231
in: header
required: true
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
moscatelli
committed
- name: "body"
in: "body"
required: true
schema:
type: "object"
required:
- "UpdateNsRequest"
properties:
UpdateNsRequest:
$ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/UpdateNsRequest"
description: >
Parameters for the update NS operation, as defined in clause 6.5.2.11.
moscatelli
committed
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location"
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404-task-resource-not-exists"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-NOT-INSTANTIATED"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Heal NS task #
###############################################################################
'/ns_instances/{nsInstanceId}/heal':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.7
parameters:
- name: nsInstanceId
description: >
Identifier of the NS instance to be healed.
in: path
type: string
required: true
post:
moscatelli
committed
summary: Heal a NS instance.
description: >
The POST method requests to heal a NS instance resource.
This method shall follow the provisions specified in the Tables 6.4.7.3.1-1 and
6.4.7.3.1-2 for URI query parameters,
request and response data structures, and response codes.
moscatelli
committed
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- name: Content-Type
description: >
The MIME type of the body of the request.
Reference: IETF RFC 7231
in: header
required: true
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
moscatelli
committed
- name: "body"
in: "body"
required: true
schema:
type: "object"
required:
- "HealNsRequest"
properties:
HealNsRequest:
$ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/HealNsRequest"
description: >
Parameters for the heal NS operation, as defined in clause 6.5.2.12.
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location"
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404-task-resource-not-exists"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-NOT-INSTANTIATED"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
moscatelli
committed
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Terminate NS task #
###############################################################################
'/ns_instances/{nsInstanceId}/terminate':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.8
parameters:
- name: nsInstanceId
description: >
The identifier of the NS instance to be terminated.
in: path
type: string
required: true
post:
summary: Terminate a NS instance.
description: >
Terminate NS task.
The POST method terminates a NS instance. This method can only be
used with a NS instance in the INSTANTIATED
state. Terminating a NS instance does not delete the NS instance identifier,
but rather transitions the NS into the NOT_INSTANTIATED state.
This method shall support the URI query parameters, request and
response data structures, and response codes, as
specified in the Tables 6.4.8.3.1-1 and 6.8.8.3.1-2.
moscatelli
committed
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- name: Content-Type
description: >
The MIME type of the body of the request.
Reference: IETF RFC 7231
in: header
required: true
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
moscatelli
committed
- name: "body"
in: "body"
required: true
schema:
type: "object"
required:
- "TerminateNsRequest"
properties:
TerminateNsRequest:
$ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/TerminateNsRequest"
description: >
The terminate NS request parameters, as defined in clause 6.5.2.14.
moscatelli
committed
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location"
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404-task-resource-not-exists"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-NOT-INSTANTIATED"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
moscatelli
committed
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# NS LCM operation occurrences #
###############################################################################
'/ns_lcm_op_occs':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.9
get:
summary: Query multiple NS LCM operation occurrences.
rameshnaraya
committed
Get Operation Status.
The client can use this method to query status information about multiple NS lifecycle management operation
occurrences.
This method shall follow the provisions specified in the Tables 6.4.9.3.2-1 and 6.4.9.3.2-2 for URI query parameters,
request and response data structures, and response codes.
parameters:
- name: "filter"
in: "query"
required: false
type: "string"
moscatelli
committed
description: >
Samir Medjiah
committed
Attribute-based filtering expression according to clause 4.3.2.
The NFVO shall support receiving this parameter as part of the URI query string.
The OSS/BSS may supply this parameter.
All attribute names that appear in the NsLcmOpOcc and in data types referenced
Samir Medjiah
committed
from it shall be supported by the NFVO in the filter expression.
- name: "fields"
in: "query"
required: false
type: "string"
moscatelli
committed
description: >
Complex attributes to be included into the response. See clause 4.3.3 for details. The
NFVO should support this parameter.
- name: "exclude_fields"
in: "query"
required: false
type: "string"
moscatelli
committed
description: >
Complex attributes to be excluded from the response. See clause 4.3.3 for details.
The NFVO should support this parameter.
- name: "exclude_default"
in: "query"
required: false
type: "string"
moscatelli
committed
description: >
Indicates to exclude the following complex attributes from the response. See
clause 4.3.3 for details. The NFVO shall support this parameter.
The following attributes shall be excluded from the NsLcmOpOcc structure in the
response body if this parameter is provided:
- operationParams
- changedVnfInfo
- error
- resourceChanges
- name: nextpage_opaque_marker
in: query
description: >
Marker to obtain the next page of a paged response. Shall be supported by the NFVO
if the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource.
required: false
type: string
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
rameshnaraya
committed
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
responses:
200:
description: >
moscatelli
committed
Status information for zero or more NS lifecycle
management operation occurrences was queried successfully.
The response body shall contain representations of
zero or more NS instances, as defined in
clause 5.5.2.13.
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.
maximum: 1
moscatelli
committed
minimum: 0
Samir Medjiah
committed
Version:
description: >
Version of the API used in the response.
type: string
maximum: 1
Samir Medjiah
committed
minimum: 1
schema:
type: array
items:
moscatelli
committed
$ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/NsLcmOpOcc"
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Individual NS lifecycle operation occurrence #
###############################################################################
'/ns_lcm_op_occs/{nsLcmOpOccId}':
rameshnaraya
committed
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.10
parameters:
- name: nsLcmOpOccId
description: >
Identifier of a NS lifecycle management operation occurrence.
in: path
type: string
required: true
moscatelli
committed
get:
summary: Read an individual NS LCM operation occurrence resource.
moscatelli
committed
The client can use this method to retrieve status information about
a NS lifecycle management operation occurrence by
reading an individual "NS LCM operation occurrence" resource.
This method shall follow the provisions specified in the
Tables 6.4.10.3.2-1 and 6.4.10.3.2-2 for URI query parameters,
request and response data structures, and response codes.
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
parameters:
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- name: Content-Type
description: >
The MIME type of the body of the request.
Reference: IETF RFC 7231
in: header
required: true
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
moscatelli
committed
Information about an individual NS instance was queried successfully.
The response body shall contain status information
about a NS lifecycle management operation
occurrence (see clause 6.5.2.3).
moscatelli
committed
type: "object"
properties:
NsLcmOpOcc:
$ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/NsLcmOpOcc"
headers:
Content-Type:
The MIME type of the body of the response.This header
field shall be present if the response has a non-empty message body.
moscatelli
committed
minimum: 1
rameshnaraya
committed
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.
moscatelli
committed
minimum: 0
Samir Medjiah
committed
Version:
description: >
Version of the API used in the response.
type: string
maximum: 1
Samir Medjiah
committed
minimum: 1
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state"
416:
$ref: "responses/SOL005_resp.yaml#/responses/416"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
moscatelli
committed
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Retry operation task #
###############################################################################
'/ns_lcm_op_occs/{nsLcmOpOccId}/retry':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.11
parameters:
- name: nsLcmOpOccId
description: >
Identifier of a NS lifecycle management operation occurrence to be retried.
moscatelli
committed
This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response
to a POST request triggering a NS LCM operation. It can also be retrieved from the "nsLcmOpOccId"
attribute in the NsLcmOperationOccurrenceNotification.
in: path
type: string
required: true
post:
summary: Retry a NS lifecycle management operation occurrence.
description: >
The POST method initiates retrying a NS lifecycle management operation
if that operation has experienced a temporary
failure, i.e. the related "NS LCM operation occurrence" is in "FAILED_TEMP" state.
This method shall follow the provisions specified in the
Tables 6.4.11.3.1-1 and 6.4.11.3.1-2 for URI query parameters,
request and response data structures, and response codes.
parameters:
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
responses:
202:
$ref: "responses/SOL005_resp.yaml#/responses/202"
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404-task-resource-not-exists-NS-LCM"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Rollback a NS lifecycle management operation occurrence. #
###############################################################################
'/ns_lcm_op_occs/{nsLcmOpOccId}/rollback':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.12
parameters:
- name: nsLcmOpOccId
description: >
Identifier of a NS lifecycle management operation occurrence to be rolled back.
moscatelli
committed
This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response
to a POST request triggering a NS LCM operation. It can also be retrieved from the "nsLcmOpOccId"
attribute in the NsLcmOperationOccurrenceNotification.
in: path
required: true
type: string
post:
summary: Rollback a NS lifecycle management operation occurrence.
description: >
The POST method initiates rolling back a NS lifecycle operation
if that operation has experienced a temporary failure,
i.e. the related "NS LCM operation occurrence" is in "FAILED_TEMP" state.
This method shall follow the provisions specified in the
Tables 6.4.12.3.1-1 and 6.4.12.3.1-2 for URI query parameters,
request and response data structures, and response codes.
parameters:
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
responses:
202:
$ref: "responses/SOL005_resp.yaml#/responses/202"
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404-not-found"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Continue a NS lifecycle management operation occurrence. #
###############################################################################
'/ns_lcm_op_occs/{nsLcmOpOccId}/continue':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.13
parameters:
- name: nsLcmOpOccId
description: >
Identifier of a NS lifecycle management operation occurrence to be continued.
in: path
required: true
type: string
moscatelli
committed
post:
summary: Continue a NS lifecycle management operation occurrence.
description: >
The POST method initiates continuing an NS lifecycle operation if that operation has experienced a temporary failure,
i.e. the related "NS LCM operation occurrence" is in "FAILED_TEMP" state.
This method shall follow the provisions specified in the Tables 6.4.13.3.1-1 and 6.4.13.3.1-2 for URI query parameters,
request and response data structures, and response codes.
parameters:
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
responses:
202:
$ref: "responses/SOL005_resp.yaml#/responses/202"
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404-not-found"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Fail operation task #
###############################################################################
'/nslcm/v1/ns_lcm_op_occs/{nsLcmOpOccId}/fail':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.14
parameters:
- name: nsLcmOpOccId
description: >
Identifier of a NS lifecycle management operation occurrence to be marked as "failed".
moscatelli
committed
This identifier can be retrieved from the resource referenced by
he "Location" HTTP header in the response
to a POST request triggering a NS LCM operation.
It can also be retrieved from the "nsLcmOpOccId"
attribute in the NsLcmOperationOccurrenceNotification.
in: path
required: true
type: string
post:
summary: Mark a NS lifecycle management operation occurrence as failed.
description: >
The POST method marks a NS lifecycle management operation
occurrence as "finally failed" if that operation
occurrence is in "FAILED_TEMP" state.
parameters:
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
schema:
type: "object"
description: >
The state of the NS lifecycle management operation
occurrence was changed successfully.
The response shall include a representation of the NS
lifecycle management operation occurrence resource.
properties:
NsLcmOpOcc:
$ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/NsLcmOpOcc"
headers:
Content-Type:
type: "string"
description: >
The MIME type of the body of the response.This header
field shall be present if the response has a non-empty message
body.
moscatelli
committed
minimum: 1
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.
moscatelli
committed
minimum: 0
Samir Medjiah
committed
Version:
description: >
Version of the API used in the response.
type: string
maximum: 1
Samir Medjiah
committed
minimum: 1
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404-not-found"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
$ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Cancel operation task #
###############################################################################
'/nslcm/v1/ns_lcm_op_occs/{nsLcmOpOccId}/cancel':
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.15
parameters:
- name: nsLcmOpOccId
description: >
Identifier of a NS lifecycle management operation occurrence to be canceled.
moscatelli
committed
This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response
to a POST request triggering a NS LCM operation. It can also be retrieved from the "nsLcmOpOccId"
attribute in the NsLcmOperationOccurrenceNotification.
in: path
required: true
type: string
post:
summary: Cancel a NS lifecycle management operation occurrence.
description: >
The POST method initiates canceling an ongoing NS lifecycle
management operation while it is being executed or
rolled back, i.e. the related "NS LCM operation occurrence" is
either in "PROCESSING" or "ROLLING_BACK" state.
This method shall follow the provisions specified in the
Tables 6.4.15.3.1-1 and 6.4.15.3.1-2 for URI query parameters,
request and response data structures, and response codes.
parameters:
moscatelli
committed
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- name: Content-Type
description: >
The MIME type of the body of the request.
Reference: IETF RFC 7231
in: header
required: true
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
moscatelli
committed
- name: "body"
in: "body"
required: true
schema:
type: "object"
required:
- "CancelMode"
properties:
CancelMode:
$ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/CancelMode"
description: >
The POST request to this resource shall include a CancelMode
structure in the payload body to choose between "graceful" and
"forceful" cancellation.
responses:
202:
$ref: "responses/SOL005_resp.yaml#/responses/202"
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404-task-resource-not-exists-NS-LCM"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
409:
moscatelli
committed
description: >
rameshnaraya
committed
409 Conflict.
Error: The operation cannot be executed currently, due
to a conflict with the state of the NS 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.
maximum: 1
minimum: 0
schema:
$ref: "definitions/SOL005_def.yaml#/definitions/ProblemDetails"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
###############################################################################
# Subscriptions #
###############################################################################
#ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.16
moscatelli
committed
post:
summary: Subscribe to NS lifecycle change notifications.
description: >
The POST method creates a new subscription.
This method shall support the URI query parameters, request and response data structures, and response codes, as
specified in the Tables 6.4.16.3.1-1 and 6.4.16.3.1-2.
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 OSS, and might make sense only in very rare use cases.
Consequently, the NFVO 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:
moscatelli
committed
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
- name: Content-Type
description: >
The MIME type of the body of the request.
Reference: IETF RFC 7231
in: header
required: true
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
moscatelli
committed
- name: "body"
in: "body"
required: true
schema:
type: "object"
required:
- "LccnSubscriptionRequest"
properties:
LccnSubscriptionRequest:
$ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscriptionRequest"
description: >
Details of the subscription to be created, as defined in clause 6.5.2.2.
moscatelli
committed
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.
moscatelli
committed
type: "object"
properties:
LccnSubscription:
$ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscription"
Content-Type:
type: "string"
description: >
The MIME type of the body of the response.This header
field shall be present if the response has a non-empty message
body.
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.
Samir Medjiah
committed
Version:
description: >
Version of the API used in the response.
type: string
maximum: 1
Samir Medjiah
committed
minimum: 1
moscatelli
committed
description: >
rameshnaraya
committed
See Other.
moscatelli
committed
A subscription with the same callbackURI and the
same filter already exits and the policy of the NFVO
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:
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.
maximum: 1
minimum: 0
Samir Medjiah
committed
Version:
description: >
Version of the API used in the response.
type: string
maximum: 1
Samir Medjiah
committed
minimum: 1
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
$ref: "responses/SOL005_resp.yaml#/responses/401"
403:
$ref: "responses/SOL005_resp.yaml#/responses/403"
404:
$ref: "responses/SOL005_resp.yaml#/responses/404-task-not-suported-NS-LCM"
405:
$ref: "responses/SOL005_resp.yaml#/responses/405"
406:
$ref: "responses/SOL005_resp.yaml#/responses/406"
500:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
moscatelli
committed
get:
rameshnaraya
committed
Query Subscription Information.
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.
parameters:
Samir Medjiah
committed
- name: filter
in: query
required: false
type: string
description: >
Attribute-based filtering expression according to clause 4.3.2.
The NFVO shall support receiving this parameter as part of the URI query string.
The OSS/BSS may supply this parameter.
All attribute names that appear in the LccnSubscription and in data types
referenced from it shall be supported by the NFVO in the filter expression.
- name: nextpage_opaque_marker
in: query
description: >
Marker to obtain the next page of a paged response. Shall be supported by the NFVO
if the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource.
required: false
type: string
- name: Accept
description: >
Content-Types that are acceptable for the response.
Reference: IETF RFC 7231
in: header
required: true
type: string
- name: Authorization
description: >
The authorization token for the request.
Reference: IETF RFC 7235
in: header
required: false
type: string
Samir Medjiah
committed
- name: Version
description: >
Version of the API requested to use when responding to this request.
in: header
required: true
type: string
moscatelli
committed
The list of subscriptions was queried successfully.
The response body shall contain the representations of
all active subscriptions of the functional block that
headers:
Content-Type:
type: "string"
description: >
The MIME type of the body of the response.This header
field shall be present if the response has a non-empty message
body.
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.
maximum: 1
moscatelli
committed
minimum: 0
Samir Medjiah
committed
Version:
description: >
Version of the API used in the response.
type: string
maximum: 1
Samir Medjiah
committed
minimum: 1
type: array
items:
properties:
LccnSubscription:
$ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscription"
moscatelli
committed
description: >