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: - vnfPkgIds - nestedNsdInfoIds 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