diff --git a/SOL003/VNFLifecycleManagement-API_egm/SOL003-VNFLifecycleManagement-API.yaml b/SOL003/VNFLifecycleManagement-API_egm/SOL003-VNFLifecycleManagement-API.yaml new file mode 100644 index 0000000000000000000000000000000000000000..69590be246383deac674d613cfab64e789bbe335 --- /dev/null +++ b/SOL003/VNFLifecycleManagement-API_egm/SOL003-VNFLifecycleManagement-API.yaml @@ -0,0 +1,34385 @@ +swagger: '2.0' +info: + version: 1.1.1 + title: SOL003 - VNF Lifecycle Management interface + description: > + SOL003 - VNF Lifecycle Management interface definition + + + 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. + + + In clause 4.3.2 of ETSI GS NFV-SOL 003 v2.4.1, an attribute-based filtering + mechanism is defined. This mechanism is currently not included in the + corresponding OpenAPI design for this GS version. Changes to the + attribute-based filtering mechanism are being considered in v2.5.1 of this + GS for inclusion in the corresponding future ETSI NFV OpenAPI design. + + 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 003 V2.4.1 + url: >- + http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/02.04.01_60/gs_NFV-SOL003v020401p.pdf +basePath: /vnflcm/v1 +schemes: + - https +consumes: + - application/json +produces: + - application/json +paths: + /vnf_instances: + post: + description: | + Create VNF Identifier + + The POST method creates a new VNF instance resource. + parameters: + - name: createVnfRequest + description: The VNF creation parameters + in: body + required: true + schema: + type: object + required: + - vnfdId + properties: + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfInstanceName: + description: | + Human-readable name of the VNF instance to be created. + type: string + vnfInstanceDescription: + description: | + Human-readable description of the VNF instance to be created. + 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 + - name: Content-Type + description: | + The MIME type of the body of the request. Reference: IETF RFC 7231 + in: header + required: true + type: string + responses: + '201': + description: A VNF Instance identifier was created successfully + 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 + schema: + description: | + This type represents a VNF instance. + type: object + required: + - id + - vnfdId + - vnfProvider + - vnfProductName + - vnfSoftwareVersion + - vnfdVersion + - vnfPkgId + - instantiationState + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + vnfInstanceName: + description: > + Name of the VNF instance. This attribute can be modified with + the PATCH method. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance. This attribute + can be modified with the PATCH method. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + Provider of the VNF and the VNFD. The value is copied from the + VNFD. + type: string + vnfProductName: + description: > + Name to identify the VNF Product. The value is copied from the + VNFD. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance. This attribute shall only be + supported and present if VNF-related resource management in + direct mode is applicable. This attribute can be modified with + the PATCH method. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + instantiationState: + description: | + The instantiation state of the VNF. + type: string + enum: + - NOT_INSTANTIATED + - INSTANTIATED + instantiatedVnfInfo: + description: > + Information specific to an instantiated VNF instance. This + attribute shall be present if the instantiateState attribute + value is INSTANTIATED. + type: object + required: + - flavourId + - vnfState + properties: + flavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vnfState: + type: string + enum: + - STARTED + - STOPPED + scaleStatus: + description: > + Scale status of the VNF, one entry per aspect. Represents + for every scaling aspect how "big" the VNF has been scaled + w.r.t. that aspect. + type: array + items: + required: + - aspectId + - scaleLevel + type: object + properties: + aspectId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + scaleLevel: + description: > + Indicates the scale level. The minimum value shall + be 0 and the maximum value shall be <= maxScaleLevel + as described in the VNFD. + type: integer + extCpInfo: + description: > + Information about the external CPs exposed by the VNF + instance. + type: array + minItems: 1 + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) that a + CP uses together with protocol-related + information, like addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) + associated to the network address + information. Permitted values: + IP_OVER_ETHERNET This attribute allows to + signal the addition of further types of layer + and protocol in future versions of the present + document in a backwards-compatible way. In the + current version of the present document, only + IP over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string that + consists of groups of two hexadecimal + digits, separated by hyphens or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + extLinkPortId: + description: > + An identifier with the intention of being globally + unique. + type: string + extVirtualLinkInfo: + description: > + Information about the external VLs the VNF instance is + connected to. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port + of an external VL, i.e. a port providing + connectivity for the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + extManagedVirtualLinkInfo: + description: | + External virtual links the VNF instance is connected to. + type: array + items: + type: object + required: + - id + - vnfVirtualLinkDescId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + vnfLinkPorts: + description: | + Link ports of this VL. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + monitoringParameters: + description: | + Active monitoring parameters. + type: array + items: + type: object + required: + - id + - value + - timeStamp + properties: + id: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + name: + description: > + Human readable name of the monitoring parameter, as + defined in the VNFD. + type: string + value: + description: > + Value of the monitoring parameter known to the VNFM + (e.g. obtained for autoscaling purposes). The type + of the "value" attribute (i.e. scalar, structure + (Object in JSON), or array (of scalars, arrays or + structures/Objects)) is assumed to be defined in an + external measurement specification. + type: object + timeStamp: + description: > + Represents the point in time when the measurement + has been performed, as known to the VNFM. Should be + formatted according to ETF RFC 3339. + type: string + localizationLanguage: + description: > + Information about localization language of the VNF + (includes e.g. strings in the VNFD). The localization + languages supported by a VNF can be declared in the VNFD, + and localization language selection can take place at + instantiation time. The value shall comply with the format + defined in IETF RFC 5646. + type: string + vnfcResourceInfo: + description: > + Information about the virtualised compute and storage + resources used by the VNFCs of the VNF instance. + type: array + items: + description: > + This type represents the information on virtualised + compute and storage resources used by a VNFC in a VNF + instance. + type: object + required: + - id + - vduId + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + storageResourceIds: + description: > + References to the VirtualStorage resources. The + value refers to a VirtualStorageResourceInfo item in + the VnfInstance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfcCpInfo: + description: > + CPs of the VNFC instance. Shall be present when that + particular CP of the VNFC instance is associated to + an external CP of the VNF instance. May be present + otherwise. + type: array + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + vnfExtCpId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) + that a CP uses together with + protocol-related information, like + addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and + protocol(s) associated to the network + address information. Permitted values: + IP_OVER_ETHERNET This attribute allows + to signal the addition of further types + of layer and protocol in future versions + of the present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + vnfLinkPortId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualLinkResourceInfo: + description: > + Information about the virtualised network resources used + by the VLs of the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by an + internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfLinkPorts: + description: > + Links ports of this VL. Shall be present when the + linkPort is used for external connectivity by the + VNF (refer to VnfLinkPortInfo). May be present + otherwise. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualStorageResourceInfo: + description: > + Information on the virtualised storage resource(s) used as + storage for the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + indicators: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + instantiate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + terminate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scale: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scaleToLevel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeFlavour: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + heal: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + operate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeExtConn: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + Another request is in progress that prohibits the fulfilment of the + current request, or the current resource state is inconsistent with + the request. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '416': + description: > + Requested Range Not Satisfiable + + This code is returned if the requested byte range in the Range HTTP + header is not present in the requested resource. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '422': + description: > + Unprocessable Entity + + If the payload body of a request contains syntactically correct data + (e.g. well-formed JSON) but the data cannot be processed (e.g. + because it fails validation against a schema), the API producer + shall respond with this response code. The "ProblemDetails" + structure shall be provided, and should include in the "detail" + attribute more information about the source of the problem. NOTE 2: + This error response code is only applicable for methods that have a + request body. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + get: + description: | + Query VNF + + The GET method queries information about multiple VNF instances. + 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 + responses: + '200': + description: > + OK + + Information about zero or more VNF instances was queried + successfully. The response body shall contain representations of + zero or more VNF instances. + 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: + type: array + items: + description: | + This type represents a VNF instance. + type: object + required: + - id + - vnfdId + - vnfProvider + - vnfProductName + - vnfSoftwareVersion + - vnfdVersion + - vnfPkgId + - instantiationState + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + vnfInstanceName: + description: > + Name of the VNF instance. This attribute can be modified + with the PATCH method. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance. This + attribute can be modified with the PATCH method. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + Provider of the VNF and the VNFD. The value is copied from + the VNFD. + type: string + vnfProductName: + description: > + Name to identify the VNF Product. The value is copied from + the VNFD. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall + comply with the provisions defined in clause 4 of IETF RFC + 7159. + type: object + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing + the resources for the VNF instance. This attribute shall + only be supported and present if VNF-related resource + management in direct mode is applicable. This attribute can + be modified with the PATCH method. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure + is used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be + configured into the VNFM by means outside the scope of the + present document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines + the structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as + new types or versions of VIMs become available. The + ETSI NFV registry of VIM-related information provides + access to information about VimConnectionInfo + definitions for various VIM types. The structure of + the registry is defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined + in clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined + in clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined + in clause 4 of IETF RFC 7159. + type: object + instantiationState: + description: | + The instantiation state of the VNF. + type: string + enum: + - NOT_INSTANTIATED + - INSTANTIATED + instantiatedVnfInfo: + description: > + Information specific to an instantiated VNF instance. This + attribute shall be present if the instantiateState attribute + value is INSTANTIATED. + type: object + required: + - flavourId + - vnfState + properties: + flavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vnfState: + type: string + enum: + - STARTED + - STOPPED + scaleStatus: + description: > + Scale status of the VNF, one entry per aspect. + Represents for every scaling aspect how "big" the VNF + has been scaled w.r.t. that aspect. + type: array + items: + required: + - aspectId + - scaleLevel + type: object + properties: + aspectId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + scaleLevel: + description: > + Indicates the scale level. The minimum value shall + be 0 and the maximum value shall be <= + maxScaleLevel as described in the VNFD. + type: integer + extCpInfo: + description: > + Information about the external CPs exposed by the VNF + instance. + type: array + minItems: 1 + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) that a + CP uses together with protocol-related + information, like addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) + associated to the network address + information. Permitted values: + IP_OVER_ETHERNET This attribute allows to + signal the addition of further types of + layer and protocol in future versions of the + present document in a backwards-compatible + way. In the current version of the present + document, only IP over Ethernet is + supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + extLinkPortId: + description: > + An identifier with the intention of being globally + unique. + type: string + extVirtualLinkInfo: + description: > + Information about the external VLs the VNF instance is + connected to. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by + a VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM + or the resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link + port of an external VL, i.e. a port providing + connectivity for the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource + that is used by a VNF instance. Information + about the resource is available from the + VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of + being globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of + being globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected + to be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but + may not be globally unique. + type: string + extManagedVirtualLinkInfo: + description: | + External virtual links the VNF instance is connected to. + type: array + items: + type: object + required: + - id + - vnfVirtualLinkDescId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by + a VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM + or the resource provider. + type: string + vnfLinkPorts: + description: | + Link ports of this VL. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but + may not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource + that is used by a VNF instance. Information + about the resource is available from the + VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of + being globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of + being globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected + to be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but + may not be globally unique. + type: string + monitoringParameters: + description: | + Active monitoring parameters. + type: array + items: + type: object + required: + - id + - value + - timeStamp + properties: + id: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + name: + description: > + Human readable name of the monitoring parameter, + as defined in the VNFD. + type: string + value: + description: > + Value of the monitoring parameter known to the + VNFM (e.g. obtained for autoscaling purposes). The + type of the "value" attribute (i.e. scalar, + structure (Object in JSON), or array (of scalars, + arrays or structures/Objects)) is assumed to be + defined in an external measurement specification. + type: object + timeStamp: + description: > + Represents the point in time when the measurement + has been performed, as known to the VNFM. Should + be formatted according to ETF RFC 3339. + type: string + localizationLanguage: + description: > + Information about localization language of the VNF + (includes e.g. strings in the VNFD). The localization + languages supported by a VNF can be declared in the + VNFD, and localization language selection can take place + at instantiation time. The value shall comply with the + format defined in IETF RFC 5646. + type: string + vnfcResourceInfo: + description: > + Information about the virtualised compute and storage + resources used by the VNFCs of the VNF instance. + type: array + items: + description: > + This type represents the information on virtualised + compute and storage resources used by a VNFC in a VNF + instance. + type: object + required: + - id + - vduId + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by + a VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM + or the resource provider. + type: string + storageResourceIds: + description: > + References to the VirtualStorage resources. The + value refers to a VirtualStorageResourceInfo item + in the VnfInstance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfcCpInfo: + description: > + CPs of the VNFC instance. Shall be present when + that particular CP of the VNFC instance is + associated to an external CP of the VNF instance. + May be present otherwise. + type: array + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but + may not be globally unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + vnfExtCpId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but + may not be globally unique. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) + that a CP uses together with + protocol-related information, like + addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and + protocol(s) associated to the network + address information. Permitted values: + IP_OVER_ETHERNET This attribute allows + to signal the addition of further types + of layer and protocol in future versions + of the present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + vnfLinkPortId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but + may not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. + The order of the pairs in the list is not + significant. In JSON, a set of key- value pairs is + represented as an object. It shall comply with the + provisions defined in clause 4 of IETF RFC 7159. + type: object + virtualLinkResourceInfo: + description: > + Information about the virtualised network resources used + by the VLs of the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by an + internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by + a VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM + or the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfLinkPorts: + description: > + Links ports of this VL. Shall be present when the + linkPort is used for external connectivity by the + VNF (refer to VnfLinkPortInfo). May be present + otherwise. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but + may not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource + that is used by a VNF instance. Information + about the resource is available from the + VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of + being globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of + being globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected + to be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but + may not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. + The order of the pairs in the list is not + significant. In JSON, a set of key- value pairs is + represented as an object. It shall comply with the + provisions defined in clause 4 of IETF RFC 7159. + type: object + virtualStorageResourceInfo: + description: > + Information on the virtualised storage resource(s) used + as storage for the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by + a VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM + or the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. + The order of the pairs in the list is not + significant. In JSON, a set of key- value pairs is + represented as an object. It shall comply with the + provisions defined in clause 4 of IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall + comply with the provisions defined in clause 4 of IETF RFC + 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall + comply with the provisions defined in clause 4 of IETF RFC + 7159. + type: object + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + indicators: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + instantiate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + terminate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scale: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scaleToLevel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeFlavour: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + heal: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + operate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeExtConn: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + It fhe request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + Another request is in progress that prohibits the fulfilment of the + current request, or the current resource state is inconsistent with + the request. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '416': + description: > + Requested Range Not Satisfiable + + This code is returned if the requested byte range in the Range HTTP + header is not present in the requested resource. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_instances/{vnfInstanceId}': + parameters: + - name: vnfInstanceId + description: > + Identifier of the VNF instance. This identifier can be retrieved from + the resource referenced by the "Location" HTTP header in the response + to a POST request creating a new VNF instance resource. It can also be + retrieved from the "id" attribute in the payload body of that + response. + in: path + type: string + required: true + get: + description: > + Query VNF + + + The GET method retrieves information about a VNF instance by reading an + individual VNF 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 + responses: + '200': + description: > + OK + + Information about zero or more VNF instances was queried + successfully. The response body shall contain representations of + zero or more VNF instances. + 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: + description: | + This type represents a VNF instance. + type: object + required: + - id + - vnfdId + - vnfProvider + - vnfProductName + - vnfSoftwareVersion + - vnfdVersion + - vnfPkgId + - instantiationState + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + vnfInstanceName: + description: > + Name of the VNF instance. This attribute can be modified with + the PATCH method. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance. This attribute + can be modified with the PATCH method. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + Provider of the VNF and the VNFD. The value is copied from the + VNFD. + type: string + vnfProductName: + description: > + Name to identify the VNF Product. The value is copied from the + VNFD. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance. This attribute shall only be + supported and present if VNF-related resource management in + direct mode is applicable. This attribute can be modified with + the PATCH method. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + instantiationState: + description: | + The instantiation state of the VNF. + type: string + enum: + - NOT_INSTANTIATED + - INSTANTIATED + instantiatedVnfInfo: + description: > + Information specific to an instantiated VNF instance. This + attribute shall be present if the instantiateState attribute + value is INSTANTIATED. + type: object + required: + - flavourId + - vnfState + properties: + flavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vnfState: + type: string + enum: + - STARTED + - STOPPED + scaleStatus: + description: > + Scale status of the VNF, one entry per aspect. Represents + for every scaling aspect how "big" the VNF has been scaled + w.r.t. that aspect. + type: array + items: + required: + - aspectId + - scaleLevel + type: object + properties: + aspectId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + scaleLevel: + description: > + Indicates the scale level. The minimum value shall + be 0 and the maximum value shall be <= maxScaleLevel + as described in the VNFD. + type: integer + extCpInfo: + description: > + Information about the external CPs exposed by the VNF + instance. + type: array + minItems: 1 + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) that a + CP uses together with protocol-related + information, like addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) + associated to the network address + information. Permitted values: + IP_OVER_ETHERNET This attribute allows to + signal the addition of further types of layer + and protocol in future versions of the present + document in a backwards-compatible way. In the + current version of the present document, only + IP over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string that + consists of groups of two hexadecimal + digits, separated by hyphens or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + extLinkPortId: + description: > + An identifier with the intention of being globally + unique. + type: string + extVirtualLinkInfo: + description: > + Information about the external VLs the VNF instance is + connected to. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port + of an external VL, i.e. a port providing + connectivity for the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + extManagedVirtualLinkInfo: + description: | + External virtual links the VNF instance is connected to. + type: array + items: + type: object + required: + - id + - vnfVirtualLinkDescId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + vnfLinkPorts: + description: | + Link ports of this VL. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + monitoringParameters: + description: | + Active monitoring parameters. + type: array + items: + type: object + required: + - id + - value + - timeStamp + properties: + id: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + name: + description: > + Human readable name of the monitoring parameter, as + defined in the VNFD. + type: string + value: + description: > + Value of the monitoring parameter known to the VNFM + (e.g. obtained for autoscaling purposes). The type + of the "value" attribute (i.e. scalar, structure + (Object in JSON), or array (of scalars, arrays or + structures/Objects)) is assumed to be defined in an + external measurement specification. + type: object + timeStamp: + description: > + Represents the point in time when the measurement + has been performed, as known to the VNFM. Should be + formatted according to ETF RFC 3339. + type: string + localizationLanguage: + description: > + Information about localization language of the VNF + (includes e.g. strings in the VNFD). The localization + languages supported by a VNF can be declared in the VNFD, + and localization language selection can take place at + instantiation time. The value shall comply with the format + defined in IETF RFC 5646. + type: string + vnfcResourceInfo: + description: > + Information about the virtualised compute and storage + resources used by the VNFCs of the VNF instance. + type: array + items: + description: > + This type represents the information on virtualised + compute and storage resources used by a VNFC in a VNF + instance. + type: object + required: + - id + - vduId + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + storageResourceIds: + description: > + References to the VirtualStorage resources. The + value refers to a VirtualStorageResourceInfo item in + the VnfInstance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfcCpInfo: + description: > + CPs of the VNFC instance. Shall be present when that + particular CP of the VNFC instance is associated to + an external CP of the VNF instance. May be present + otherwise. + type: array + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + vnfExtCpId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) + that a CP uses together with + protocol-related information, like + addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and + protocol(s) associated to the network + address information. Permitted values: + IP_OVER_ETHERNET This attribute allows + to signal the addition of further types + of layer and protocol in future versions + of the present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + vnfLinkPortId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualLinkResourceInfo: + description: > + Information about the virtualised network resources used + by the VLs of the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by an + internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfLinkPorts: + description: > + Links ports of this VL. Shall be present when the + linkPort is used for external connectivity by the + VNF (refer to VnfLinkPortInfo). May be present + otherwise. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualStorageResourceInfo: + description: > + Information on the virtualised storage resource(s) used as + storage for the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + indicators: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + instantiate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + terminate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scale: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scaleToLevel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeFlavour: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + heal: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + operate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeExtConn: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + Another request is in progress that prohibits the fulfilment of the + current request, or the current resource state is inconsistent with + the request. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '416': + description: > + Requested Range Not Satisfiable + + This code is returned if the requested byte range in the Range HTTP + header is not present in the requested resource. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + patch: + description: > + Modify VNF Information + + + This method modifies an individual VNF instance resource. Changes to the + VNF configurable properties are applied to the configuration in the VNF + instance, and are reflected in the representation of this resource. + Other changes are applied to the VNF instance information managed by the + VNFM, and are reflected in the representation of this resource + parameters: + - name: VnfInfoModificationRequest + description: | + Input parameters for VNF info modification. + required: true + in: body + schema: + description: > + This type represents attribute modifications for an "Individual + VNF instance" resource, i.e. modifications to a resource + representation based on the "VnfInstance" data type. + type: object + properties: + vnfInstanceName: + description: > + New value of the "vnfInstanceName" attribute in "VnfInstance", + or "null" to remove the attribute. + type: string + vnfInstanceDescription: + description: > + New value of the "vnfInstanceDescription" attribute in + "VnfInstance", or "null" to remove the attribute. + type: string + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + New content of certain entries in the "vimConnectionInfo" + attribute array in "VnfInstance", as defined below this table. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + - name: Authorization + description: | + The authorization token for the request. Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The Content-Type header shall be set to + "application/merge-patch+json" according to IETF RFC 7396. + in: header + required: true + type: string + enum: + - application/merge-patch+json + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "VNF LCM operation occurrence" resource corresponding to the + operation. The response body shall be empty. + headers: + 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 + '400': + description: > + Bad Request + + It fhe request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that another LCM operation is ongoing. 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '412': + description: > + Precondition Failed + + A precondition given in an HTTP request header is not fulfilled. + Typically, this is due to an ETag mismatch, indicating that the + resource was modified by another entity. The response body should + 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + delete: + description: | + Delete VNF Identifier + + This method deletes an individual VNF instance resource. + parameters: + - name: Authorization + description: | + The authorization token for the request. Reference: IETF RFC 7235 + in: header + required: false + type: string + responses: + '204': + description: > + No Content + + The VNF instance resource and the associated VNF 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. + type: string + maximum: 1 + minimum: 0 + '400': + description: > + Bad Request + + It fhe request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that the VNF instance resource is in INSTANTIATED state. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '412': + description: > + Precondition Failed + + A precondition given in an HTTP request header is not fulfilled. + Typically, this is due to an ETag mismatch, indicating that the + resource was modified by another entity. The response body should + 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_instances/{vnfInstanceId}/instantiate': + parameters: + - name: vnfInstanceId + description: > + Identifier of the VNF instance. This identifier can be retrieved from + the resource referenced by the "Location" HTTP header in the response + to a POST request creating a new VNF instance resource. It can also be + retrieved from the "id" attribute in the payload body of that + response. + in: path + type: string + required: true + post: + description: | + Instantiate VNF + + The POST method instantiates a VNF instance. + parameters: + - name: InstantiateVnfRequest + description: Parameters for the VNF instantiation. + in: body + required: true + schema: + type: object + required: + - flavourId + properties: + flavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + instantiationLevelId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + extVirtualLinks: + description: | + Information about external VLs to connect the VNF to. + type: array + items: + description: | + This type represents an external VL. + type: object + required: + - id + - resourceId + - extCps + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimConnectionId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other resource + provider. It is expected to be unique within the VIM + instance. + type: string + extCps: + description: > + External CPs of the VNF to be connected to this external + VL. + type: array + items: + description: > + This type represents configuration information for + external CPs created from a CPD. + type: object + required: + - cpdId + properties: + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpConfig: + description: > + List of instance data that need to be configured + on the CP instances created from the respective + CPD. + type: array + items: + description: > + This type represents an externally provided link + port or network address information per instance + of an external connection point. In case a link + port is provided, the VNFM shall use that link + port when connecting the external CP to the + external VL. In a link port is not provided, the + VNFM shall create a link port on the external + VL, and use that link port to connect the + external CP to the external VL. + type: object + properties: + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but + may not be globally unique. + type: string + linkPortId: + description: > + An identifier with the intention of being + globally unique. + type: string + cpProtocolData: + description: > + Parameters for configuring the network + protocols on the link port that connects the + CP to a VL. The following conditions apply + to the attributes "linkPortId" and + "cpProtocolData": * The "linkPortId" and + "cpProtocolData" attributes shall both be + absent for the deletion of an existing external CP instance + addressed by cpInstanceId. + * At least one of these attributes shall be + present for a + to-be-created external CP instance or an existing external + CP instance. + * If the "linkPortId" attribute is absent, + the VNFM shall create a + link port. + * If the "cpProtocolData" attribute is + absent, the "linkPortId" + attribute shall be provided referencing a pre-created link port, + and the VNFM can use means outside the scope of the present + document to obtain the pre-configured address information for the + connection point from the resource representing the link port. + * If both "cpProtocolData" and "linkportId" + are provided, the API + consumer shall ensure that the cpProtocolData can be used with the + pre-created link port referenced by "linkPortId". + type: array + items: + description: > + This type represents network protocol + data. + type: object + required: + - layerProtocol + properties: + layerProtocol: + description: > + Identifier of layer(s) and protocol(s). + This attribute allows to signal the + addition of further types of layer and + protocol in future versions of the + present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents network address + data for IP over Ethernet. + type: object + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + List of IP addresses to assign to the CP + instance. Each entry represents IP + address data for fixed or dynamic IP + address assignment per subnet. If this + attribute is not present, no IP address + shall be assigned. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + fixedAddresses: + description: > + Fixed addresses to assign (from the + subnet defined by "subnetId" if + provided). Exactly one of + "fixedAddresses", "numDynamicAddresses" + or "ipAddressRange" shall be present. + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + numDynamicAddresses: + description: > + Number of dynamic addresses to assign + (from the subnet defined by "subnetId" + if provided). Exactly one of + "fixedAddresses", "numDynamicAddresses" + or "ipAddressRange" shall be present. + type: integer + addressRange: + description: > + An IP address range to be used, e.g. in + case of egress connections. In case this + attribute is present, IP addresses from + the range will be used. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected + to be unique within the VIM instance. + type: string + extLinkPorts: + description: > + Externally provided link ports to be used to connect + external connection points to this external VL. If this + attribute is not present, the VNFM shall create the link + ports on the external VL. + type: array + items: + description: > + This type represents an externally provided link port + to be used to connect an external connection point to + an external VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by + a VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM + or the resource provider. + type: string + extManagedVirtualLinks: + description: | + Information about internal VLs that are managed by the NFVO. + type: array + items: + type: object + required: + - id + - virtualLinkDescId + - resourceId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + virtualLinkDescId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vimConnectionId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other resource + provider. It is expected to be unique within the VIM + instance. + type: string + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance, or refer to external / + externally-managed virtual links. This attribute shall only be + supported and may be present if VNF-related resource + management in direct mode is applicable. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + localizationLanguage: + description: > + Localization language of the VNF to be instantiated. The value + shall comply with the format defined in IETF RFC 5646. + type: string + additionalParams: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + - 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 + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. The response body shall be empty. The HTTP response + shall include a "Location" HTTP header that contains the URI of the + newly-created "VNF LCM operation occurrence" resource corresponding + to the operation. + headers: + 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 + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that the VNF instance resource is in INSTANTIATED state. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '416': + description: > + Requested Range Not Satisfiable + + This code is returned if the requested byte range in the Range HTTP + header is not present in the requested resource. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_instances/{vnfInstanceId}/scale': + parameters: + - name: vnfInstanceId + description: > + Identifier of the VNF instance to be scaled. This identifier can be + retrieved from the resource referenced by the "Location" HTTP header + in the response to a POST request creating a new VNF instance + resource. It can also be retrieved from the "id" attribute in the + payload body of that response. + in: path + type: string + required: true + post: + description: | + Scale VNF + + The POST method requests to scale a VNF instance resource incrementally. + parameters: + - name: ScaleVnfRequest + description: Parameters for the scale VNF operation. + in: body + required: true + schema: + type: object + required: + - type + - aspectId + properties: + type: + description: > + Indicates the type of the scale operation requested. Permitted + values: * SCALE_OUT: adding additional VNFC instances to the + VNF to increase + capacity + * SCALE_IN: removing VNFC instances from the VNF in order to + release + unused capacity. + type: string + enum: + - SCALE_OUT + - SCALE_IN + aspectId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + numberOfSteps: + description: > + Number of scaling steps to be executed as part of this Scale + VNF operation. It shall be a positive number and the default + value shall be 1. + type: integer + default: 1 + additionalParams: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + - 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 + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "VNF LCM operation occurrence" resource corresponding to the + operation. + 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 + schema: + description: | + This type represents a VNF instance. + type: object + required: + - id + - vnfdId + - vnfProvider + - vnfProductName + - vnfSoftwareVersion + - vnfdVersion + - vnfPkgId + - instantiationState + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + vnfInstanceName: + description: > + Name of the VNF instance. This attribute can be modified with + the PATCH method. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance. This attribute + can be modified with the PATCH method. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + Provider of the VNF and the VNFD. The value is copied from the + VNFD. + type: string + vnfProductName: + description: > + Name to identify the VNF Product. The value is copied from the + VNFD. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance. This attribute shall only be + supported and present if VNF-related resource management in + direct mode is applicable. This attribute can be modified with + the PATCH method. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + instantiationState: + description: | + The instantiation state of the VNF. + type: string + enum: + - NOT_INSTANTIATED + - INSTANTIATED + instantiatedVnfInfo: + description: > + Information specific to an instantiated VNF instance. This + attribute shall be present if the instantiateState attribute + value is INSTANTIATED. + type: object + required: + - flavourId + - vnfState + properties: + flavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vnfState: + type: string + enum: + - STARTED + - STOPPED + scaleStatus: + description: > + Scale status of the VNF, one entry per aspect. Represents + for every scaling aspect how "big" the VNF has been scaled + w.r.t. that aspect. + type: array + items: + required: + - aspectId + - scaleLevel + type: object + properties: + aspectId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + scaleLevel: + description: > + Indicates the scale level. The minimum value shall + be 0 and the maximum value shall be <= maxScaleLevel + as described in the VNFD. + type: integer + extCpInfo: + description: > + Information about the external CPs exposed by the VNF + instance. + type: array + minItems: 1 + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) that a + CP uses together with protocol-related + information, like addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) + associated to the network address + information. Permitted values: + IP_OVER_ETHERNET This attribute allows to + signal the addition of further types of layer + and protocol in future versions of the present + document in a backwards-compatible way. In the + current version of the present document, only + IP over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string that + consists of groups of two hexadecimal + digits, separated by hyphens or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + extLinkPortId: + description: > + An identifier with the intention of being globally + unique. + type: string + extVirtualLinkInfo: + description: > + Information about the external VLs the VNF instance is + connected to. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port + of an external VL, i.e. a port providing + connectivity for the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + extManagedVirtualLinkInfo: + description: | + External virtual links the VNF instance is connected to. + type: array + items: + type: object + required: + - id + - vnfVirtualLinkDescId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + vnfLinkPorts: + description: | + Link ports of this VL. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + monitoringParameters: + description: | + Active monitoring parameters. + type: array + items: + type: object + required: + - id + - value + - timeStamp + properties: + id: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + name: + description: > + Human readable name of the monitoring parameter, as + defined in the VNFD. + type: string + value: + description: > + Value of the monitoring parameter known to the VNFM + (e.g. obtained for autoscaling purposes). The type + of the "value" attribute (i.e. scalar, structure + (Object in JSON), or array (of scalars, arrays or + structures/Objects)) is assumed to be defined in an + external measurement specification. + type: object + timeStamp: + description: > + Represents the point in time when the measurement + has been performed, as known to the VNFM. Should be + formatted according to ETF RFC 3339. + type: string + localizationLanguage: + description: > + Information about localization language of the VNF + (includes e.g. strings in the VNFD). The localization + languages supported by a VNF can be declared in the VNFD, + and localization language selection can take place at + instantiation time. The value shall comply with the format + defined in IETF RFC 5646. + type: string + vnfcResourceInfo: + description: > + Information about the virtualised compute and storage + resources used by the VNFCs of the VNF instance. + type: array + items: + description: > + This type represents the information on virtualised + compute and storage resources used by a VNFC in a VNF + instance. + type: object + required: + - id + - vduId + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + storageResourceIds: + description: > + References to the VirtualStorage resources. The + value refers to a VirtualStorageResourceInfo item in + the VnfInstance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfcCpInfo: + description: > + CPs of the VNFC instance. Shall be present when that + particular CP of the VNFC instance is associated to + an external CP of the VNF instance. May be present + otherwise. + type: array + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + vnfExtCpId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) + that a CP uses together with + protocol-related information, like + addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and + protocol(s) associated to the network + address information. Permitted values: + IP_OVER_ETHERNET This attribute allows + to signal the addition of further types + of layer and protocol in future versions + of the present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + vnfLinkPortId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualLinkResourceInfo: + description: > + Information about the virtualised network resources used + by the VLs of the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by an + internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfLinkPorts: + description: > + Links ports of this VL. Shall be present when the + linkPort is used for external connectivity by the + VNF (refer to VnfLinkPortInfo). May be present + otherwise. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualStorageResourceInfo: + description: > + Information on the virtualised storage resource(s) used as + storage for the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + indicators: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + instantiate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + terminate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scale: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scaleToLevel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeFlavour: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + heal: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + operate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeExtConn: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + Error: The API producer did not find a current representation for + the target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 + shall also returned if the task is not supported for the VNF + instance represented by the parent resource, which means that the + task resource consequently does not exist. In this case, the + response body shall be present, and 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that the VNF instance resource is in NOT-INSTANTIATED + state, or that another lifecycle management operation is ongoing. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_instances/{vnfInstanceId}/scale_to_level': + parameters: + - name: vnfInstanceId + description: > + Identifier of the VNF instance to be scaled to a target level. This + identifier can be retrieved from the resource referenced by the + "Location" HTTP header in the response to a POST request creating a + new VNF instance resource. It can also be retrieved from the "id" + attribute in the payload body of that response. + in: path + type: string + required: true + post: + description: > + Scale VNF to Level + + + The POST method requests to scale a VNF instance resource to a target + level. + parameters: + - name: ScaleVnfToLevelRequest + description: Parameters for the scale VNF to Level operation. + in: body + required: true + schema: + description: > + This type represents request parameters for the "Scale VNF to + Level" operation. + type: object + properties: + instantiationLevelId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + scaleInfo: + description: > + For each scaling aspect of the current deployment flavour, + indicates the target scale level to which the VNF is to be + scaled. Either the instantiationLevelId attribute or the + scaleInfo attribute shall be included. + type: array + items: + required: + - aspectId + - scaleLevel + type: object + properties: + aspectId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + scaleLevel: + description: > + Indicates the scale level. The minimum value shall be 0 + and the maximum value shall be <= maxScaleLevel as + described in the VNFD. + type: integer + additionalParams: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + - 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 + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "VNF LCM operation occurrence" resource corresponding to the + operation. + 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 + schema: + description: | + This type represents a VNF instance. + type: object + required: + - id + - vnfdId + - vnfProvider + - vnfProductName + - vnfSoftwareVersion + - vnfdVersion + - vnfPkgId + - instantiationState + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + vnfInstanceName: + description: > + Name of the VNF instance. This attribute can be modified with + the PATCH method. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance. This attribute + can be modified with the PATCH method. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + Provider of the VNF and the VNFD. The value is copied from the + VNFD. + type: string + vnfProductName: + description: > + Name to identify the VNF Product. The value is copied from the + VNFD. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance. This attribute shall only be + supported and present if VNF-related resource management in + direct mode is applicable. This attribute can be modified with + the PATCH method. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + instantiationState: + description: | + The instantiation state of the VNF. + type: string + enum: + - NOT_INSTANTIATED + - INSTANTIATED + instantiatedVnfInfo: + description: > + Information specific to an instantiated VNF instance. This + attribute shall be present if the instantiateState attribute + value is INSTANTIATED. + type: object + required: + - flavourId + - vnfState + properties: + flavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vnfState: + type: string + enum: + - STARTED + - STOPPED + scaleStatus: + description: > + Scale status of the VNF, one entry per aspect. Represents + for every scaling aspect how "big" the VNF has been scaled + w.r.t. that aspect. + type: array + items: + required: + - aspectId + - scaleLevel + type: object + properties: + aspectId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + scaleLevel: + description: > + Indicates the scale level. The minimum value shall + be 0 and the maximum value shall be <= maxScaleLevel + as described in the VNFD. + type: integer + extCpInfo: + description: > + Information about the external CPs exposed by the VNF + instance. + type: array + minItems: 1 + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) that a + CP uses together with protocol-related + information, like addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) + associated to the network address + information. Permitted values: + IP_OVER_ETHERNET This attribute allows to + signal the addition of further types of layer + and protocol in future versions of the present + document in a backwards-compatible way. In the + current version of the present document, only + IP over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string that + consists of groups of two hexadecimal + digits, separated by hyphens or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + extLinkPortId: + description: > + An identifier with the intention of being globally + unique. + type: string + extVirtualLinkInfo: + description: > + Information about the external VLs the VNF instance is + connected to. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port + of an external VL, i.e. a port providing + connectivity for the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + extManagedVirtualLinkInfo: + description: | + External virtual links the VNF instance is connected to. + type: array + items: + type: object + required: + - id + - vnfVirtualLinkDescId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + vnfLinkPorts: + description: | + Link ports of this VL. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + monitoringParameters: + description: | + Active monitoring parameters. + type: array + items: + type: object + required: + - id + - value + - timeStamp + properties: + id: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + name: + description: > + Human readable name of the monitoring parameter, as + defined in the VNFD. + type: string + value: + description: > + Value of the monitoring parameter known to the VNFM + (e.g. obtained for autoscaling purposes). The type + of the "value" attribute (i.e. scalar, structure + (Object in JSON), or array (of scalars, arrays or + structures/Objects)) is assumed to be defined in an + external measurement specification. + type: object + timeStamp: + description: > + Represents the point in time when the measurement + has been performed, as known to the VNFM. Should be + formatted according to ETF RFC 3339. + type: string + localizationLanguage: + description: > + Information about localization language of the VNF + (includes e.g. strings in the VNFD). The localization + languages supported by a VNF can be declared in the VNFD, + and localization language selection can take place at + instantiation time. The value shall comply with the format + defined in IETF RFC 5646. + type: string + vnfcResourceInfo: + description: > + Information about the virtualised compute and storage + resources used by the VNFCs of the VNF instance. + type: array + items: + description: > + This type represents the information on virtualised + compute and storage resources used by a VNFC in a VNF + instance. + type: object + required: + - id + - vduId + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + storageResourceIds: + description: > + References to the VirtualStorage resources. The + value refers to a VirtualStorageResourceInfo item in + the VnfInstance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfcCpInfo: + description: > + CPs of the VNFC instance. Shall be present when that + particular CP of the VNFC instance is associated to + an external CP of the VNF instance. May be present + otherwise. + type: array + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + vnfExtCpId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) + that a CP uses together with + protocol-related information, like + addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and + protocol(s) associated to the network + address information. Permitted values: + IP_OVER_ETHERNET This attribute allows + to signal the addition of further types + of layer and protocol in future versions + of the present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + vnfLinkPortId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualLinkResourceInfo: + description: > + Information about the virtualised network resources used + by the VLs of the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by an + internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfLinkPorts: + description: > + Links ports of this VL. Shall be present when the + linkPort is used for external connectivity by the + VNF (refer to VnfLinkPortInfo). May be present + otherwise. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualStorageResourceInfo: + description: > + Information on the virtualised storage resource(s) used as + storage for the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + indicators: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + instantiate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + terminate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scale: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scaleToLevel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeFlavour: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + heal: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + operate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeExtConn: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + Error: The API producer did not find a current representation for + the target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 + shall also returned if the task is not supported for the VNF + instance represented by the parent resource, which means that the + task resource consequently does not exist. In this case, the + response body shall be present, and 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that the VNF instance resource is in NOT-INSTANTIATED + state, or that another lifecycle management operation is ongoing. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_instances/{vnfInstanceId}/change_flavour': + parameters: + - name: vnfInstanceId + description: > + The identifier of the VNF instance of which the deployment flavour is + requested to be changed. This identifier can be retrieved from the + resource referenced by the "Location" HTTP header in the response to a + POST request creating a new VNF instance resource. It can also be + retrieved from the "id" attribute in the payload body of that + response. + in: path + type: string + required: true + post: + description: | + Change VNF Flavour + + The POST method changes the deployment flavour of a VNF instance. + parameters: + - name: ChangeVnfFlavourRequest + description: Parameters for the Change VNF Flavour operation. + in: body + required: true + schema: + description: > + This type represents request parameters for the "Change VNF + flavour" operation. + type: object + required: + - newFlavourId + properties: + newFlavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + instantiationLevelId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + extVirtualLinks: + description: | + Information about external VLs to connect the VNF to. + type: array + items: + description: | + This type represents an external VL. + type: object + required: + - id + - resourceId + - extCps + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimConnectionId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other resource + provider. It is expected to be unique within the VIM + instance. + type: string + extCps: + description: > + External CPs of the VNF to be connected to this external + VL. + type: array + items: + description: > + This type represents configuration information for + external CPs created from a CPD. + type: object + required: + - cpdId + properties: + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpConfig: + description: > + List of instance data that need to be configured + on the CP instances created from the respective + CPD. + type: array + items: + description: > + This type represents an externally provided link + port or network address information per instance + of an external connection point. In case a link + port is provided, the VNFM shall use that link + port when connecting the external CP to the + external VL. In a link port is not provided, the + VNFM shall create a link port on the external + VL, and use that link port to connect the + external CP to the external VL. + type: object + properties: + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but + may not be globally unique. + type: string + linkPortId: + description: > + An identifier with the intention of being + globally unique. + type: string + cpProtocolData: + description: > + Parameters for configuring the network + protocols on the link port that connects the + CP to a VL. The following conditions apply + to the attributes "linkPortId" and + "cpProtocolData": * The "linkPortId" and + "cpProtocolData" attributes shall both be + absent for the deletion of an existing external CP instance + addressed by cpInstanceId. + * At least one of these attributes shall be + present for a + to-be-created external CP instance or an existing external + CP instance. + * If the "linkPortId" attribute is absent, + the VNFM shall create a + link port. + * If the "cpProtocolData" attribute is + absent, the "linkPortId" + attribute shall be provided referencing a pre-created link port, + and the VNFM can use means outside the scope of the present + document to obtain the pre-configured address information for the + connection point from the resource representing the link port. + * If both "cpProtocolData" and "linkportId" + are provided, the API + consumer shall ensure that the cpProtocolData can be used with the + pre-created link port referenced by "linkPortId". + type: array + items: + description: > + This type represents network protocol + data. + type: object + required: + - layerProtocol + properties: + layerProtocol: + description: > + Identifier of layer(s) and protocol(s). + This attribute allows to signal the + addition of further types of layer and + protocol in future versions of the + present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents network address + data for IP over Ethernet. + type: object + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + List of IP addresses to assign to the CP + instance. Each entry represents IP + address data for fixed or dynamic IP + address assignment per subnet. If this + attribute is not present, no IP address + shall be assigned. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + fixedAddresses: + description: > + Fixed addresses to assign (from the + subnet defined by "subnetId" if + provided). Exactly one of + "fixedAddresses", "numDynamicAddresses" + or "ipAddressRange" shall be present. + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + numDynamicAddresses: + description: > + Number of dynamic addresses to assign + (from the subnet defined by "subnetId" + if provided). Exactly one of + "fixedAddresses", "numDynamicAddresses" + or "ipAddressRange" shall be present. + type: integer + addressRange: + description: > + An IP address range to be used, e.g. in + case of egress connections. In case this + attribute is present, IP addresses from + the range will be used. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected + to be unique within the VIM instance. + type: string + extLinkPorts: + description: > + Externally provided link ports to be used to connect + external connection points to this external VL. If this + attribute is not present, the VNFM shall create the link + ports on the external VL. + type: array + items: + description: > + This type represents an externally provided link port + to be used to connect an external connection point to + an external VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by + a VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM + or the resource provider. + type: string + extManagedVirtualLinks: + description: | + Information about internal VLs that are managed by the NFVO. + type: array + items: + type: object + required: + - id + - virtualLinkDescId + - resourceId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + virtualLinkDescId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vimConnectionId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other resource + provider. It is expected to be unique within the VIM + instance. + type: string + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance, or refer to external / + externally-managed virtual links. This attribute shall only be + supported and may be present if VNF-related resource + management in direct mode is applicable. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + additionalParams: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + - 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 + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "VNF LCM operation occurrence" resource corresponding to the + operation. + 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 + schema: + description: | + This type represents a VNF instance. + type: object + required: + - id + - vnfdId + - vnfProvider + - vnfProductName + - vnfSoftwareVersion + - vnfdVersion + - vnfPkgId + - instantiationState + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + vnfInstanceName: + description: > + Name of the VNF instance. This attribute can be modified with + the PATCH method. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance. This attribute + can be modified with the PATCH method. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + Provider of the VNF and the VNFD. The value is copied from the + VNFD. + type: string + vnfProductName: + description: > + Name to identify the VNF Product. The value is copied from the + VNFD. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance. This attribute shall only be + supported and present if VNF-related resource management in + direct mode is applicable. This attribute can be modified with + the PATCH method. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + instantiationState: + description: | + The instantiation state of the VNF. + type: string + enum: + - NOT_INSTANTIATED + - INSTANTIATED + instantiatedVnfInfo: + description: > + Information specific to an instantiated VNF instance. This + attribute shall be present if the instantiateState attribute + value is INSTANTIATED. + type: object + required: + - flavourId + - vnfState + properties: + flavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vnfState: + type: string + enum: + - STARTED + - STOPPED + scaleStatus: + description: > + Scale status of the VNF, one entry per aspect. Represents + for every scaling aspect how "big" the VNF has been scaled + w.r.t. that aspect. + type: array + items: + required: + - aspectId + - scaleLevel + type: object + properties: + aspectId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + scaleLevel: + description: > + Indicates the scale level. The minimum value shall + be 0 and the maximum value shall be <= maxScaleLevel + as described in the VNFD. + type: integer + extCpInfo: + description: > + Information about the external CPs exposed by the VNF + instance. + type: array + minItems: 1 + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) that a + CP uses together with protocol-related + information, like addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) + associated to the network address + information. Permitted values: + IP_OVER_ETHERNET This attribute allows to + signal the addition of further types of layer + and protocol in future versions of the present + document in a backwards-compatible way. In the + current version of the present document, only + IP over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string that + consists of groups of two hexadecimal + digits, separated by hyphens or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + extLinkPortId: + description: > + An identifier with the intention of being globally + unique. + type: string + extVirtualLinkInfo: + description: > + Information about the external VLs the VNF instance is + connected to. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port + of an external VL, i.e. a port providing + connectivity for the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + extManagedVirtualLinkInfo: + description: | + External virtual links the VNF instance is connected to. + type: array + items: + type: object + required: + - id + - vnfVirtualLinkDescId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + vnfLinkPorts: + description: | + Link ports of this VL. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + monitoringParameters: + description: | + Active monitoring parameters. + type: array + items: + type: object + required: + - id + - value + - timeStamp + properties: + id: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + name: + description: > + Human readable name of the monitoring parameter, as + defined in the VNFD. + type: string + value: + description: > + Value of the monitoring parameter known to the VNFM + (e.g. obtained for autoscaling purposes). The type + of the "value" attribute (i.e. scalar, structure + (Object in JSON), or array (of scalars, arrays or + structures/Objects)) is assumed to be defined in an + external measurement specification. + type: object + timeStamp: + description: > + Represents the point in time when the measurement + has been performed, as known to the VNFM. Should be + formatted according to ETF RFC 3339. + type: string + localizationLanguage: + description: > + Information about localization language of the VNF + (includes e.g. strings in the VNFD). The localization + languages supported by a VNF can be declared in the VNFD, + and localization language selection can take place at + instantiation time. The value shall comply with the format + defined in IETF RFC 5646. + type: string + vnfcResourceInfo: + description: > + Information about the virtualised compute and storage + resources used by the VNFCs of the VNF instance. + type: array + items: + description: > + This type represents the information on virtualised + compute and storage resources used by a VNFC in a VNF + instance. + type: object + required: + - id + - vduId + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + storageResourceIds: + description: > + References to the VirtualStorage resources. The + value refers to a VirtualStorageResourceInfo item in + the VnfInstance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfcCpInfo: + description: > + CPs of the VNFC instance. Shall be present when that + particular CP of the VNFC instance is associated to + an external CP of the VNF instance. May be present + otherwise. + type: array + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + vnfExtCpId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) + that a CP uses together with + protocol-related information, like + addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and + protocol(s) associated to the network + address information. Permitted values: + IP_OVER_ETHERNET This attribute allows + to signal the addition of further types + of layer and protocol in future versions + of the present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + vnfLinkPortId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualLinkResourceInfo: + description: > + Information about the virtualised network resources used + by the VLs of the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by an + internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfLinkPorts: + description: > + Links ports of this VL. Shall be present when the + linkPort is used for external connectivity by the + VNF (refer to VnfLinkPortInfo). May be present + otherwise. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualStorageResourceInfo: + description: > + Information on the virtualised storage resource(s) used as + storage for the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + indicators: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + instantiate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + terminate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scale: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scaleToLevel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeFlavour: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + heal: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + operate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeExtConn: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + Error: The API producer did not find a current representation for + the target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 + shall also returned if the task is not supported for the VNF + instance represented by the parent resource, which means that the + task resource consequently does not exist. In this case, the + response body shall be present, and 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that the VNF instance resource is in NOT-INSTANTIATED + state, or that another lifecycle management operation is ongoing. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_instances/{vnfInstanceId}/terminate': + parameters: + - name: vnfInstanceId + description: > + The identifier of the VNF instance to be terminated. This identifier + can be retrieved from the resource referenced by the "Location" HTTP + header in the response to a POST request creating a new VNF instance + resource. It can also be retrieved from the "id" attribute in the + payload body of that response. + in: path + type: string + required: true + post: + description: | + Terminate VNF + + The POST method terminates a VNF instance. + parameters: + - name: TerminateVnfRequest + description: Parameters for the VNF termination. + in: body + required: true + schema: + type: object + required: + - terminationType + properties: + terminationType: + description: > + Indicates whether forceful or graceful termination is + requested. Permitted values: * FORCEFUL: The VNFM will shut + down the VNF and release the + resources immediately after accepting the request. + * GRACEFUL: The VNFM will first arrange to take the VNF out of + service after accepting the request. Once the operation of + taking the VNF out of service finishes (irrespective of + whether it has succeeded or failed) or once the timer value + specified in the "gracefulTerminationTimeout" attribute + expires, the VNFM will shut down the VNF and release the + resources. + type: string + enum: + - FORCEFUL + - GRACEFUL + gracefulTerminationTimeout: + description: > + This attribute is only applicable in case of graceful + termination. It defines the time to wait for the VNF to be + taken out of service before shutting down the VNF and + releasing the resources. The unit is seconds. If not given and + the "terminationType" attribute is set to "GRACEFUL", it is + expected that the VNFM waits for the successful taking out of + service of the VNF, no matter how long it takes, before + shutting down the VNF and releasing the resources. + type: integer + additionalParams: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + - 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 + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "VNF LCM operation occurrence" resource corresponding to the + operation. + 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 + schema: + description: | + This type represents a VNF instance. + type: object + required: + - id + - vnfdId + - vnfProvider + - vnfProductName + - vnfSoftwareVersion + - vnfdVersion + - vnfPkgId + - instantiationState + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + vnfInstanceName: + description: > + Name of the VNF instance. This attribute can be modified with + the PATCH method. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance. This attribute + can be modified with the PATCH method. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + Provider of the VNF and the VNFD. The value is copied from the + VNFD. + type: string + vnfProductName: + description: > + Name to identify the VNF Product. The value is copied from the + VNFD. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance. This attribute shall only be + supported and present if VNF-related resource management in + direct mode is applicable. This attribute can be modified with + the PATCH method. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + instantiationState: + description: | + The instantiation state of the VNF. + type: string + enum: + - NOT_INSTANTIATED + - INSTANTIATED + instantiatedVnfInfo: + description: > + Information specific to an instantiated VNF instance. This + attribute shall be present if the instantiateState attribute + value is INSTANTIATED. + type: object + required: + - flavourId + - vnfState + properties: + flavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vnfState: + type: string + enum: + - STARTED + - STOPPED + scaleStatus: + description: > + Scale status of the VNF, one entry per aspect. Represents + for every scaling aspect how "big" the VNF has been scaled + w.r.t. that aspect. + type: array + items: + required: + - aspectId + - scaleLevel + type: object + properties: + aspectId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + scaleLevel: + description: > + Indicates the scale level. The minimum value shall + be 0 and the maximum value shall be <= maxScaleLevel + as described in the VNFD. + type: integer + extCpInfo: + description: > + Information about the external CPs exposed by the VNF + instance. + type: array + minItems: 1 + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) that a + CP uses together with protocol-related + information, like addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) + associated to the network address + information. Permitted values: + IP_OVER_ETHERNET This attribute allows to + signal the addition of further types of layer + and protocol in future versions of the present + document in a backwards-compatible way. In the + current version of the present document, only + IP over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string that + consists of groups of two hexadecimal + digits, separated by hyphens or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + extLinkPortId: + description: > + An identifier with the intention of being globally + unique. + type: string + extVirtualLinkInfo: + description: > + Information about the external VLs the VNF instance is + connected to. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port + of an external VL, i.e. a port providing + connectivity for the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + extManagedVirtualLinkInfo: + description: | + External virtual links the VNF instance is connected to. + type: array + items: + type: object + required: + - id + - vnfVirtualLinkDescId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + vnfLinkPorts: + description: | + Link ports of this VL. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + monitoringParameters: + description: | + Active monitoring parameters. + type: array + items: + type: object + required: + - id + - value + - timeStamp + properties: + id: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + name: + description: > + Human readable name of the monitoring parameter, as + defined in the VNFD. + type: string + value: + description: > + Value of the monitoring parameter known to the VNFM + (e.g. obtained for autoscaling purposes). The type + of the "value" attribute (i.e. scalar, structure + (Object in JSON), or array (of scalars, arrays or + structures/Objects)) is assumed to be defined in an + external measurement specification. + type: object + timeStamp: + description: > + Represents the point in time when the measurement + has been performed, as known to the VNFM. Should be + formatted according to ETF RFC 3339. + type: string + localizationLanguage: + description: > + Information about localization language of the VNF + (includes e.g. strings in the VNFD). The localization + languages supported by a VNF can be declared in the VNFD, + and localization language selection can take place at + instantiation time. The value shall comply with the format + defined in IETF RFC 5646. + type: string + vnfcResourceInfo: + description: > + Information about the virtualised compute and storage + resources used by the VNFCs of the VNF instance. + type: array + items: + description: > + This type represents the information on virtualised + compute and storage resources used by a VNFC in a VNF + instance. + type: object + required: + - id + - vduId + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + storageResourceIds: + description: > + References to the VirtualStorage resources. The + value refers to a VirtualStorageResourceInfo item in + the VnfInstance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfcCpInfo: + description: > + CPs of the VNFC instance. Shall be present when that + particular CP of the VNFC instance is associated to + an external CP of the VNF instance. May be present + otherwise. + type: array + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + vnfExtCpId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) + that a CP uses together with + protocol-related information, like + addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and + protocol(s) associated to the network + address information. Permitted values: + IP_OVER_ETHERNET This attribute allows + to signal the addition of further types + of layer and protocol in future versions + of the present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + vnfLinkPortId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualLinkResourceInfo: + description: > + Information about the virtualised network resources used + by the VLs of the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by an + internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfLinkPorts: + description: > + Links ports of this VL. Shall be present when the + linkPort is used for external connectivity by the + VNF (refer to VnfLinkPortInfo). May be present + otherwise. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualStorageResourceInfo: + description: > + Information on the virtualised storage resource(s) used as + storage for the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + indicators: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + instantiate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + terminate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scale: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scaleToLevel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeFlavour: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + heal: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + operate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeExtConn: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that the VNF instance resource is in NOT-INSTANTIATED + state, or that another lifecycle management operation is ongoing. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_instances/{vnfInstanceId}/heal': + parameters: + - name: vnfInstanceId + description: > + Identifier of the VNF instance to be healed. This identifier can be + retrieved from the resource referenced by the "Location" HTTP header + in the response to a POST request creating a new VNF instance + resource. It can also be retrieved from the "id" attribute in the + payload body of that response. + in: path + type: string + required: true + post: + description: | + Heal VNF + + The POST method requests to heal a VNF instance resource. + parameters: + - name: HealVnfRequest + description: Parameters for the Heal VNF operation. + in: body + required: true + schema: + type: object + properties: + cause: + description: | + Indicates the reason why a healing procedure is required. + type: string + additionalParams: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + - 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 + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "VNF LCM operation occurrence" resource corresponding to the + operation. + 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 + schema: + description: | + This type represents a VNF instance. + type: object + required: + - id + - vnfdId + - vnfProvider + - vnfProductName + - vnfSoftwareVersion + - vnfdVersion + - vnfPkgId + - instantiationState + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + vnfInstanceName: + description: > + Name of the VNF instance. This attribute can be modified with + the PATCH method. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance. This attribute + can be modified with the PATCH method. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + Provider of the VNF and the VNFD. The value is copied from the + VNFD. + type: string + vnfProductName: + description: > + Name to identify the VNF Product. The value is copied from the + VNFD. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance. This attribute shall only be + supported and present if VNF-related resource management in + direct mode is applicable. This attribute can be modified with + the PATCH method. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + instantiationState: + description: | + The instantiation state of the VNF. + type: string + enum: + - NOT_INSTANTIATED + - INSTANTIATED + instantiatedVnfInfo: + description: > + Information specific to an instantiated VNF instance. This + attribute shall be present if the instantiateState attribute + value is INSTANTIATED. + type: object + required: + - flavourId + - vnfState + properties: + flavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vnfState: + type: string + enum: + - STARTED + - STOPPED + scaleStatus: + description: > + Scale status of the VNF, one entry per aspect. Represents + for every scaling aspect how "big" the VNF has been scaled + w.r.t. that aspect. + type: array + items: + required: + - aspectId + - scaleLevel + type: object + properties: + aspectId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + scaleLevel: + description: > + Indicates the scale level. The minimum value shall + be 0 and the maximum value shall be <= maxScaleLevel + as described in the VNFD. + type: integer + extCpInfo: + description: > + Information about the external CPs exposed by the VNF + instance. + type: array + minItems: 1 + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) that a + CP uses together with protocol-related + information, like addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) + associated to the network address + information. Permitted values: + IP_OVER_ETHERNET This attribute allows to + signal the addition of further types of layer + and protocol in future versions of the present + document in a backwards-compatible way. In the + current version of the present document, only + IP over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string that + consists of groups of two hexadecimal + digits, separated by hyphens or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + extLinkPortId: + description: > + An identifier with the intention of being globally + unique. + type: string + extVirtualLinkInfo: + description: > + Information about the external VLs the VNF instance is + connected to. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port + of an external VL, i.e. a port providing + connectivity for the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + extManagedVirtualLinkInfo: + description: | + External virtual links the VNF instance is connected to. + type: array + items: + type: object + required: + - id + - vnfVirtualLinkDescId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + vnfLinkPorts: + description: | + Link ports of this VL. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + monitoringParameters: + description: | + Active monitoring parameters. + type: array + items: + type: object + required: + - id + - value + - timeStamp + properties: + id: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + name: + description: > + Human readable name of the monitoring parameter, as + defined in the VNFD. + type: string + value: + description: > + Value of the monitoring parameter known to the VNFM + (e.g. obtained for autoscaling purposes). The type + of the "value" attribute (i.e. scalar, structure + (Object in JSON), or array (of scalars, arrays or + structures/Objects)) is assumed to be defined in an + external measurement specification. + type: object + timeStamp: + description: > + Represents the point in time when the measurement + has been performed, as known to the VNFM. Should be + formatted according to ETF RFC 3339. + type: string + localizationLanguage: + description: > + Information about localization language of the VNF + (includes e.g. strings in the VNFD). The localization + languages supported by a VNF can be declared in the VNFD, + and localization language selection can take place at + instantiation time. The value shall comply with the format + defined in IETF RFC 5646. + type: string + vnfcResourceInfo: + description: > + Information about the virtualised compute and storage + resources used by the VNFCs of the VNF instance. + type: array + items: + description: > + This type represents the information on virtualised + compute and storage resources used by a VNFC in a VNF + instance. + type: object + required: + - id + - vduId + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + storageResourceIds: + description: > + References to the VirtualStorage resources. The + value refers to a VirtualStorageResourceInfo item in + the VnfInstance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfcCpInfo: + description: > + CPs of the VNFC instance. Shall be present when that + particular CP of the VNFC instance is associated to + an external CP of the VNF instance. May be present + otherwise. + type: array + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + vnfExtCpId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) + that a CP uses together with + protocol-related information, like + addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and + protocol(s) associated to the network + address information. Permitted values: + IP_OVER_ETHERNET This attribute allows + to signal the addition of further types + of layer and protocol in future versions + of the present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + vnfLinkPortId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualLinkResourceInfo: + description: > + Information about the virtualised network resources used + by the VLs of the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by an + internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfLinkPorts: + description: > + Links ports of this VL. Shall be present when the + linkPort is used for external connectivity by the + VNF (refer to VnfLinkPortInfo). May be present + otherwise. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualStorageResourceInfo: + description: > + Information on the virtualised storage resource(s) used as + storage for the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + indicators: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + instantiate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + terminate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scale: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scaleToLevel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeFlavour: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + heal: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + operate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeExtConn: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + Error: The API producer did not find a current representation for + the target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 + shall also returned if the task is not supported for the VNF + instance represented by the parent resource, which means that the + task resource consequently does not exist. In this case, the + response body shall be present, and 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that the VNF instance resource is in NOT-INSTANTIATED + state, or that another lifecycle management operation is ongoing. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_instances/{vnfInstanceId}/operate': + parameters: + - name: vnfInstanceId + description: > + Identifier of the VNF instance to be operated. This identifier can be + retrieved from the resource referenced by the "Location" HTTP header + in the response to a POST request creating a new VNF instance + resource. It can also be retrieved from the "id" attribute in the + payload body of that response. + in: path + type: string + required: true + post: + description: > + Operate VNF + + + The POST method changes the operational state of a VNF instance + resource. + parameters: + - name: OperateVnfRequest + description: Parameters for the Operate VNF operation. + in: body + required: true + schema: + description: > + This type represents request parameters for the "Operate VNF" + operation. + type: object + required: + - changeStateTo + properties: + changeStateTo: + type: string + enum: + - STARTED + - STOPPED + stopType: + description: > + * FORCEFUL: The VNFM will stop the VNF immediately after + accepting the + request. + * GRACEFUL: The VNFM will first arrange to take the VNF out of + service + after accepting the request. Once that operation is successful or once + the timer value specified in the "gracefulStopTimeout" attribute + expires, the VNFM will stop the VNF. + type: string + enum: + - FORCEFUL + - GRACEFUL + gracefulStopTimeout: + description: > + The time interval (in seconds) to wait for the VNF to be taken + out of service during graceful stop, before stopping the VNF. + The “stopType†and “gracefulStopTimeout†attributes shall be + absent, when the “changeStateTo†attribute is equal to + “STARTEDâ€. The “gracefulStopTimeout†attribute shall be + present, when the “changeStateTo†is equal to “STOPPED†and + the “stopType†attribute is equal to “GRACEFULâ€. The + “gracefulStopTimeout†attribute shall be absent, when the + “changeStateTo†attribute is equal to “STOPPED†and the + “stopType†attribute is equal to “FORCEFULâ€. The request shall + be treated as if the “stopType†attribute was set to + â€FORCEFULâ€, when the “changeStateTo†attribute is equal to + “STOPPED†and the “stopType†attribute is absent. + type: integer + additionalParams: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + - 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 + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "VNF LCM operation occurrence" resource corresponding to the + operation. + 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 + schema: + description: | + This type represents a VNF instance. + type: object + required: + - id + - vnfdId + - vnfProvider + - vnfProductName + - vnfSoftwareVersion + - vnfdVersion + - vnfPkgId + - instantiationState + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + vnfInstanceName: + description: > + Name of the VNF instance. This attribute can be modified with + the PATCH method. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance. This attribute + can be modified with the PATCH method. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + Provider of the VNF and the VNFD. The value is copied from the + VNFD. + type: string + vnfProductName: + description: > + Name to identify the VNF Product. The value is copied from the + VNFD. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance. This attribute shall only be + supported and present if VNF-related resource management in + direct mode is applicable. This attribute can be modified with + the PATCH method. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + instantiationState: + description: | + The instantiation state of the VNF. + type: string + enum: + - NOT_INSTANTIATED + - INSTANTIATED + instantiatedVnfInfo: + description: > + Information specific to an instantiated VNF instance. This + attribute shall be present if the instantiateState attribute + value is INSTANTIATED. + type: object + required: + - flavourId + - vnfState + properties: + flavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vnfState: + type: string + enum: + - STARTED + - STOPPED + scaleStatus: + description: > + Scale status of the VNF, one entry per aspect. Represents + for every scaling aspect how "big" the VNF has been scaled + w.r.t. that aspect. + type: array + items: + required: + - aspectId + - scaleLevel + type: object + properties: + aspectId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + scaleLevel: + description: > + Indicates the scale level. The minimum value shall + be 0 and the maximum value shall be <= maxScaleLevel + as described in the VNFD. + type: integer + extCpInfo: + description: > + Information about the external CPs exposed by the VNF + instance. + type: array + minItems: 1 + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) that a + CP uses together with protocol-related + information, like addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) + associated to the network address + information. Permitted values: + IP_OVER_ETHERNET This attribute allows to + signal the addition of further types of layer + and protocol in future versions of the present + document in a backwards-compatible way. In the + current version of the present document, only + IP over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string that + consists of groups of two hexadecimal + digits, separated by hyphens or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + extLinkPortId: + description: > + An identifier with the intention of being globally + unique. + type: string + extVirtualLinkInfo: + description: > + Information about the external VLs the VNF instance is + connected to. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port + of an external VL, i.e. a port providing + connectivity for the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + extManagedVirtualLinkInfo: + description: | + External virtual links the VNF instance is connected to. + type: array + items: + type: object + required: + - id + - vnfVirtualLinkDescId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + vnfLinkPorts: + description: | + Link ports of this VL. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + monitoringParameters: + description: | + Active monitoring parameters. + type: array + items: + type: object + required: + - id + - value + - timeStamp + properties: + id: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + name: + description: > + Human readable name of the monitoring parameter, as + defined in the VNFD. + type: string + value: + description: > + Value of the monitoring parameter known to the VNFM + (e.g. obtained for autoscaling purposes). The type + of the "value" attribute (i.e. scalar, structure + (Object in JSON), or array (of scalars, arrays or + structures/Objects)) is assumed to be defined in an + external measurement specification. + type: object + timeStamp: + description: > + Represents the point in time when the measurement + has been performed, as known to the VNFM. Should be + formatted according to ETF RFC 3339. + type: string + localizationLanguage: + description: > + Information about localization language of the VNF + (includes e.g. strings in the VNFD). The localization + languages supported by a VNF can be declared in the VNFD, + and localization language selection can take place at + instantiation time. The value shall comply with the format + defined in IETF RFC 5646. + type: string + vnfcResourceInfo: + description: > + Information about the virtualised compute and storage + resources used by the VNFCs of the VNF instance. + type: array + items: + description: > + This type represents the information on virtualised + compute and storage resources used by a VNFC in a VNF + instance. + type: object + required: + - id + - vduId + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + storageResourceIds: + description: > + References to the VirtualStorage resources. The + value refers to a VirtualStorageResourceInfo item in + the VnfInstance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfcCpInfo: + description: > + CPs of the VNFC instance. Shall be present when that + particular CP of the VNFC instance is associated to + an external CP of the VNF instance. May be present + otherwise. + type: array + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + vnfExtCpId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) + that a CP uses together with + protocol-related information, like + addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and + protocol(s) associated to the network + address information. Permitted values: + IP_OVER_ETHERNET This attribute allows + to signal the addition of further types + of layer and protocol in future versions + of the present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + vnfLinkPortId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualLinkResourceInfo: + description: > + Information about the virtualised network resources used + by the VLs of the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by an + internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfLinkPorts: + description: > + Links ports of this VL. Shall be present when the + linkPort is used for external connectivity by the + VNF (refer to VnfLinkPortInfo). May be present + otherwise. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualStorageResourceInfo: + description: > + Information on the virtualised storage resource(s) used as + storage for the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + indicators: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + instantiate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + terminate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scale: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scaleToLevel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeFlavour: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + heal: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + operate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeExtConn: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + Error: The API producer did not find a current representation for + the target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 + shall also returned if the task is not supported for the VNF + instance represented by the parent resource, which means that the + task resource consequently does not exist. In this case, the + response body shall be present, and 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that the VNF instance resource is in NOT-INSTANTIATED + state, or that another lifecycle management operation is ongoing. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_instances/{vnfInstanceId}/change_ext_conn': + parameters: + - name: vnfInstanceId + description: > + Identifier of the VNF instance of which the external connectivity is + requested to be changed. This identifier can be retrieved from the + resource referenced by the "Location" HTTP header in the response to a + POST request creating a new VNF instance resource. It can also be + retrieved from the "id" attribute in the payload body of that + response. + in: path + type: string + required: true + post: + description: | + Change External VNF Connectivity + + The POST method changes the external connectivity of a VNF instance. + parameters: + - name: ChangeExtVnfConnectivityRequest + description: | + Parameters for the Change external VNF connectivity operation. + in: body + required: true + schema: + description: > + This type represents request parameters for the "Change external + VNF connectivity" operation to modify the external connectivity of + a VNF instance. + type: object + required: + - extVirtualLinks + properties: + extVirtualLinks: + description: > + Information about external VLs to change (e.g. connect the VNF + to). + type: array + items: + description: | + This type represents an external VL. + type: object + required: + - id + - resourceId + - extCps + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimConnectionId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other resource + provider. It is expected to be unique within the VIM + instance. + type: string + extCps: + description: > + External CPs of the VNF to be connected to this external + VL. + type: array + items: + description: > + This type represents configuration information for + external CPs created from a CPD. + type: object + required: + - cpdId + properties: + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpConfig: + description: > + List of instance data that need to be configured + on the CP instances created from the respective + CPD. + type: array + items: + description: > + This type represents an externally provided link + port or network address information per instance + of an external connection point. In case a link + port is provided, the VNFM shall use that link + port when connecting the external CP to the + external VL. In a link port is not provided, the + VNFM shall create a link port on the external + VL, and use that link port to connect the + external CP to the external VL. + type: object + properties: + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but + may not be globally unique. + type: string + linkPortId: + description: > + An identifier with the intention of being + globally unique. + type: string + cpProtocolData: + description: > + Parameters for configuring the network + protocols on the link port that connects the + CP to a VL. The following conditions apply + to the attributes "linkPortId" and + "cpProtocolData": * The "linkPortId" and + "cpProtocolData" attributes shall both be + absent for the deletion of an existing external CP instance + addressed by cpInstanceId. + * At least one of these attributes shall be + present for a + to-be-created external CP instance or an existing external + CP instance. + * If the "linkPortId" attribute is absent, + the VNFM shall create a + link port. + * If the "cpProtocolData" attribute is + absent, the "linkPortId" + attribute shall be provided referencing a pre-created link port, + and the VNFM can use means outside the scope of the present + document to obtain the pre-configured address information for the + connection point from the resource representing the link port. + * If both "cpProtocolData" and "linkportId" + are provided, the API + consumer shall ensure that the cpProtocolData can be used with the + pre-created link port referenced by "linkPortId". + type: array + items: + description: > + This type represents network protocol + data. + type: object + required: + - layerProtocol + properties: + layerProtocol: + description: > + Identifier of layer(s) and protocol(s). + This attribute allows to signal the + addition of further types of layer and + protocol in future versions of the + present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents network address + data for IP over Ethernet. + type: object + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + List of IP addresses to assign to the CP + instance. Each entry represents IP + address data for fixed or dynamic IP + address assignment per subnet. If this + attribute is not present, no IP address + shall be assigned. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + fixedAddresses: + description: > + Fixed addresses to assign (from the + subnet defined by "subnetId" if + provided). Exactly one of + "fixedAddresses", "numDynamicAddresses" + or "ipAddressRange" shall be present. + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + numDynamicAddresses: + description: > + Number of dynamic addresses to assign + (from the subnet defined by "subnetId" + if provided). Exactly one of + "fixedAddresses", "numDynamicAddresses" + or "ipAddressRange" shall be present. + type: integer + addressRange: + description: > + An IP address range to be used, e.g. in + case of egress connections. In case this + attribute is present, IP addresses from + the range will be used. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected + to be unique within the VIM instance. + type: string + extLinkPorts: + description: > + Externally provided link ports to be used to connect + external connection points to this external VL. If this + attribute is not present, the VNFM shall create the link + ports on the external VL. + type: array + items: + description: > + This type represents an externally provided link port + to be used to connect an external connection point to + an external VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by + a VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM + or the resource provider. + type: string + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance, or refer to external virtual + links. This attribute shall only be supported and may be + present if VNF-related resource management in direct mode is + applicable. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + additionalParams: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + - 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 + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "VNF LCM operation occurrence" resource corresponding to the + operation. + 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 + schema: + description: | + This type represents a VNF instance. + type: object + required: + - id + - vnfdId + - vnfProvider + - vnfProductName + - vnfSoftwareVersion + - vnfdVersion + - vnfPkgId + - instantiationState + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + vnfInstanceName: + description: > + Name of the VNF instance. This attribute can be modified with + the PATCH method. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance. This attribute + can be modified with the PATCH method. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + Provider of the VNF and the VNFD. The value is copied from the + VNFD. + type: string + vnfProductName: + description: > + Name to identify the VNF Product. The value is copied from the + VNFD. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + Information about VIM connections to be used for managing the + resources for the VNF instance. This attribute shall only be + supported and present if VNF-related resource management in + direct mode is applicable. This attribute can be modified with + the PATCH method. + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure is + used to convey VIM-related parameters over the Or-Vnfm + interface. Additional parameters for a VIM may be configured + into the VNFM by means outside the scope of the present + document, and bound to the identifier of that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines the + structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. The set of + permitted values is expected to change over time as new + types or versions of VIMs become available. The ETSI NFV + registry of VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. In + JSON, a set of key- value pairs is represented as an + object. It shall comply with the provisions defined in + clause 4 of IETF RFC 7159. + type: object + instantiationState: + description: | + The instantiation state of the VNF. + type: string + enum: + - NOT_INSTANTIATED + - INSTANTIATED + instantiatedVnfInfo: + description: > + Information specific to an instantiated VNF instance. This + attribute shall be present if the instantiateState attribute + value is INSTANTIATED. + type: object + required: + - flavourId + - vnfState + properties: + flavourId: + description: | + An identifier that is unique within a VNF descriptor. + type: string + vnfState: + type: string + enum: + - STARTED + - STOPPED + scaleStatus: + description: > + Scale status of the VNF, one entry per aspect. Represents + for every scaling aspect how "big" the VNF has been scaled + w.r.t. that aspect. + type: array + items: + required: + - aspectId + - scaleLevel + type: object + properties: + aspectId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + scaleLevel: + description: > + Indicates the scale level. The minimum value shall + be 0 and the maximum value shall be <= maxScaleLevel + as described in the VNFD. + type: integer + extCpInfo: + description: > + Information about the external CPs exposed by the VNF + instance. + type: array + minItems: 1 + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) that a + CP uses together with protocol-related + information, like addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) + associated to the network address + information. Permitted values: + IP_OVER_ETHERNET This attribute allows to + signal the addition of further types of layer + and protocol in future versions of the present + document in a backwards-compatible way. In the + current version of the present document, only + IP over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string that + consists of groups of two hexadecimal + digits, separated by hyphens or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + extLinkPortId: + description: > + An identifier with the intention of being globally + unique. + type: string + extVirtualLinkInfo: + description: > + Information about the external VLs the VNF instance is + connected to. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port + of an external VL, i.e. a port providing + connectivity for the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + extManagedVirtualLinkInfo: + description: | + External virtual links the VNF instance is connected to. + type: array + items: + type: object + required: + - id + - vnfVirtualLinkDescId + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + vnfLinkPorts: + description: | + Link ports of this VL. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + monitoringParameters: + description: | + Active monitoring parameters. + type: array + items: + type: object + required: + - id + - value + - timeStamp + properties: + id: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + name: + description: > + Human readable name of the monitoring parameter, as + defined in the VNFD. + type: string + value: + description: > + Value of the monitoring parameter known to the VNFM + (e.g. obtained for autoscaling purposes). The type + of the "value" attribute (i.e. scalar, structure + (Object in JSON), or array (of scalars, arrays or + structures/Objects)) is assumed to be defined in an + external measurement specification. + type: object + timeStamp: + description: > + Represents the point in time when the measurement + has been performed, as known to the VNFM. Should be + formatted according to ETF RFC 3339. + type: string + localizationLanguage: + description: > + Information about localization language of the VNF + (includes e.g. strings in the VNFD). The localization + languages supported by a VNF can be declared in the VNFD, + and localization language selection can take place at + instantiation time. The value shall comply with the format + defined in IETF RFC 5646. + type: string + vnfcResourceInfo: + description: > + Information about the virtualised compute and storage + resources used by the VNFCs of the VNF instance. + type: array + items: + description: > + This type represents the information on virtualised + compute and storage resources used by a VNFC in a VNF + instance. + type: object + required: + - id + - vduId + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + storageResourceIds: + description: > + References to the VirtualStorage resources. The + value refers to a VirtualStorageResourceInfo item in + the VnfInstance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfcCpInfo: + description: > + CPs of the VNFC instance. Shall be present when that + particular CP of the VNFC instance is associated to + an external CP of the VNF instance. May be present + otherwise. + type: array + items: + type: object + required: + - id + - cpdId + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpdId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + vnfExtCpId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + cpProtocolInfo: + description: | + Network protocol information for this CP. + type: array + items: + description: > + This type describes the protocol layer(s) + that a CP uses together with + protocol-related information, like + addresses. + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and + protocol(s) associated to the network + address information. Permitted values: + IP_OVER_ETHERNET This attribute allows + to signal the addition of further types + of layer and protocol in future versions + of the present document in a + backwards-compatible way. In the current + version of the present document, only IP + over Ethernet is supported. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + This type represents information about a + network address that has been assigned. + type: object + required: + - macAddress + properties: + macAddress: + description: > + A MAC address. Representation: string + that consists of groups of two + hexadecimal digits, separated by hyphens + or colons. + type: string + format: MAC + ipAddresses: + description: > + Addresses assigned to the CP instance. + Each entry represents IP addresses + assigned by fixed or dynamic IP address + assignment per subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. Permitted + values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the + subnet defined by "subnetId" if + provided). + type: array + items: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + isDynamic: + description: > + Indicates whether this set of addresses + was assigned dynamically (true) or based + on address information provided as input + from the API consumer (false). Shall be + present if "addresses" is present and + shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case + of egress connections. Exactly one of + "addresses" or "addressRange" shall be + present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + maxAddress: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + subnetId: + description: > + An IPV4 or IPV6 address. Representation: + In case of an IPV4 address, string that + consists of four decimal integers + separated by dots, each integer ranging + from 0 to 255. In case of an IPV6 + address, string that consists of groups + of zero to four hexadecimal digits, + separated by colons. + type: string + format: IP + vnfLinkPortId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualLinkResourceInfo: + description: > + Information about the virtualised network resources used + by the VLs of the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by an + internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vnfVirtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfLinkPorts: + description: > + Links ports of this VL. Shall be present when the + linkPort is used for external connectivity by the + VNF (refer to VnfLinkPortInfo). May be present + otherwise. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that + allows addressing a virtualised resource that + is used by a VNF instance. Information about + the resource is available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or + other resource provider. It is expected to + be unique within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the + VIM or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the + respective type within a VNF instance, but may + not be globally unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + virtualStorageResourceInfo: + description: > + Information on the virtualised storage resource(s) used as + storage for the VNF instance. + type: array + items: + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + reservationId: + description: > + An identifier with the intention of being globally + unique. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + indicators: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + instantiate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + terminate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scale: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + scaleToLevel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeFlavour: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + heal: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + operate: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + changeExtConn: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that another LCM operation is ongoing. 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + /vnf_lcm_op_occs: + get: + description: > + Get Operation Status + + + The client can use this method to query status information about + multiple VNF lifecycle management operation occurrences. + 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 + responses: + '200': + description: > + OK + + Status information for zero or more VNF lifecycle management + operation occurrences was queried successfully. The response body + shall contain status information about zero or more VNF lifecycle + operation occurrences. + 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: + description: > + This type represents a VNF lifecycle management operation + occurrence. + type: object + required: + - id + - operationState + - stateEnteredTime + - startTime + - vnfInstanceId + - operation + - isAutomaticInvocation + - operationParams + - isCancelPending + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + operationState: + description: > + Value | Description ------|------------ STARTING | The LCM + operation is starting. PROCESSING | The LCM operation is + currently in execution. COMPLETED | he LCM operation has been + completed successfully. FAILED_TEMP | The LCM operation has + failed and execution has stopped, but the execution of the + operation is not considered to be closed. FAILED | The LCM + operation has failed and it cannot be retried or rolled back, + as it is determined that such action won't succeed. + ROLLING_BACK | The LCM operation is currently being rolled + back. ROLLED_BACK | The LCM operation has been successfully + rolled back, i.e. The state of the VNF prior to the original + operation invocation has been restored as closely as possible. + type: string + enum: + - STARTING + - PROCESSING + - COMPLETED + - FAILED_TEMP + - FAILED + - ROLLING_BACK + - ROLLED_BACK + stateEnteredTime: + description: | + Date-time when the current state was entered. + type: string + format: date-time + startTime: + description: | + Date-time of the start of the operation. + type: string + format: date-time + vnfInstanceId: + description: | + An identifier with the intention of being globally unique. + type: string + grantId: + description: | + An identifier with the intention of being globally unique. + type: string + operation: + description: > + Value | Description ------|------------ INSTANTIATE | + Represents the "Instantiate VNF" LCM operation. SCALE | + Represents the "Scale VNF" LCM operation. SCALE_TO_LEVEL | + Represents the "Scale VNF to Level" LCM operation. + CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM + operation. TERMINATE | Represents the "Terminate VNF" LCM + operation. HEAL | Represents the "Heal VNF" LCM operation. + OPERATE | Represents the "Operate VNF" LCM operation. + CHANGE_EXT_CONN | Represents the "Change external VNF + connectivity" LCM operation. MODIFY_INFO | Represents the + "Modify VNF Information" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - MODIFY_INFO + isAutomaticInvocation: + description: > + Set to true if this VNF LCM operation occurrence has been + triggered by an automated procedure inside the VNFM (i.e. + ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf + triggered by auto-heal). Set to false otherwise. + type: boolean + operationParams: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + isCancelPending: + description: > + If the VNF LCM operation occurrence is in "STARTING", + "PROCESSING" or "ROLLING_BACK" state and the operation is + being cancelled, this attribute shall be set to true. + Otherwise, it shall be set to false. + type: boolean + cancelMode: + description: > + Cancellation mode. GRACEFUL: If the VNF LCM operation + occurrence is in "PROCESSING" or "ROLLING_BACK" state, the + VNFM shall not start any new resource management operation and + shall wait for the ongoing resource management operations in + the underlying system, typically the VIM, to finish execution + or to time out. After that, the VNFM shall put the operation + occurrence into the FAILED_TEMP state. If the VNF LCM + operation occurrence is in "STARTING" state, the VNFM shall + not start any resource management operation and shall wait for + the granting request to finish execution or time out. After + that, the VNFM shall put the operation occurrence into the + ROLLED_BACK state. FORCEFUL: If the VNF LCM operation + occurrence is in "PROCESSING" or "ROLLING_BACK" state, the + VNFM shall not start any new resource management operation, + shall cancel the ongoing resource management operations in the + underlying system, typically the VIM, and shall wait for the + cancellation to finish or to time out. After that, the VNFM + shall put the operation occurrence into the FAILED_TEMP + state. If the VNF LCM operation occurrence is in "STARTING" + state, the VNFM shall not start any resource management + operation and put the operation occurrence into the + ROLLED_BACK state. + type: string + enum: + - GRACEFUL + - FORCEFUL + error: + description: > + The definition of the general "ProblemDetails" data structure + from IETF RFC 7807 [19] is reproduced inthis structure. + Compared to the general framework defined in IETF RFC 7807 + [19], the "status" and "detail" attributes are mandated to be + included by the present document, to ensure that the response + contains additional textual information about an error. IETF + RFC 7807 [19] foresees extensibility of the "ProblemDetails" + type. It is possible that particular APIs in the present + document, or particular implementations, define extensions to + define additional attributes that provide more information + about the error. The description column only provides some + explanation of the meaning to Facilitate understanding of the + design. For a full description, see IETF RFC 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that + identifies the problem type. It is encouraged that the URI + provides human-readable documentation for the problem + (e.g. using HTML) when dereferenced. When this member is + not present, its value is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It + should not change from occurrence to occurrence of the + problem, except for purposes of localization. If type is + given and other than "about:blank", this attribute shall + also be provided. A short, human-readable summary of the + problem type. It SHOULD NOT change from occurrence to + occurrence of the problem, except for purposes of + localization (e.g., using proactive content negotiation; + see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. + The HTTP status code ([RFC7231], Section 6) generated by + the origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence + of the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of + the problem. It may yield further information if + dereferenced. + type: string + format: URI + resourceChanges: + description: > + This attribute contains information about the cumulative + changes to virtualised resources that were performed so far by + the LCM operation since its start, if applicable. + type: object + properties: + affectedVnfcs: + description: > + Information about VNFC instances that were affected during + the lifecycle operation. This allows the NFVO to obtain + the information contained in the latest "result" + notification if it has not received it due to an error or + a wrongly configured subscription filter. + type: array + items: + description: > + This type provides information about added, deleted, + modified and temporary VNFCs. + type: object + required: + - id + - vduId + - changeType + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + changeType: + description: > + Signals the type of change. Permitted values: * + ADDED * REMOVED * MODIFIED * TEMPORARY For a + temporary resource, an AffectedVnfc structure exists + as long as the temporary resource exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + affectedVnfcCpIds: + description: > + Identifiers of CP(s) of the VNFC instance that were + affected by the change. Shall be present for those + affected CPs of the VNFC instance that are + associated to an external CP of the VNF instance. + May be present for further affected CPs of the VNFC + instance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + addedStorageResourceIds: + description: > + References to VirtualStorage resources that have + been added. Each value refers to a + VirtualStorageResourceInfo item in the VnfInstance + that was added to the VNFC. It shall be provided if + at least one storage resource was added to the VNFC. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + removedStorageResourceIds: + description: > + References to VirtualStorage resources that have + been removed. The value contains the identifier of a + VirtualStorageResourceInfo item that has been + removed from the VNFC, and might no longer exist in + the VnfInstance. It shall be provided if at least + one storage resource was removed from the VNFC. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + affectedVirtualLinks: + description: > + Information about VL instances that were affected during + the lifecycle operation. This allows the NFVO to obtain + the information contained in the latest "result" + notification if it has not received it due to an error or + a wrongly configured subscription filter. + type: array + items: + description: > + This type provides information about added, deleted, + modified and temporary VLs. + type: object + required: + - id + - virtualLinkDescId + - changeType + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + changeType: + description: > + Signals the type of change. Permitted values: * + ADDED * REMOVED * MODIFIED * TEMPORARY * + LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary + resource, an AffectedVirtualLink structure exists as + long as the temporary resource exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + - LINK_PORT_ADDED + - LINK_PORT_REMOVED + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + affectedVirtualStorages: + description: > + Information about virtualised storage instances that were + affected during the lifecycle operation. This allows the + NFVO to obtain the information contained in the latest + "result" notification if it has not received it due to an + error or a wrongly configured subscription filter. + type: array + items: + description: > + This type provides information about added, deleted, + modified and temporary virtual storage resources. + type: object + required: + - id + - virtualStorageDescId + - changeType + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + changeType: + description: > + Signals the type of change. Permitted values: * + ADDED * REMOVED * MODIFIED * TEMPORARY For a + temporary resource, an AffectedVirtualStorage + structure exists as long as the temporary resource + exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + changedInfo: + description: > + This type represents attribute modifications that were + performed on an "Individual VNF instance" resource. The + attributes that can be included consist of those requested to + be modified explicitly in the "VnfInfoModificationRequest" + data structure, and additional attributes of the "VnfInstance" + data structure that were modified implicitly e.g. when + modifying the referenced VNF package. + type: object + properties: + vnfInstanceName: + description: > + If present, this attribute signals modifications of the + "vnfInstanceName" attribute in "VnfInstance". + type: string + vnfInstanceDescription: + description: > + If present, this attribute signals modifications of the + "vnfInstanceDescription" attribute in "VnfInstance". + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order + of the pairs in the list is not significant. In JSON, a + set of key- value pairs is represented as an object. It + shall comply with the provisions defined in clause 4 of + IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order + of the pairs in the list is not significant. In JSON, a + set of key- value pairs is represented as an object. It + shall comply with the provisions defined in clause 4 of + IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order + of the pairs in the list is not significant. In JSON, a + set of key- value pairs is represented as an object. It + shall comply with the provisions defined in clause 4 of + IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + If present, this attribute signals modifications of + certain entries in the "vimConnectionInfo" attribute array + in "VnfInstance". + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure + is used to convey VIM-related parameters over the + Or-Vnfm interface. Additional parameters for a VIM may + be configured into the VNFM by means outside the scope + of the present document, and bound to the identifier of + that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines + the structure of the "interfaceInfo" and + "accessInfo" attributes, based on the type of the + VIM. The set of permitted values is expected to + change over time as new types or versions of VIMs + become available. The ETSI NFV registry of + VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + If present, this attribute signals modifications of the + "vnfProvider" attribute in "VnfInstance". If present, this + attribute (which depends on the value of the "vnfPkgId" + attribute) was modified implicitly following a request to + modify the "vnfPkgId" attribute, by copying the value of + this attribute from the VNFD in the VNF Package identified + by the "vnfPkgId†attribute. + type: string + vnfProductName: + description: > + If present, this attribute signals modifications of the + "vnfProductName" attribute in "VnfInstance". If present, + this attribute (which depends on the value of the + "vnfPkgId" attribute) was modified implicitly following a + request to modify the "vnfPkgId" attribute, by copying the + value of this attribute from the VNFD in the VNF Package + identified by the "vnfPkgId†attribute. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + changedExtConnectivity: + description: > + Information about changed external connectivity, if + applicable. This allows the NFVO to obtain the information + contained in the latest "result" notification if it has not + received it due to an error or a wrongly configured + subscription filter. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. Information about the resource is available + from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or the + resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port of + an external VL, i.e. a port providing connectivity for + the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by + a VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM + or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + - vnfInstance + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + vnfInstance: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + grant: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + cancel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + retry: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + rollback: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + fail: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + Another request is in progress that prohibits the fulfilment of the + current request, or the current resource state is inconsistent with + the request. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_lcm_op_occs/{vnfLcmOpOccId}': + 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 + get: + description: > + Get Operation Status + + + 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. + 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 + responses: + '200': + description: > + OK + + Information about an individual VNF instance was queried + successfully. The response body shall contain status information + about a VNF lifecycle management operation occurrence. + 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: + description: > + This type represents a VNF lifecycle management operation + occurrence. + type: object + required: + - id + - operationState + - stateEnteredTime + - startTime + - vnfInstanceId + - operation + - isAutomaticInvocation + - operationParams + - isCancelPending + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + operationState: + description: > + Value | Description ------|------------ STARTING | The LCM + operation is starting. PROCESSING | The LCM operation is + currently in execution. COMPLETED | he LCM operation has been + completed successfully. FAILED_TEMP | The LCM operation has + failed and execution has stopped, but the execution of the + operation is not considered to be closed. FAILED | The LCM + operation has failed and it cannot be retried or rolled back, + as it is determined that such action won't succeed. + ROLLING_BACK | The LCM operation is currently being rolled + back. ROLLED_BACK | The LCM operation has been successfully + rolled back, i.e. The state of the VNF prior to the original + operation invocation has been restored as closely as possible. + type: string + enum: + - STARTING + - PROCESSING + - COMPLETED + - FAILED_TEMP + - FAILED + - ROLLING_BACK + - ROLLED_BACK + stateEnteredTime: + description: | + Date-time when the current state was entered. + type: string + format: date-time + startTime: + description: | + Date-time of the start of the operation. + type: string + format: date-time + vnfInstanceId: + description: | + An identifier with the intention of being globally unique. + type: string + grantId: + description: | + An identifier with the intention of being globally unique. + type: string + operation: + description: > + Value | Description ------|------------ INSTANTIATE | + Represents the "Instantiate VNF" LCM operation. SCALE | + Represents the "Scale VNF" LCM operation. SCALE_TO_LEVEL | + Represents the "Scale VNF to Level" LCM operation. + CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM + operation. TERMINATE | Represents the "Terminate VNF" LCM + operation. HEAL | Represents the "Heal VNF" LCM operation. + OPERATE | Represents the "Operate VNF" LCM operation. + CHANGE_EXT_CONN | Represents the "Change external VNF + connectivity" LCM operation. MODIFY_INFO | Represents the + "Modify VNF Information" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - MODIFY_INFO + isAutomaticInvocation: + description: > + Set to true if this VNF LCM operation occurrence has been + triggered by an automated procedure inside the VNFM (i.e. + ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf + triggered by auto-heal). Set to false otherwise. + type: boolean + operationParams: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + isCancelPending: + description: > + If the VNF LCM operation occurrence is in "STARTING", + "PROCESSING" or "ROLLING_BACK" state and the operation is + being cancelled, this attribute shall be set to true. + Otherwise, it shall be set to false. + type: boolean + cancelMode: + description: > + Cancellation mode. GRACEFUL: If the VNF LCM operation + occurrence is in "PROCESSING" or "ROLLING_BACK" state, the + VNFM shall not start any new resource management operation and + shall wait for the ongoing resource management operations in + the underlying system, typically the VIM, to finish execution + or to time out. After that, the VNFM shall put the operation + occurrence into the FAILED_TEMP state. If the VNF LCM + operation occurrence is in "STARTING" state, the VNFM shall + not start any resource management operation and shall wait for + the granting request to finish execution or time out. After + that, the VNFM shall put the operation occurrence into the + ROLLED_BACK state. FORCEFUL: If the VNF LCM operation + occurrence is in "PROCESSING" or "ROLLING_BACK" state, the + VNFM shall not start any new resource management operation, + shall cancel the ongoing resource management operations in the + underlying system, typically the VIM, and shall wait for the + cancellation to finish or to time out. After that, the VNFM + shall put the operation occurrence into the FAILED_TEMP + state. If the VNF LCM operation occurrence is in "STARTING" + state, the VNFM shall not start any resource management + operation and put the operation occurrence into the + ROLLED_BACK state. + type: string + enum: + - GRACEFUL + - FORCEFUL + error: + description: > + The definition of the general "ProblemDetails" data structure + from IETF RFC 7807 [19] is reproduced inthis structure. + Compared to the general framework defined in IETF RFC 7807 + [19], the "status" and "detail" attributes are mandated to be + included by the present document, to ensure that the response + contains additional textual information about an error. IETF + RFC 7807 [19] foresees extensibility of the "ProblemDetails" + type. It is possible that particular APIs in the present + document, or particular implementations, define extensions to + define additional attributes that provide more information + about the error. The description column only provides some + explanation of the meaning to Facilitate understanding of the + design. For a full description, see IETF RFC 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that + identifies the problem type. It is encouraged that the URI + provides human-readable documentation for the problem + (e.g. using HTML) when dereferenced. When this member is + not present, its value is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It + should not change from occurrence to occurrence of the + problem, except for purposes of localization. If type is + given and other than "about:blank", this attribute shall + also be provided. A short, human-readable summary of the + problem type. It SHOULD NOT change from occurrence to + occurrence of the problem, except for purposes of + localization (e.g., using proactive content negotiation; + see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. + The HTTP status code ([RFC7231], Section 6) generated by + the origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence + of the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of + the problem. It may yield further information if + dereferenced. + type: string + format: URI + resourceChanges: + description: > + This attribute contains information about the cumulative + changes to virtualised resources that were performed so far by + the LCM operation since its start, if applicable. + type: object + properties: + affectedVnfcs: + description: > + Information about VNFC instances that were affected during + the lifecycle operation. This allows the NFVO to obtain + the information contained in the latest "result" + notification if it has not received it due to an error or + a wrongly configured subscription filter. + type: array + items: + description: > + This type provides information about added, deleted, + modified and temporary VNFCs. + type: object + required: + - id + - vduId + - changeType + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + changeType: + description: > + Signals the type of change. Permitted values: * + ADDED * REMOVED * MODIFIED * TEMPORARY For a + temporary resource, an AffectedVnfc structure exists + as long as the temporary resource exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + affectedVnfcCpIds: + description: > + Identifiers of CP(s) of the VNFC instance that were + affected by the change. Shall be present for those + affected CPs of the VNFC instance that are + associated to an external CP of the VNF instance. + May be present for further affected CPs of the VNFC + instance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + addedStorageResourceIds: + description: > + References to VirtualStorage resources that have + been added. Each value refers to a + VirtualStorageResourceInfo item in the VnfInstance + that was added to the VNFC. It shall be provided if + at least one storage resource was added to the VNFC. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + removedStorageResourceIds: + description: > + References to VirtualStorage resources that have + been removed. The value contains the identifier of a + VirtualStorageResourceInfo item that has been + removed from the VNFC, and might no longer exist in + the VnfInstance. It shall be provided if at least + one storage resource was removed from the VNFC. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + affectedVirtualLinks: + description: > + Information about VL instances that were affected during + the lifecycle operation. This allows the NFVO to obtain + the information contained in the latest "result" + notification if it has not received it due to an error or + a wrongly configured subscription filter. + type: array + items: + description: > + This type provides information about added, deleted, + modified and temporary VLs. + type: object + required: + - id + - virtualLinkDescId + - changeType + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + changeType: + description: > + Signals the type of change. Permitted values: * + ADDED * REMOVED * MODIFIED * TEMPORARY * + LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary + resource, an AffectedVirtualLink structure exists as + long as the temporary resource exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + - LINK_PORT_ADDED + - LINK_PORT_REMOVED + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + affectedVirtualStorages: + description: > + Information about virtualised storage instances that were + affected during the lifecycle operation. This allows the + NFVO to obtain the information contained in the latest + "result" notification if it has not received it due to an + error or a wrongly configured subscription filter. + type: array + items: + description: > + This type provides information about added, deleted, + modified and temporary virtual storage resources. + type: object + required: + - id + - virtualStorageDescId + - changeType + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + changeType: + description: > + Signals the type of change. Permitted values: * + ADDED * REMOVED * MODIFIED * TEMPORARY For a + temporary resource, an AffectedVirtualStorage + structure exists as long as the temporary resource + exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + changedInfo: + description: > + This type represents attribute modifications that were + performed on an "Individual VNF instance" resource. The + attributes that can be included consist of those requested to + be modified explicitly in the "VnfInfoModificationRequest" + data structure, and additional attributes of the "VnfInstance" + data structure that were modified implicitly e.g. when + modifying the referenced VNF package. + type: object + properties: + vnfInstanceName: + description: > + If present, this attribute signals modifications of the + "vnfInstanceName" attribute in "VnfInstance". + type: string + vnfInstanceDescription: + description: > + If present, this attribute signals modifications of the + "vnfInstanceDescription" attribute in "VnfInstance". + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order + of the pairs in the list is not significant. In JSON, a + set of key- value pairs is represented as an object. It + shall comply with the provisions defined in clause 4 of + IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order + of the pairs in the list is not significant. In JSON, a + set of key- value pairs is represented as an object. It + shall comply with the provisions defined in clause 4 of + IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order + of the pairs in the list is not significant. In JSON, a + set of key- value pairs is represented as an object. It + shall comply with the provisions defined in clause 4 of + IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + If present, this attribute signals modifications of + certain entries in the "vimConnectionInfo" attribute array + in "VnfInstance". + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure + is used to convey VIM-related parameters over the + Or-Vnfm interface. Additional parameters for a VIM may + be configured into the VNFM by means outside the scope + of the present document, and bound to the identifier of + that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines + the structure of the "interfaceInfo" and + "accessInfo" attributes, based on the type of the + VIM. The set of permitted values is expected to + change over time as new types or versions of VIMs + become available. The ETSI NFV registry of + VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + If present, this attribute signals modifications of the + "vnfProvider" attribute in "VnfInstance". If present, this + attribute (which depends on the value of the "vnfPkgId" + attribute) was modified implicitly following a request to + modify the "vnfPkgId" attribute, by copying the value of + this attribute from the VNFD in the VNF Package identified + by the "vnfPkgId†attribute. + type: string + vnfProductName: + description: > + If present, this attribute signals modifications of the + "vnfProductName" attribute in "VnfInstance". If present, + this attribute (which depends on the value of the + "vnfPkgId" attribute) was modified implicitly following a + request to modify the "vnfPkgId" attribute, by copying the + value of this attribute from the VNFD in the VNF Package + identified by the "vnfPkgId†attribute. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + changedExtConnectivity: + description: > + Information about changed external connectivity, if + applicable. This allows the NFVO to obtain the information + contained in the latest "result" notification if it has not + received it due to an error or a wrongly configured + subscription filter. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. Information about the resource is available + from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or the + resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port of + an external VL, i.e. a port providing connectivity for + the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by + a VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM + or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + - vnfInstance + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + vnfInstance: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + grant: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + cancel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + retry: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + rollback: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + fail: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + Another request is in progress that prohibits the fulfilment of the + current request, or the current resource state is inconsistent with + the request. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_lcm_op_occs/{vnfLcmOpOccId}/retry': + 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 + 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. + parameters: + - name: Authorization + description: | + The authorization token for the request. Reference: IETF RFC 7235 + in: header + required: false + type: string + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but processing has not been + completed. The response shall have an empty payload body. + headers: + 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 + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + Error: The API producer did not find a current representation for + the target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 + shall also be returned if the task is not supported for the VNF LCM + operation occurrence represented by the parent resource, which means + that the task resource consequently does not exist. In this case, + the response body shall be present, and 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that the VNF instance resource is not in FAILED_TEMP state, + or another error handling action is starting, such as rollback or + fail. 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_lcm_op_occs/{vnfLcmOpOccId}/rollback': + 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 + 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. + parameters: + - name: Authorization + description: | + The authorization token for the request. Reference: IETF RFC 7235 + in: header + required: false + type: string + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but processing has not been + completed. The response shall have an empty payload body. + headers: + 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 + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + Error: The API producer did not find a current representation for + the target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 + shall also be returned if the task is not supported for the VNF LCM + operation occurrence represented by the parent resource, which means + that the task resource consequently does not exist. In this case, + the response body shall be present, and 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that the VNF instance resource is not in FAILED_TEMP state, + or another error handling action is starting, such as rollback or + fail. 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_lcm_op_occs/{vnfLcmOpOccId}/fail': + 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 + post: + description: > + The POST method marks a VNF 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 + responses: + '200': + description: > + OK + + 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 + schema: + description: > + This type represents a VNF lifecycle management operation + occurrence. + type: object + required: + - id + - operationState + - stateEnteredTime + - startTime + - vnfInstanceId + - operation + - isAutomaticInvocation + - operationParams + - isCancelPending + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + operationState: + description: > + Value | Description ------|------------ STARTING | The LCM + operation is starting. PROCESSING | The LCM operation is + currently in execution. COMPLETED | he LCM operation has been + completed successfully. FAILED_TEMP | The LCM operation has + failed and execution has stopped, but the execution of the + operation is not considered to be closed. FAILED | The LCM + operation has failed and it cannot be retried or rolled back, + as it is determined that such action won't succeed. + ROLLING_BACK | The LCM operation is currently being rolled + back. ROLLED_BACK | The LCM operation has been successfully + rolled back, i.e. The state of the VNF prior to the original + operation invocation has been restored as closely as possible. + type: string + enum: + - STARTING + - PROCESSING + - COMPLETED + - FAILED_TEMP + - FAILED + - ROLLING_BACK + - ROLLED_BACK + stateEnteredTime: + description: | + Date-time when the current state was entered. + type: string + format: date-time + startTime: + description: | + Date-time of the start of the operation. + type: string + format: date-time + vnfInstanceId: + description: | + An identifier with the intention of being globally unique. + type: string + grantId: + description: | + An identifier with the intention of being globally unique. + type: string + operation: + description: > + Value | Description ------|------------ INSTANTIATE | + Represents the "Instantiate VNF" LCM operation. SCALE | + Represents the "Scale VNF" LCM operation. SCALE_TO_LEVEL | + Represents the "Scale VNF to Level" LCM operation. + CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM + operation. TERMINATE | Represents the "Terminate VNF" LCM + operation. HEAL | Represents the "Heal VNF" LCM operation. + OPERATE | Represents the "Operate VNF" LCM operation. + CHANGE_EXT_CONN | Represents the "Change external VNF + connectivity" LCM operation. MODIFY_INFO | Represents the + "Modify VNF Information" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - MODIFY_INFO + isAutomaticInvocation: + description: > + Set to true if this VNF LCM operation occurrence has been + triggered by an automated procedure inside the VNFM (i.e. + ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf + triggered by auto-heal). Set to false otherwise. + type: boolean + operationParams: + description: > + This type represents a list of key-value pairs. The order of + the pairs in the list is not significant. In JSON, a set of + key- value pairs is represented as an object. It shall comply + with the provisions defined in clause 4 of IETF RFC 7159. + type: object + isCancelPending: + description: > + If the VNF LCM operation occurrence is in "STARTING", + "PROCESSING" or "ROLLING_BACK" state and the operation is + being cancelled, this attribute shall be set to true. + Otherwise, it shall be set to false. + type: boolean + cancelMode: + description: > + Cancellation mode. GRACEFUL: If the VNF LCM operation + occurrence is in "PROCESSING" or "ROLLING_BACK" state, the + VNFM shall not start any new resource management operation and + shall wait for the ongoing resource management operations in + the underlying system, typically the VIM, to finish execution + or to time out. After that, the VNFM shall put the operation + occurrence into the FAILED_TEMP state. If the VNF LCM + operation occurrence is in "STARTING" state, the VNFM shall + not start any resource management operation and shall wait for + the granting request to finish execution or time out. After + that, the VNFM shall put the operation occurrence into the + ROLLED_BACK state. FORCEFUL: If the VNF LCM operation + occurrence is in "PROCESSING" or "ROLLING_BACK" state, the + VNFM shall not start any new resource management operation, + shall cancel the ongoing resource management operations in the + underlying system, typically the VIM, and shall wait for the + cancellation to finish or to time out. After that, the VNFM + shall put the operation occurrence into the FAILED_TEMP + state. If the VNF LCM operation occurrence is in "STARTING" + state, the VNFM shall not start any resource management + operation and put the operation occurrence into the + ROLLED_BACK state. + type: string + enum: + - GRACEFUL + - FORCEFUL + error: + description: > + The definition of the general "ProblemDetails" data structure + from IETF RFC 7807 [19] is reproduced inthis structure. + Compared to the general framework defined in IETF RFC 7807 + [19], the "status" and "detail" attributes are mandated to be + included by the present document, to ensure that the response + contains additional textual information about an error. IETF + RFC 7807 [19] foresees extensibility of the "ProblemDetails" + type. It is possible that particular APIs in the present + document, or particular implementations, define extensions to + define additional attributes that provide more information + about the error. The description column only provides some + explanation of the meaning to Facilitate understanding of the + design. For a full description, see IETF RFC 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that + identifies the problem type. It is encouraged that the URI + provides human-readable documentation for the problem + (e.g. using HTML) when dereferenced. When this member is + not present, its value is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It + should not change from occurrence to occurrence of the + problem, except for purposes of localization. If type is + given and other than "about:blank", this attribute shall + also be provided. A short, human-readable summary of the + problem type. It SHOULD NOT change from occurrence to + occurrence of the problem, except for purposes of + localization (e.g., using proactive content negotiation; + see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. + The HTTP status code ([RFC7231], Section 6) generated by + the origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence + of the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of + the problem. It may yield further information if + dereferenced. + type: string + format: URI + resourceChanges: + description: > + This attribute contains information about the cumulative + changes to virtualised resources that were performed so far by + the LCM operation since its start, if applicable. + type: object + properties: + affectedVnfcs: + description: > + Information about VNFC instances that were affected during + the lifecycle operation. This allows the NFVO to obtain + the information contained in the latest "result" + notification if it has not received it due to an error or + a wrongly configured subscription filter. + type: array + items: + description: > + This type provides information about added, deleted, + modified and temporary VNFCs. + type: object + required: + - id + - vduId + - changeType + - computeResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + vduId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + changeType: + description: > + Signals the type of change. Permitted values: * + ADDED * REMOVED * MODIFIED * TEMPORARY For a + temporary resource, an AffectedVnfc structure exists + as long as the temporary resource exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + computeResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + affectedVnfcCpIds: + description: > + Identifiers of CP(s) of the VNFC instance that were + affected by the change. Shall be present for those + affected CPs of the VNFC instance that are + associated to an external CP of the VNF instance. + May be present for further affected CPs of the VNFC + instance. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + addedStorageResourceIds: + description: > + References to VirtualStorage resources that have + been added. Each value refers to a + VirtualStorageResourceInfo item in the VnfInstance + that was added to the VNFC. It shall be provided if + at least one storage resource was added to the VNFC. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + removedStorageResourceIds: + description: > + References to VirtualStorage resources that have + been removed. The value contains the identifier of a + VirtualStorageResourceInfo item that has been + removed from the VNFC, and might no longer exist in + the VnfInstance. It shall be provided if at least + one storage resource was removed from the VNFC. + type: array + items: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + affectedVirtualLinks: + description: > + Information about VL instances that were affected during + the lifecycle operation. This allows the NFVO to obtain + the information contained in the latest "result" + notification if it has not received it due to an error or + a wrongly configured subscription filter. + type: array + items: + description: > + This type provides information about added, deleted, + modified and temporary VLs. + type: object + required: + - id + - virtualLinkDescId + - changeType + - networkResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualLinkDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + changeType: + description: > + Signals the type of change. Permitted values: * + ADDED * REMOVED * MODIFIED * TEMPORARY * + LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary + resource, an AffectedVirtualLink structure exists as + long as the temporary resource exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + - LINK_PORT_ADDED + - LINK_PORT_REMOVED + networkResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + affectedVirtualStorages: + description: > + Information about virtualised storage instances that were + affected during the lifecycle operation. This allows the + NFVO to obtain the information contained in the latest + "result" notification if it has not received it due to an + error or a wrongly configured subscription filter. + type: array + items: + description: > + This type provides information about added, deleted, + modified and temporary virtual storage resources. + type: object + required: + - id + - virtualStorageDescId + - changeType + - storageResource + properties: + id: + description: > + An identifier that is unique for the respective type + within a VNF instance, but may not be globally + unique. + type: string + virtualStorageDescId: + description: > + An identifier that is unique within a VNF + descriptor. + type: string + changeType: + description: > + Signals the type of change. Permitted values: * + ADDED * REMOVED * MODIFIED * TEMPORARY For a + temporary resource, an AffectedVirtualStorage + structure exists as long as the temporary resource + exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + storageResource: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a + VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or + the resource provider. + type: string + metadata: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + changedInfo: + description: > + This type represents attribute modifications that were + performed on an "Individual VNF instance" resource. The + attributes that can be included consist of those requested to + be modified explicitly in the "VnfInfoModificationRequest" + data structure, and additional attributes of the "VnfInstance" + data structure that were modified implicitly e.g. when + modifying the referenced VNF package. + type: object + properties: + vnfInstanceName: + description: > + If present, this attribute signals modifications of the + "vnfInstanceName" attribute in "VnfInstance". + type: string + vnfInstanceDescription: + description: > + If present, this attribute signals modifications of the + "vnfInstanceDescription" attribute in "VnfInstance". + type: string + vnfConfigurableProperties: + description: > + This type represents a list of key-value pairs. The order + of the pairs in the list is not significant. In JSON, a + set of key- value pairs is represented as an object. It + shall comply with the provisions defined in clause 4 of + IETF RFC 7159. + type: object + metadata: + description: > + This type represents a list of key-value pairs. The order + of the pairs in the list is not significant. In JSON, a + set of key- value pairs is represented as an object. It + shall comply with the provisions defined in clause 4 of + IETF RFC 7159. + type: object + extensions: + description: > + This type represents a list of key-value pairs. The order + of the pairs in the list is not significant. In JSON, a + set of key- value pairs is represented as an object. It + shall comply with the provisions defined in clause 4 of + IETF RFC 7159. + type: object + vimConnectionInfo: + description: > + If present, this attribute signals modifications of + certain entries in the "vimConnectionInfo" attribute array + in "VnfInstance". + type: array + items: + description: > + This type represents parameters to connect to a VIM for + managing the resources of a VNF instance. This structure + is used to convey VIM-related parameters over the + Or-Vnfm interface. Additional parameters for a VIM may + be configured into the VNFM by means outside the scope + of the present document, and bound to the identifier of + that VIM. + type: object + required: + - id + - vimType + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + vimId: + description: > + An identifier with the intention of being globally + unique. + type: string + vimType: + description: > + Discriminator for the different types of the VIM + information. The value of this attribute determines + the structure of the "interfaceInfo" and + "accessInfo" attributes, based on the type of the + VIM. The set of permitted values is expected to + change over time as new types or versions of VIMs + become available. The ETSI NFV registry of + VIM-related information provides access to + information about VimConnectionInfo definitions for + various VIM types. The structure of the registry is + defined in Annex C of SOL003. + type: string + interfaceInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + accessInfo: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + extra: + description: > + This type represents a list of key-value pairs. The + order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as + an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + vnfPkgId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfdId: + description: | + An identifier with the intention of being globally unique. + type: string + vnfProvider: + description: > + If present, this attribute signals modifications of the + "vnfProvider" attribute in "VnfInstance". If present, this + attribute (which depends on the value of the "vnfPkgId" + attribute) was modified implicitly following a request to + modify the "vnfPkgId" attribute, by copying the value of + this attribute from the VNFD in the VNF Package identified + by the "vnfPkgId†attribute. + type: string + vnfProductName: + description: > + If present, this attribute signals modifications of the + "vnfProductName" attribute in "VnfInstance". If present, + this attribute (which depends on the value of the + "vnfPkgId" attribute) was modified implicitly following a + request to modify the "vnfPkgId" attribute, by copying the + value of this attribute from the VNFD in the VNF Package + identified by the "vnfPkgId†attribute. + type: string + vnfSoftwareVersion: + description: | + A Version. + type: string + vnfdVersion: + description: | + A Version. + type: string + changedExtConnectivity: + description: > + Information about changed external connectivity, if + applicable. This allows the NFVO to obtain the information + contained in the latest "result" notification if it has not + received it due to an error or a wrongly configured + subscription filter. + type: array + items: + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by a VNF + instance. Information about the resource is available + from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or the + resource provider. + type: string + extLinkPorts: + description: | + Link ports of this VL. + type: array + items: + description: > + This type represents information about a link port of + an external VL, i.e. a port providing connectivity for + the VNF to an NS VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + An identifier with the intention of being globally + unique. + type: string + resourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows + addressing a virtualised resource that is used by + a VNF instance. Information about the resource is + available from the VIM. + properties: + vimConnectionId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceProviderId: + description: > + An identifier with the intention of being + globally unique. + type: string + resourceId: + description: > + An identifier maintained by the VIM or other + resource provider. It is expected to be unique + within the VIM instance. + type: string + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM + or the resource provider. + type: string + cpInstanceId: + description: > + An identifier that is unique for the respective + type within a VNF instance, but may not be + globally unique. + type: string + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + - vnfInstance + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + vnfInstance: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + grant: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + cancel: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + retry: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + rollback: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + fail: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + Error: The API producer did not find a current representation for + the target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 + shall also be returned if the task is not supported for the VNF LCM + operation occurrence represented by the parent resource, which means + that the task resource consequently does not exist. In this case, + the response body shall be present, and 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + The operation cannot be executed currently, due to a conflict with + the state of the VNF instance resource. Typically, this is due to + the fact that the VNF instance resource is not in FAILED_TEMP state, + or another error handling action is starting, such as rollback or + fail. 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/vnf_lcm_op_occs/{vnfLcmOpOccId}/cancel': + 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 + 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. + parameters: + - name: Authorization + description: | + The authorization token for the request. Reference: IETF RFC 7235 + in: header + required: false + type: string + responses: + '202': + description: > + Accepted + + The request was accepted for processing, but processing has not been + completed. The response shall have an empty payload body. + headers: + 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 + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + Error: The API producer did not find a current representation for + the target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 + shall also be returned if the task is not supported for the VNF LCM + operation occurrence represented by the parent resource, which means + that the task resource consequently does not exist. In this case, + the response body shall be present, and 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '409': + description: > + Conflict + + 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 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + /subscriptions: + post: + description: > + Subscribe + + + The POST method creates a new subscription. 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 NFVO, and might make sense only in very rare use cases. + Consequently, the VNFM 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: + - name: LccnSubscriptionRequest + description: | + Details of the subscription to be created. + in: body + required: true + schema: + description: > + This type represents a subscription request related to + notifications about VNF lifecycle changes. + type: object + required: + - callbackUri + properties: + filter: + description: > + This type represents a subscription filter related to + notifications about VNF lifecycle changes. At a particular + nesting level in the filter structure, the following applies: + All attributes shall match in order for the filter to match + (logical "and" between different filter attributes). If an + attribute is an array, the attribute shall match if at least + one of the values in the array matches (logical "or" between + the values of one filter attribute). + type: object + properties: + vnfInstanceSubscriptionFilter: + description: > + This type represents subscription filter criteria to match + VNF instances. + type: object + properties: + vnfdIds: + description: > + If present, match VNF instances that were created + based on a VNFD identified by one of the vnfdId values + listed in this attribute. The attributes "vnfdIds" and + "vnfProductsFromProviders" are alternatives to + reference to VNF instances that are based on certain + VNFDs in a filter. They should not be used both in the + same filter instance, but one alternative should be + chosen. + type: array + items: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfProductsFromProviders: + description: > + If present, match VNF instances that belong to VNF + products from certain providers. The attributes + "vnfdIds" and "vnfProductsFromProviders" are + alternatives to reference to VNF instances that are + based on certain VNFDs in a filter. They should not be + used both in the same filter instance, but one + alternative should be chosen. + type: array + items: + type: object + required: + - vnfProvider + properties: + vnfProvider: + description: | + Name of the VNF provider to match. + type: string + vnfProducts: + description: > + If present, match VNF instances that belong to + VNF products with certain product names, from + one particular provider. + type: array + items: + type: object + required: + - vnfProductName + properties: + vnfProductName: + description: | + Name of the VNF product to match. + type: string + versions: + description: > + If present, match VNF instances that + belong to VNF products with certain + versions and a certain product name, from + one particular provider. + type: array + items: + type: object + required: + - vnfSoftwareVersion + properties: + vnfSoftwareVersion: + description: | + A version. + type: string + vnfdVersions: + description: > + If present, match VNF instances that + belong to VNF products with certain VNFD + versions, a certain software version and + a certain product name, from one + particular provider. + type: array + items: + description: | + A version. + type: string + vnfInstanceIds: + description: > + If present, match VNF instances with an instance + identifier listed in this attribute. The attributes + "vnfInstanceIds" and "vnfInstanceNames" are + alternatives to reference to particular VNF Instances + in a filter. They should not be used both in the same + filter instance, but one alternative should be chosen. + type: array + items: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfInstanceNames: + description: > + If present, match VNF instances with a VNF Instance + Name listed in this attribute. The attributes + "vnfInstanceIds" and "vnfInstanceNames" are + alternatives to reference to particular VNF Instances + in a filter. They should not be used both in the same + filter instance, but one alternative should be chosen. + type: array + items: + type: string + notificationTypes: + description: > + Match particular notification types. Permitted values: * + VnfLcmOperationOccurrenceNotification * + VnfIdentifierCreationNotification * + VnfIdentifierDeletionNotification The permitted values of + the "notificationTypes" attribute are spelled exactly as + the names of the notification types to facilitate + automated code generation systems. + type: array + items: + type: string + enum: + - VnfLcmOperationOccurrenceNotification + - VnfIdentifierCreationNotification + - VnfIdentifierDeletionNotification + operationTypes: + description: > + Match particular VNF lifecycle operation types for the + notification of type + VnfLcmOperationOccurrenceNotification. May be present if + the "notificationTypes" attribute contains the value + "VnfLcmOperationOccurrenceNotification", and shall be + absent otherwise. + type: array + items: + description: > + Value | Description ------|------------ INSTANTIATE | + Represents the "Instantiate VNF" LCM operation. SCALE + | Represents the "Scale VNF" LCM operation. + SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM + operation. CHANGE_FLAVOUR | Represents the "Change VNF + Flavour" LCM operation. TERMINATE | Represents the + "Terminate VNF" LCM operation. HEAL | Represents the + "Heal VNF" LCM operation. OPERATE | Represents the + "Operate VNF" LCM operation. CHANGE_EXT_CONN | + Represents the "Change external VNF connectivity" LCM + operation. MODIFY_INFO | Represents the "Modify VNF + Information" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - MODIFY_INFO + operationStates: + description: > + Match particular LCM operation state values as reported in + notifications of type + VnfLcmOperationOccurrenceNotification. May be present if + the "notificationTypes" attribute contains the value + "VnfLcmOperationOccurrenceNotification", and shall be + absent otherwise. + type: array + items: + description: > + Value | Description ------|------------ STARTING | The + LCM operation is starting. PROCESSING | The LCM + operation is currently in execution. COMPLETED | he LCM + operation has been completed successfully. FAILED_TEMP | + The LCM operation has failed and execution has stopped, + but the execution of the operation is not considered to + be closed. FAILED | The LCM operation has failed and it + cannot be retried or rolled back, as it is determined + that such action won't succeed. ROLLING_BACK | The LCM + operation is currently being rolled back. ROLLED_BACK | + The LCM operation has been successfully rolled back, + i.e. The state of the VNF prior to the original + operation invocation has been restored as closely as + possible. + type: string + enum: + - STARTING + - PROCESSING + - COMPLETED + - FAILED_TEMP + - FAILED + - ROLLING_BACK + - ROLLED_BACK + callbackUri: + description: | + String formatted according to IETF RFC 3986. + type: string + authentication: + type: object + required: + - authType + properties: + authType: + description: > + Defines the types of Authentication / Authorization which + the API consumer is willing to accept when receiving a + notification. Permitted values: * BASIC: In every HTTP + request to the notification endpoint, use + HTTP Basic authentication with the client credentials. + * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the + notification endpoint, use an OAuth 2.0 Bearer token, obtained + using the client credentials grant type. + * TLS_CERT: Every HTTP request to the notification + endpoint is sent + over a mutually authenticated TLS session, i.e. not only the + server is authenticated, but also the client is authenticated + during the TLS tunnel setup. + type: array + items: + type: string + enum: + - BASIC + - OAUTH2_CLIENT_CREDENTIALS + - TLS_CERT + paramsBasic: + description: > + Parameters for authentication/authorization using BASIC. + Shall be present if authType is "BASIC" and the contained + information has not been provisioned out of band. Shall be + absent otherwise. + type: object + properties: + userName: + description: > + Username to be used in HTTP Basic authentication. + Shall be present if it has not been provisioned out of + band. + type: string + password: + description: > + Password to be used in HTTP Basic authentication. + Shall be present if it has not been provisioned out of + band. + type: string + paramsOauth2ClientCredentials: + description: > + Parameters for authentication/authorization using + OAUTH2_CLIENT_CREDENTIALS. Shall be present if authType is + "OAUTH2_CLIENT_CREDENTIALS" and the contained information + has not been provisioned out of band. Shall be absent + otherwise. + type: object + properties: + clientId: + description: > + Client identifier to be used in the access token + request of the OAuth 2.0 client credentials grant + type. Shall be present if it has not been provisioned + out of band. The clientId and clientPassword passed in + a subscription shall not be the same as the clientId + and clientPassword that are used to obtain + authorization for API requests. Client credentials may + differ between subscriptions. The value of + clientPassword should be generated by a random + process. + type: string + clientPassword: + description: > + Client password to be used in the access token request + of the OAuth 2.0 client credentials grant type. Shall + be present if it has not been provisioned out of band. + The clientId and clientPassword passed in a + subscription shall not be the same as the clientId and + clientPassword that are used to obtain authorization + for API requests. Client credentials may differ + between subscriptions. The value of clientPassword + should be generated by a random process. + type: string + tokenEndpoint: + description: | + String formatted according to IETF RFC 3986. + 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 + - name: Content-Type + description: | + The MIME type of the body of the request. Reference: IETF RFC 7231 + in: header + required: true + type: string + responses: + '201': + description: > + Created + + 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 + schema: + description: > + This type represents a subscription related to notifications about + VNF lifecycle changes. + type: object + required: + - id + - callbackUri + - _links + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + filter: + description: > + This type represents a subscription filter related to + notifications about VNF lifecycle changes. At a particular + nesting level in the filter structure, the following applies: + All attributes shall match in order for the filter to match + (logical "and" between different filter attributes). If an + attribute is an array, the attribute shall match if at least + one of the values in the array matches (logical "or" between + the values of one filter attribute). + type: object + properties: + vnfInstanceSubscriptionFilter: + description: > + This type represents subscription filter criteria to match + VNF instances. + type: object + properties: + vnfdIds: + description: > + If present, match VNF instances that were created + based on a VNFD identified by one of the vnfdId values + listed in this attribute. The attributes "vnfdIds" and + "vnfProductsFromProviders" are alternatives to + reference to VNF instances that are based on certain + VNFDs in a filter. They should not be used both in the + same filter instance, but one alternative should be + chosen. + type: array + items: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfProductsFromProviders: + description: > + If present, match VNF instances that belong to VNF + products from certain providers. The attributes + "vnfdIds" and "vnfProductsFromProviders" are + alternatives to reference to VNF instances that are + based on certain VNFDs in a filter. They should not be + used both in the same filter instance, but one + alternative should be chosen. + type: array + items: + type: object + required: + - vnfProvider + properties: + vnfProvider: + description: | + Name of the VNF provider to match. + type: string + vnfProducts: + description: > + If present, match VNF instances that belong to + VNF products with certain product names, from + one particular provider. + type: array + items: + type: object + required: + - vnfProductName + properties: + vnfProductName: + description: | + Name of the VNF product to match. + type: string + versions: + description: > + If present, match VNF instances that + belong to VNF products with certain + versions and a certain product name, from + one particular provider. + type: array + items: + type: object + required: + - vnfSoftwareVersion + properties: + vnfSoftwareVersion: + description: | + A version. + type: string + vnfdVersions: + description: > + If present, match VNF instances that + belong to VNF products with certain VNFD + versions, a certain software version and + a certain product name, from one + particular provider. + type: array + items: + description: | + A version. + type: string + vnfInstanceIds: + description: > + If present, match VNF instances with an instance + identifier listed in this attribute. The attributes + "vnfInstanceIds" and "vnfInstanceNames" are + alternatives to reference to particular VNF Instances + in a filter. They should not be used both in the same + filter instance, but one alternative should be chosen. + type: array + items: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfInstanceNames: + description: > + If present, match VNF instances with a VNF Instance + Name listed in this attribute. The attributes + "vnfInstanceIds" and "vnfInstanceNames" are + alternatives to reference to particular VNF Instances + in a filter. They should not be used both in the same + filter instance, but one alternative should be chosen. + type: array + items: + type: string + notificationTypes: + description: > + Match particular notification types. Permitted values: * + VnfLcmOperationOccurrenceNotification * + VnfIdentifierCreationNotification * + VnfIdentifierDeletionNotification The permitted values of + the "notificationTypes" attribute are spelled exactly as + the names of the notification types to facilitate + automated code generation systems. + type: array + items: + type: string + enum: + - VnfLcmOperationOccurrenceNotification + - VnfIdentifierCreationNotification + - VnfIdentifierDeletionNotification + operationTypes: + description: > + Match particular VNF lifecycle operation types for the + notification of type + VnfLcmOperationOccurrenceNotification. May be present if + the "notificationTypes" attribute contains the value + "VnfLcmOperationOccurrenceNotification", and shall be + absent otherwise. + type: array + items: + description: > + Value | Description ------|------------ INSTANTIATE | + Represents the "Instantiate VNF" LCM operation. SCALE + | Represents the "Scale VNF" LCM operation. + SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM + operation. CHANGE_FLAVOUR | Represents the "Change VNF + Flavour" LCM operation. TERMINATE | Represents the + "Terminate VNF" LCM operation. HEAL | Represents the + "Heal VNF" LCM operation. OPERATE | Represents the + "Operate VNF" LCM operation. CHANGE_EXT_CONN | + Represents the "Change external VNF connectivity" LCM + operation. MODIFY_INFO | Represents the "Modify VNF + Information" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - MODIFY_INFO + operationStates: + description: > + Match particular LCM operation state values as reported in + notifications of type + VnfLcmOperationOccurrenceNotification. May be present if + the "notificationTypes" attribute contains the value + "VnfLcmOperationOccurrenceNotification", and shall be + absent otherwise. + type: array + items: + description: > + Value | Description ------|------------ STARTING | The + LCM operation is starting. PROCESSING | The LCM + operation is currently in execution. COMPLETED | he LCM + operation has been completed successfully. FAILED_TEMP | + The LCM operation has failed and execution has stopped, + but the execution of the operation is not considered to + be closed. FAILED | The LCM operation has failed and it + cannot be retried or rolled back, as it is determined + that such action won't succeed. ROLLING_BACK | The LCM + operation is currently being rolled back. ROLLED_BACK | + The LCM operation has been successfully rolled back, + i.e. The state of the VNF prior to the original + operation invocation has been restored as closely as + possible. + type: string + enum: + - STARTING + - PROCESSING + - COMPLETED + - FAILED_TEMP + - FAILED + - ROLLING_BACK + - ROLLED_BACK + callbackUri: + description: | + String formatted according to IETF RFC 3986. + type: string + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '303': + description: > + See Other + + A subscription with the same callbackURI and the same filter already + exists and the policy of the VNFM 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: + 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 + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. Specifically in case of this task resource, the + reason can also be that the task is not supported for the VNF LCM + operation occurrence represented by the parent resource, and that + the task resource consequently does not exist. The "ProblemDetails" + structure may be provided, including in the "detail" attribute + information about the sourceof the problem, e.g. a wrong resource + URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + get: + description: > + 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: + - 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 + responses: + '200': + description: > + OK + + The list of subscriptions was queried successfully. The response + body shall contain the representations of all active subscriptions + of the functional block that invokes the method. + 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: + description: > + This type represents a subscription related to notifications about + VNF lifecycle changes. + type: object + required: + - id + - callbackUri + - _links + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + filter: + description: > + This type represents a subscription filter related to + notifications about VNF lifecycle changes. At a particular + nesting level in the filter structure, the following applies: + All attributes shall match in order for the filter to match + (logical "and" between different filter attributes). If an + attribute is an array, the attribute shall match if at least + one of the values in the array matches (logical "or" between + the values of one filter attribute). + type: object + properties: + vnfInstanceSubscriptionFilter: + description: > + This type represents subscription filter criteria to match + VNF instances. + type: object + properties: + vnfdIds: + description: > + If present, match VNF instances that were created + based on a VNFD identified by one of the vnfdId values + listed in this attribute. The attributes "vnfdIds" and + "vnfProductsFromProviders" are alternatives to + reference to VNF instances that are based on certain + VNFDs in a filter. They should not be used both in the + same filter instance, but one alternative should be + chosen. + type: array + items: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfProductsFromProviders: + description: > + If present, match VNF instances that belong to VNF + products from certain providers. The attributes + "vnfdIds" and "vnfProductsFromProviders" are + alternatives to reference to VNF instances that are + based on certain VNFDs in a filter. They should not be + used both in the same filter instance, but one + alternative should be chosen. + type: array + items: + type: object + required: + - vnfProvider + properties: + vnfProvider: + description: | + Name of the VNF provider to match. + type: string + vnfProducts: + description: > + If present, match VNF instances that belong to + VNF products with certain product names, from + one particular provider. + type: array + items: + type: object + required: + - vnfProductName + properties: + vnfProductName: + description: | + Name of the VNF product to match. + type: string + versions: + description: > + If present, match VNF instances that + belong to VNF products with certain + versions and a certain product name, from + one particular provider. + type: array + items: + type: object + required: + - vnfSoftwareVersion + properties: + vnfSoftwareVersion: + description: | + A version. + type: string + vnfdVersions: + description: > + If present, match VNF instances that + belong to VNF products with certain VNFD + versions, a certain software version and + a certain product name, from one + particular provider. + type: array + items: + description: | + A version. + type: string + vnfInstanceIds: + description: > + If present, match VNF instances with an instance + identifier listed in this attribute. The attributes + "vnfInstanceIds" and "vnfInstanceNames" are + alternatives to reference to particular VNF Instances + in a filter. They should not be used both in the same + filter instance, but one alternative should be chosen. + type: array + items: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfInstanceNames: + description: > + If present, match VNF instances with a VNF Instance + Name listed in this attribute. The attributes + "vnfInstanceIds" and "vnfInstanceNames" are + alternatives to reference to particular VNF Instances + in a filter. They should not be used both in the same + filter instance, but one alternative should be chosen. + type: array + items: + type: string + notificationTypes: + description: > + Match particular notification types. Permitted values: * + VnfLcmOperationOccurrenceNotification * + VnfIdentifierCreationNotification * + VnfIdentifierDeletionNotification The permitted values of + the "notificationTypes" attribute are spelled exactly as + the names of the notification types to facilitate + automated code generation systems. + type: array + items: + type: string + enum: + - VnfLcmOperationOccurrenceNotification + - VnfIdentifierCreationNotification + - VnfIdentifierDeletionNotification + operationTypes: + description: > + Match particular VNF lifecycle operation types for the + notification of type + VnfLcmOperationOccurrenceNotification. May be present if + the "notificationTypes" attribute contains the value + "VnfLcmOperationOccurrenceNotification", and shall be + absent otherwise. + type: array + items: + description: > + Value | Description ------|------------ INSTANTIATE | + Represents the "Instantiate VNF" LCM operation. SCALE + | Represents the "Scale VNF" LCM operation. + SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM + operation. CHANGE_FLAVOUR | Represents the "Change VNF + Flavour" LCM operation. TERMINATE | Represents the + "Terminate VNF" LCM operation. HEAL | Represents the + "Heal VNF" LCM operation. OPERATE | Represents the + "Operate VNF" LCM operation. CHANGE_EXT_CONN | + Represents the "Change external VNF connectivity" LCM + operation. MODIFY_INFO | Represents the "Modify VNF + Information" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - MODIFY_INFO + operationStates: + description: > + Match particular LCM operation state values as reported in + notifications of type + VnfLcmOperationOccurrenceNotification. May be present if + the "notificationTypes" attribute contains the value + "VnfLcmOperationOccurrenceNotification", and shall be + absent otherwise. + type: array + items: + description: > + Value | Description ------|------------ STARTING | The + LCM operation is starting. PROCESSING | The LCM + operation is currently in execution. COMPLETED | he LCM + operation has been completed successfully. FAILED_TEMP | + The LCM operation has failed and execution has stopped, + but the execution of the operation is not considered to + be closed. FAILED | The LCM operation has failed and it + cannot be retried or rolled back, as it is determined + that such action won't succeed. ROLLING_BACK | The LCM + operation is currently being rolled back. ROLLED_BACK | + The LCM operation has been successfully rolled back, + i.e. The state of the VNF prior to the original + operation invocation has been restored as closely as + possible. + type: string + enum: + - STARTING + - PROCESSING + - COMPLETED + - FAILED_TEMP + - FAILED + - ROLLING_BACK + - ROLLED_BACK + callbackUri: + description: | + String formatted according to IETF RFC 3986. + type: string + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. Specifically in case of this task resource, the + reason can also be that the task is not supported for the VNF LCM + operation occurrence represented by the parent resource, and that + the task resource consequently does not exist. The "ProblemDetails" + structure may be provided, including in the "detail" attribute + information about the sourceof the problem, e.g. a wrong resource + URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '/subscriptions/{subscriptionId}': + parameters: + - name: subscriptionId + description: > + 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 + get: + description: > + Query Subscription Information + + + The GET method retrieves information about a subscription by reading an + individual subscription 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 + responses: + '200': + description: > + OK + + 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 + schema: + description: > + This type represents a subscription related to notifications about + VNF lifecycle changes. + type: object + required: + - id + - callbackUri + - _links + properties: + id: + description: | + An identifier with the intention of being globally unique. + type: string + filter: + description: > + This type represents a subscription filter related to + notifications about VNF lifecycle changes. At a particular + nesting level in the filter structure, the following applies: + All attributes shall match in order for the filter to match + (logical "and" between different filter attributes). If an + attribute is an array, the attribute shall match if at least + one of the values in the array matches (logical "or" between + the values of one filter attribute). + type: object + properties: + vnfInstanceSubscriptionFilter: + description: > + This type represents subscription filter criteria to match + VNF instances. + type: object + properties: + vnfdIds: + description: > + If present, match VNF instances that were created + based on a VNFD identified by one of the vnfdId values + listed in this attribute. The attributes "vnfdIds" and + "vnfProductsFromProviders" are alternatives to + reference to VNF instances that are based on certain + VNFDs in a filter. They should not be used both in the + same filter instance, but one alternative should be + chosen. + type: array + items: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfProductsFromProviders: + description: > + If present, match VNF instances that belong to VNF + products from certain providers. The attributes + "vnfdIds" and "vnfProductsFromProviders" are + alternatives to reference to VNF instances that are + based on certain VNFDs in a filter. They should not be + used both in the same filter instance, but one + alternative should be chosen. + type: array + items: + type: object + required: + - vnfProvider + properties: + vnfProvider: + description: | + Name of the VNF provider to match. + type: string + vnfProducts: + description: > + If present, match VNF instances that belong to + VNF products with certain product names, from + one particular provider. + type: array + items: + type: object + required: + - vnfProductName + properties: + vnfProductName: + description: | + Name of the VNF product to match. + type: string + versions: + description: > + If present, match VNF instances that + belong to VNF products with certain + versions and a certain product name, from + one particular provider. + type: array + items: + type: object + required: + - vnfSoftwareVersion + properties: + vnfSoftwareVersion: + description: | + A version. + type: string + vnfdVersions: + description: > + If present, match VNF instances that + belong to VNF products with certain VNFD + versions, a certain software version and + a certain product name, from one + particular provider. + type: array + items: + description: | + A version. + type: string + vnfInstanceIds: + description: > + If present, match VNF instances with an instance + identifier listed in this attribute. The attributes + "vnfInstanceIds" and "vnfInstanceNames" are + alternatives to reference to particular VNF Instances + in a filter. They should not be used both in the same + filter instance, but one alternative should be chosen. + type: array + items: + description: > + An identifier with the intention of being globally + unique. + type: string + vnfInstanceNames: + description: > + If present, match VNF instances with a VNF Instance + Name listed in this attribute. The attributes + "vnfInstanceIds" and "vnfInstanceNames" are + alternatives to reference to particular VNF Instances + in a filter. They should not be used both in the same + filter instance, but one alternative should be chosen. + type: array + items: + type: string + notificationTypes: + description: > + Match particular notification types. Permitted values: * + VnfLcmOperationOccurrenceNotification * + VnfIdentifierCreationNotification * + VnfIdentifierDeletionNotification The permitted values of + the "notificationTypes" attribute are spelled exactly as + the names of the notification types to facilitate + automated code generation systems. + type: array + items: + type: string + enum: + - VnfLcmOperationOccurrenceNotification + - VnfIdentifierCreationNotification + - VnfIdentifierDeletionNotification + operationTypes: + description: > + Match particular VNF lifecycle operation types for the + notification of type + VnfLcmOperationOccurrenceNotification. May be present if + the "notificationTypes" attribute contains the value + "VnfLcmOperationOccurrenceNotification", and shall be + absent otherwise. + type: array + items: + description: > + Value | Description ------|------------ INSTANTIATE | + Represents the "Instantiate VNF" LCM operation. SCALE + | Represents the "Scale VNF" LCM operation. + SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM + operation. CHANGE_FLAVOUR | Represents the "Change VNF + Flavour" LCM operation. TERMINATE | Represents the + "Terminate VNF" LCM operation. HEAL | Represents the + "Heal VNF" LCM operation. OPERATE | Represents the + "Operate VNF" LCM operation. CHANGE_EXT_CONN | + Represents the "Change external VNF connectivity" LCM + operation. MODIFY_INFO | Represents the "Modify VNF + Information" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - MODIFY_INFO + operationStates: + description: > + Match particular LCM operation state values as reported in + notifications of type + VnfLcmOperationOccurrenceNotification. May be present if + the "notificationTypes" attribute contains the value + "VnfLcmOperationOccurrenceNotification", and shall be + absent otherwise. + type: array + items: + description: > + Value | Description ------|------------ STARTING | The + LCM operation is starting. PROCESSING | The LCM + operation is currently in execution. COMPLETED | he LCM + operation has been completed successfully. FAILED_TEMP | + The LCM operation has failed and execution has stopped, + but the execution of the operation is not considered to + be closed. FAILED | The LCM operation has failed and it + cannot be retried or rolled back, as it is determined + that such action won't succeed. ROLLING_BACK | The LCM + operation is currently being rolled back. ROLLED_BACK | + The LCM operation has been successfully rolled back, + i.e. The state of the VNF prior to the original + operation invocation has been restored as closely as + possible. + type: string + enum: + - STARTING + - PROCESSING + - COMPLETED + - FAILED_TEMP + - FAILED + - ROLLING_BACK + - ROLLED_BACK + callbackUri: + description: | + String formatted according to IETF RFC 3986. + type: string + _links: + description: | + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: | + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: | + URI of the referenced resource. + type: string + format: url + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. Specifically in case of this task resource, the + reason can also be that the task is not supported for the VNF LCM + operation occurrence represented by the parent resource, and that + the task resource consequently does not exist. The "ProblemDetails" + structure may be provided, including in the "detail" attribute + information about the sourceof the problem, e.g. a wrong resource + URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + delete: + description: | + Terminate Subscription + + The DELETE method terminates an individual subscription. + parameters: + - name: Authorization + description: | + The authorization token for the request. Reference: IETF RFC 7235 + in: header + required: false + type: string + responses: + '204': + description: > + No Content + + 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 + '400': + description: > + Bad Request + + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, and + should include in the "detail" attribute more information about the + source of the problem. If the request contains a malformed access + token, the API producer should respond with this response. The + details of the error shall be returned in the WWW-Authenticate HTTP + header, as defined in IETF RFC 6750 and IETF RFC 7235. The + ProblemDetails structure may be provided. If there is an application + error related to the client's input that cannot be easily mapped to + any other HTTP response code ("catch all error"), the API producer + shall respond with this response code.The "ProblemDetails" structure + shall be provided, and shall include in the "detail" attribute more + information about the source of the problem. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '401': + description: > + Unauthorized + + If the request contains no access token even though one is required, + or if the request contains an authorization token that is invalid + (e.g. expired or revoked), the API producer should respond with this + response. The details of the error shall be returned in the + WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF + RFC 7235. The ProblemDetails structure may be provided. + 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: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '403': + description: > + Forbidden + + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. It + should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '404': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. Specifically in case of this task resource, the + reason can also be that the task is not supported for the VNF LCM + operation occurrence represented by the parent resource, and that + the task resource consequently does not exist. The "ProblemDetails" + structure may be provided, including in the "detail" attribute + information about the sourceof the problem, e.g. a wrong resource + URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '405': + description: > + Not Found + + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source of + the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '406': + description: > + Not Acceptable + + If the "Accept" HTTP header does not contain at least one name of a + content type that is acceptable to the API producer, the API + producer shall respond with this response code. The "ProblemDetails" + structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '500': + description: > + Internal Server Error + + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code ("catch + all error"), the API producer shall respond withthis response code. + The "ProblemDetails" structure shall be provided, and shall include + in the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + '503': + description: > + Service Unavailable + + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the "Retry-After" HTTP header and for the alternative to + refuse the connection. The "ProblemDetails" structure may be + omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present + document, to ensure that the response contains additional textual + information about an error. IETF RFC 7807 [19] foresees + extensibility of the "ProblemDetails" type. It is possible that + particular APIs in the present document, or particular + implementations, define extensions to define additional attributes + that provide more information about the error. The description + column only provides some explanation of the meaning to Facilitate + understanding of the design. For a full description, see IETF RFC + 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies + the problem type. It is encouraged that the URI provides + human-readable documentation for the problem (e.g. using HTML) + when dereferenced. When this member is not present, its value + is assumed to be "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should + not change from occurrence to occurrence of the problem, + except for purposes of localization. If type is given and + other than "about:blank", this attribute shall also be + provided. A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of + the problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. The + HTTP status code ([RFC7231], Section 6) generated by the + origin server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of + the problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + diff --git a/SOL003/VNFLifecycleManagement-API_egm/SOL003-VNFLifecycleManagement.robot b/SOL003/VNFLifecycleManagement-API_egm/SOL003-VNFLifecycleManagement.robot new file mode 100644 index 0000000000000000000000000000000000000000..45bd4481f93235d9542cbdc304ec733dbcc156db --- /dev/null +++ b/SOL003/VNFLifecycleManagement-API_egm/SOL003-VNFLifecycleManagement.robot @@ -0,0 +1,33 @@ +*** Settings *** +Suite setup Expect spec SOL003-VNFLifecycleManagement-API.yaml +Resource ../variables.txt +Library REST http://${VNFM_HOST}:${VNFM_PORT} + +*** Test cases *** + +Create a new vnfInstance + Log Create VNF instance by POST to /vnflcm/v1/vnf_instances + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "application/json"} + Post /vnflcm/v1/vnf_instances {"vnfdId": "12345","vnfInstanceName": "Test-VnfInstance", "vnfInstanceDescription": "bla"} + Log Validate Status code + Integer response status 200 + + +Get information about multiple VNF instances + [Tags] get + + Log Query VNF The GET method queries information about multiple VNF instances. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "application/json"} + Set Headers {"Authorization": "${AUTHORIZATION_TOKEN}"} + Log Execute Query and validate against online spec + Get /vnflcm/v1/vnf_instances + Log Validate Status code + Integer response status 200 + + Log Execute Query and validate against online spec + GET ${apiRoot}/vnflcm/v1/vnf_instances?fields=wrong_field + Log Validate Status code + Integer response status 400 +