Commit 9fda58e2 authored by Giacomo Bernini's avatar Giacomo Bernini
Browse files

added SOL011 NSD Management openapi

parent 68b76d04
openapi: 3.0.2
info:
version: 1.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1
title: SOL011 - NSD Management Interface
description: >
SOL011 - NSD Management 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://docbox.etsi.org/ISG/NFV/Open/Drafts/SOL011ed331_Or-Or_Stage_3/NFV-SOL011ed331v010.zip
security:
- OauthSecurity:
- all
servers:
- url: http://127.0.0.1/nsd/v1
- url: https://127.0.0.1/nsd/v1
paths:
"/api_versions":
$ref: '../endpoints/SOL011_endpoints.yaml#/endpoints/api_versions'
"/ns_descriptors":
description: >-
It can be used by NFVO-C to query multiple NS descriptors from NFVO-N.
parameters:
- $ref: "../components/SOL011_params.yaml#/components/parameters/Version"
- $ref: "../components/SOL011_params.yaml#/components/parameters/Accept"
- $ref: "../components/SOL011_params.yaml#/components/parameters/Authorization"
get:
description: >-
The GET method queries information about multiple NS descriptor resources.
This method shall follow the provisions specified in the clause 5.4.2.3.2 of ETSI GS NFV-SOL 005.
parameters:
- $ref: "../components/SOL011_params.yaml#/components/parameters/filter"
- $ref: "../components/SOL011_params.yaml#/components/parameters/all_fields"
- $ref: "../components/SOL011_params.yaml#/components/parameters/fields"
- $ref: "../components/SOL011_params.yaml#/components/parameters/exclude_fields"
- $ref: "../components/SOL011_params.yaml#/components/parameters/exclude_default"
- $ref: "../components/SOL011_params.yaml#/components/parameters/nextpage_opaque_marker"
responses:
200:
$ref: "#/components/responses/NsdInfos.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"
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"
'/ns_descriptors/{nsdInfoId}':
description: >-
It can be used by NFVO-C to query an individual NS descriptor from NFVO-N.
parameters:
- $ref: "#/components/parameters/nsdInfoId"
- $ref: "../components/SOL011_params.yaml#/components/parameters/Version"
- $ref: "../components/SOL011_params.yaml#/components/parameters/Accept"
- $ref: "../components/SOL011_params.yaml#/components/parameters/Authorization"
get:
description: >
The GET method reads information about an individual NS descriptor resource.
This method shall follow the provisions specified in the clause 5.4.3.3.2 of ETSI GS NFV-SOL 005.
responses:
200:
$ref: "#/components/responses/NsdInfo.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"
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"
components:
parameters:
nsdInfoId:
name: nsdInfoId
description: >
Identifier of the individual NS descriptor resource.
in: path
required: true
schema:
type: string
responses:
NsdInfos.Get.200:
description: >-
200 OK
Information about zero or more NS descriptors.
The response body shall contain in an array the
representations of zero or more NS descriptors, as
defined in clause 5.5.2.2.
If the NFVO supports alternative 2 (paging) according
to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for
this resource, inclusion of the Link HTTP header in
this response shall follow the provisions in clause
5.4.2.3 of ETSI GS NFV-SOL 013.
headers:
Content-Type:
description: The MIME type of the body of the response.
schema:
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.
schema:
type: string
maximum: 1
minimum: 0
Version:
description: >
Version of the API used in the response.
schema:
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.
schema:
type: string
maximum: 1
minimum: 0
content:
application/json:
schema:
$ref: "#/components/schemas/NsdInfos.Get.Response"
NsdInfo.Get.200:
description: >-
200 OK
Information about the individual NS descriptor.
The response body shall contain a representation of the individual NS descriptor,
as defined in clause 5.5.2.2.
headers:
Content-Type:
description: The MIME type of the body of the response.
schema:
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.
schema:
type: string
maximum: 1
minimum: 0
Version:
description: >
Version of the API used in the response.
schema:
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.
schema:
type: string
maximum: 1
minimum: 0
content:
application/json:
schema:
$ref: "#/components/schemas/NsdInfo"
schemas:
NsdInfos.Get.Response:
description: >
This type represents a response for the query NSD operation.
type: array
items:
$ref: "#/components/schemas/NsdInfo"
NsdInfo:
description: >
This type represents a response for the query NSD operation.
type: object
required:
- id
- nsdOnboardingState
- nsdOperationalState
- nsdUsageState
- _links
- oneOf:
- vnfPkgId
- nestedNsdInfoId
properties:
id:
description: >
Identifier of the on boarded individual NS descriptor
resource. This identifier is allocated by the NFVO.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
nsdId:
description: >
This identifier, which is allocated by the NSD
designer, identifies the NSD in a globally unique
way. It is copied from the NSD content and shall be
present after the NSD content is on-boarded.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
nsdName:
type: string
description: >
Name of the on boarded NSD. This information is copied from the
NSD content and shall be present after the NSD content is on-boarded.
nsdVersion:
description: >
Version of the on-boarded NSD. This information is
copied from the NSD content and shall be present
after the NSD content is on-boarded.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Version"
nsdDesigner:
type: string
description: >
Designer of the on-boarded NSD. This information is copied
from the NSD content and shall be present after the NSD content is on-boarded.
nsdInvariantId:
description: >
This identifier, which is allocated by the NSD
designer, identifies an NSD in a version independent
manner. This information is copied from the NSD
content and shall be present after the NSD content is
on-boarded.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
vnfPkgIds:
description: >
Identifies the VNF package for the VNFD referenced
by the on-boarded NS descriptor resource.
type: array
items:
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
pnfdInfoIds:
description: >
Identifies the PnfdInfo element for the PNFD
referenced by the on-boarded NS descriptor
resource.
type: array
items:
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
nestedNsdInfoIds:
description: >
Identifies the NsdInfo element for the nested NSD
referenced by the on-boarded NS descriptor
resource.
type: array
items:
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
nsdOnboardingState:
description: >
On boarding state of the individual NS descriptor resource.
$ref: "#/components/schemas/NsdOnboardingStateType"
onboardingFailureDetails:
description: >
Failure details of current on boarding procedure. See
clause 6.3 of ETSI GS NFV-SOL 013 for the details of "ProblemDetails"
structure.
It shall be present when the "nsdOnboardingState"
attribute is CREATED and the uploading or
processing fails in NFVO.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/ProblemDetails"
nsdOperationalState:
description: >
Operational state of the individual NS descriptor
resource. This attribute can be modified with the
PATCH method.
$ref: "#/components/schemas/NsdOperationalStateType"
nsdUsageState:
description: >
Usage state of the individual NS descriptor resource.
$ref: "#/components/schemas/NsdUsageStateType"
userDefinedData:
description: >
User defined data for the individual NS descriptor
resource. This attribute can be modified with the
PATCH method.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/KeyValuePairs"
_links:
type: object
required:
- self
- nsd_content
description: >
Links to resources related to this resource.
properties:
self:
description: >
URI of this resource.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Link"
nsd_content:
description: >
Link to the NSD content resource.
$ref: "../components/SOL011_schemas.yaml#/components/schemas/Link"
NsdOperationalStateType:
type: string
description: >
The enumeration NsdOperationalStateType shall comply with the provisions
defined in Table 5.5.4.3-1 of GS NFV_SOL 005. It indicates the operational
state of the resource.
ENABLED = The operational state of the resource is enabled.
DISABLED = The operational state of the resource is disabled.
enum:
- ENABLED
- DISABLED
NsdUsageStateType:
type: string
description: >
The enumeration NsdUsageStateType shall comply with the provisions
defined in Table 5.5.4.4-1 of GS NFV-SOL 005. It indicates the usage state
of the resource.IN_USE = The resource is in use.NOT_IN_USE = The resource
is not-in-use.
enum:
- IN_USE
- NOT_IN_USE
NsdOnboardingStateType:
type: string
description: >
The enumeration NsdOnboardingStateType shall comply with the provisions
defined in Table 5.5.4.5-1 of GS NFV-SOL 005. It indicates the on-boarding
state of the NSD.
CREATED = The NSD information object is created.
UPLOADING = The associated NSD content is being uploaded.
PROCESSING = The associated NSD content is being processed, e.g. validation.
ONBOARDED = The associated NSD content is on-boarded.
enum:
- CREATED
- UPLOADING
- PROCESSING
- ONBOARDED
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment