openapi: 3.0.2
info:
  title: SOL003 - VNF Lifecycle Management interface
  description: |
    SOL003 - VNF Lifecycle Management interface

    IMPORTANT: Please note that this file might be not aligned to the current
    version of the ETSI Group Specification it refers to. In case of
    discrepancies the published ETSI Group Specification takes precedence.

    Please report bugs to https://forge.etsi.org/rep/nfv/SOL002-SOL003/issues
  contact:
    name: NFV-SOL WG
  license:
    name: ETSI Forge copyright notice
    url: 'https://forge.etsi.org/etsi-forge-copyright-notice.txt'
  version: '2.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1'
externalDocs:
  description: ETSI GS NFV-SOL 003 V3.3.1
  url: >-
    https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.03.01_60/gs_NFV-SOL003v030301p.pdf
servers:
  - url: 'http://127.0.0.1/vnflcm/v1'
  - url: 'https://127.0.0.1/vnflcm/v1'
paths:
  /api_versions:
    parameters:
      - name: Version
        description: |
          Version of the API requested to use when responding to this request.
        in: header
        required: true
        schema:
          type: string
    get:
      summary: Retrieve API version information
      description: >
        The GET method reads API version information. This method shall follow
        the provisions specified in table 4.6.3.3.3.2-1 for request and response
        data structures, and response codes. URI query parameters are not
        supported.
      responses:
        '200':
          description: >
            200 OK

            API version information was read successfully. The response body
            shall contain 4.4 API version information, as defined in clause
            4.4.1.13.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            Version:
              description: The used API version.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              schema:
                description: |
                  This type represents API version information.
                type: object
                required:
                  - uriPrefix
                  - apiVersions
                properties:
                  uriPrefix:
                    description: >
                      Specifies the URI prefix for the API, in the following
                      form {apiRoot}/{apiName}/{apiMajorVersion}/.
                    type: string
                  apiVersions:
                    description: >
                      Version(s) supported for the API signaled by the uriPrefix
                      attribute.
                    type: array
                    items:
                      type: object
                      required:
                        - version
                      properties:
                        version:
                          description: >
                            Identifies a supported version. The value of the
                            version attribute shall be a version identifier as
                            specified in clause 9.1 (SOL013).
                          type: string
                        isDeprecated:
                          description: >
                            If such information is available, this attribute
                            indicates whether use of the version signaled by the
                            version attribute is deprecated (true) or not
                            (false).

                            A deprecated version is still supported by the API
                            producer but is recommended not to be used any
                            longer. When a version is no longer supported, it
                            does not appear in the response body.
                          type: boolean
                        retirementDate:
                          description: >
                            Date-time stamp. Representation: String formatted
                            according to IETF RFC 3339.
                          type: string
                          format: date-time
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '413':
          description: >
            413 PAYLOAD TOO LARGE

            If the payload body of a request is larger than the amount of data
            the API producer is willing or able to process, it shall respond
            with this response code, following the provisions in IETF RFC 7231
            for the use of the "Retry-After" HTTP header and for closing the
            connection. The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '414':
          description: >
            414 URI TOO LONG

            If the request URI of a request is longer than the API producer is
            willing or able to process, it shall respond with this response
            code. This condition can e.g. be caused by passing long queries in
            the request URI of a GET request. The "ProblemDetails" structure may
            be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            416 Range Not Satisfiable
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            422 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.

            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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '429':
          description: >
            429 TOO MANY REQUESTS

            If the API consumer has sent too many requests in a defined period
            of time and the API producer is able to detect that condition ("rate
            limiting"), the API producer shall respond with this response code,
            following the provisions in IETF RFC 6585 [17] for the use of the
            "Retry-After" HTTP header. The "ProblemDetails" structure shall be
            provided and shall include in the "detail" attribute more
            information about the source of the problem.

            The period of time and allowed number of requests are configured
            within the API producer by means outside the scope of the present
            document.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
    parameters:
      - name: Accept
        description: >
          Content-Types that are acceptable for the response. Reference: IETF
          RFC 7231.
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        description: |
          The authorization token for the request. Reference: IETF RFC 7235.
        in: header
        required: false
        schema:
          type: string
      - name: Version
        description: |
          Version of the API requested to use when responding to this request.
        in: header
        required: true
        schema:
          type: string
    post:
      description: >
        The POST method creates a new VNF instance resource based on a VNF
        package that is onboarded and in

        "ENABLED" state.

        This method shall follow the provisions specified in the tables
        5.4.2.3.1-1 and 5.4.2.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        As the result of successfully executing this method, a new "Individual
        VNF instance"

        resource as defined in clause 5.4.3 shall have been created, and the
        value of the

        "instantiationState" attribute in the representation of that resource
        shall be "NOT_INSTANTIATED".

        A notification of type VnfIdentifierCreationNotification shall be
        triggered as part of successfully

        executing this method as defined in clause 5.5.2.18.

        When initiating the creation of a VNF instance resource, the passed
        metadata values can differ from 

        the default values for metadata, if any, declared in the VNFD.

        The VNFM shall apply the "metadata" attributes in the "CreateVnfRequest"
        data structure in the payload 

        body to the "metadata" attribute in the "VnfInstance" data structure on
        top of the default values that 

        were obtained from the VNFD according to the rules of JSON Merge Patch
        (see IETF RFC 7396). 

        For all metadata keys defined in the VNFD, the VNFM shall ensure that
        the content of the resulting 

        "metadata" attributes is valid against the data type definitions in the
        VNFD. The absence of a metadata 

        item that is marked "required" in the VNFD shall not be treated as an
        error. In case a "metadata" child 

        attribute is not defined in the VNFD, the VNFM shall consider it valid
        in case it is a valid JSON structure. 

        In case of an error, the operation shall be rejected with a "422
        Unprocessable Entity" error.
      requestBody:
        $ref: '#/components/requestBodies/CreateVnfRequest'
      responses:
        '201':
          $ref: '#/components/responses/VNFInstances.Post.201'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            422 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.

            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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: filter
          description: >
            Attribute-based filtering expression according to clause 5.2 of ETSI
            GS NFV-SOL 013. The NFV-MANO functional entity shall support
            receiving this parameter as part of the URI query string. The API
            consumer may supply this parameter. All attribute names that appear
            in the FmSubscription and in data types referenced from it shall be
            supported by the NFV-MANO functional entity in the filter
            expression.
          in: query
          required: false
          schema:
            type: string
        - name: all_fields
          description: >
            Include all complex attributes in the response. See clause 5.3 of
            ETSI GS NFV-SOL 013. The NFV-MANO functional entity shall support
            this parameter.
          in: query
          required: false
          schema:
            type: string
        - name: fields
          description: >
            Complex attributes to be included into the response. See clause 5.3
            of ETSI GS NFV-SOL 013 for details. The NFV-MANO functional entity
            should support this parameter.
          in: query
          required: false
          schema:
            type: string
        - name: exclude_fields
          description: >
            Complex attributes to be excluded from the response. See clause 5.3
            of ETSI GS NFV-SOL 013 for details. The NFV-MANO functional entity
            should support this parameter.
          in: query
          required: false
          schema:
            type: string
        - name: exclude_default
          in: query
          description: >-
            Indicates to exclude the following complex attributes from the
            response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. The
            NFV-MANO functional entity shall support this parameter.
          required: false
          schema:
            type: string
        - name: nextpage_opaque_marker
          description: >
            Marker to obtain the next page of a paged response. Shall be
            supported by the NFV-MANO functional entity if the entity supports
            alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS
            NFV-SOL 013 for this resource.
          in: query
          required: false
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/VNFInstances.Get.200'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            416 Range Not Satisfiable
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfInstanceId'
      - name: Authorization
        description: |
          The authorization token for the request. Reference: IETF RFC 7235.
        in: header
        required: false
        schema:
          type: string
      - name: Version
        description: |
          Version of the API requested to use when responding to this request.
        in: header
        required: true
        schema:
          type: string
    get:
      description: >
        Query VNF.


        The GET method retrieves information about a VNF instance by reading an
        "Individual VNF instance" resource.

        This method shall follow the provisions specified in the tables
        5.4.3.3.2-1 and 5.4.3.3.2-2

        for URI query parameters, request and response data structures, and
        response codes.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/IndividualVnfInstance.Get.200'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            416 Range Not Satisfiable
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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.

        This method shall follow the provisions specified in the tables
        5.4.3.3.4-1 and 5.4.3.3.4-2

        for URI query parameters, request and response data structures, and
        response codes.

        The steps and conditions that apply as the result of successfully
        executing this method are

        specified in clause 5.4.1.2.


        The VNFM shall apply the "metadata", "extensions" and
        "vnfConfigurableProperties" attributes in the 

        "VnfInfoModificationRequest" data structure in the payload body to the
        existing "extensions" and

        "vnfConfigurableProperties" attributes from the "VnfInstance" data
        structure according to the 

        rules of JSON Merge Patch (see IETF RFC 7396).

        The VNFM shall ensure that the content of the child attributes of the
        resulting "metadata", "extensions" 

        and "vnfConfigurableProperties" attributes is valid against the data
        types definitions of these child 

        attributes in the VNFD. 


        In case a "metadata" child attribute is not defined in the VNFD, the
        VNFM shall consider it valid in 

        case it is a valid JSON structure.


        NOTE: "Extensions" and "vnfConfigurableProperties" child attributes are
        always declared in the VNFD.


        If the VNF instance is in the "INSTANTIATED" state, the validation shall
        also include 

        ensuring the presence of all "extensions" and
        "vnfConfigurableProperties" child attributes that are 

        marked as "required" in the VNFD. 


        NOTE: This allows to build the set of "extensions" and
        "vnfConfigurableProperties" incrementally 

        prior VNF instantiation but ensures their completeness for an
        instantiated VNF instance.


        The absence of a metadata item that is marked "required" in the VNFD
        shall not be treated as an error.


        In case of an error during validation, the operation shall be
        automatically rolled back, and 

        appropriate error information shall be provided in the
        "VnfLcmOperationOccurrenceNotification" 

        message and the "VnfLcmOpOcc" data structure. 

        The processing of changes to the "metadata" / "extensions" /
        "vnfConfigurableProperties" attributes 

        shall be performed in the "PROCESSING" phase of the LCM operation. The
        change shall be atomic, i.e. the 

        result of intermediate stages shall not be visible in the API. In case
        of successful completion of the 

        processing and validation, the attributes shall be provided in the
        "VnfInstance" data structure and 

        the operation shall proceed towards successful completion.
      requestBody:
        $ref: '#/components/requestBodies/VnfInfoModificationRequest'
      responses:
        '202':
          $ref: '#/components/responses/IndividualVnfInstance.Patch.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            412 PRECONDITION FAILED

            Error: 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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.

        This method shall follow the provisions specified in the tables
        5.4.3.3.5-1 and 5.4.3.3.5-2

        for URI query parameters, request and response data structures, and
        response codes.

        As the result of successfully executing this method, the "Individual VNF
        instance" resource

        shall not exist any longer.

        A notification of type "VnfIdentifierDeletionNotification" shall be
        triggered as part of successfully

        executing this method as defined in clause 5.5.2.19.
      responses:
        '204':
          $ref: '#/components/responses/IndividualVnfInstance.Delete.204'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            412 PRECONDITION FAILED

            Error: 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfInstanceId'
    post:
      description: >
        Instantiate VNF.

        The POST method instantiates a VNF instance.

        This method shall follow the provisions specified in the tables
        5.4.4.3.1-1 and 5.4.4.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        The steps and conditions that apply as the result of successfully
        executing this method

        are specified in clause 5.4.1.2.

        In addition, once the VNFM has successfully completed the underlying VNF
        LCM operation occurrence,

        it shall set the "instantiationState" attribute to the value
        "INSTANTIATED" and the "vnfState"

        attribute to the value "STARTED" in the representation of the
        "Individual VNF instance" resource.


        When instantiating a VNF instance, the values of the extensions and/or
        VNF configurable properties 

        passed in the instantiation request can differ from the values in the
        "VnfInstance" data structure 

        that were initialized from default values, if any, declared in the
        VNFD. 

        The VNFM shall apply the "extensions" and "vnfConfigurableProperties"
        attributes in the 

        "InstantiateVnfRequest" data structure in the payload body to the
        existing "extensions" and 

        "vnfConfigurableProperties" attributes from the "VnfInstance" data
        structure according to the rules 

        of JSON Merge Patch (see IETF RFC 7396). The VNFM shall ensure that the
        content of the resulting 

        "extensions" and "vnfConfigurableProperties" attributes is valid against
        the VNFD (including the 

        presence of all child attributes that are marked as "required" in the
        VNFD). In case of an error 

        during validation, the operation shall be automatically rolled back, and
        appropriate error information 

        shall be provided in the "VnfLcmOperationOccurrenceNotification" message
        and the "VnfLcmOpOcc" 

        data structure. The processing of changes to the "extensions" /
        "vnfConfigurableProperties" attributes 

        shall be performed in the "STARTING" phase of the LCM operation. The
        change shall be atomic, i.e. 

        the result of intermediate stages shall not be visible in the API. In
        case of successful completion 

        of the processing and validation, the attributes shall be provided in
        the "VnfInstance" data structure 

        and the operation shall proceed to obtain the grant.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/InstantiateVnfRequest'
      responses:
        '202':
          $ref: '#/components/responses/InstantiateVnfInstance.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            416 Range Not Satisfiable
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfInstanceId'
    post:
      description: >
        Scale VNF.

        The POST method requests to scale a VNF instance resource incrementally.

        This method shall follow the provisions specified in the tables
        5.4.5.3.1-1 and 5.4.5.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        The steps and conditions that apply as the result of successfully
        executing this method are

        specified in clause 5.4.1.2.

        In addition, once the VNFM has successfully completed the underlying VNF
        LCM operation occurrence,

        it shall reflect the result of scaling the VNF instance by updating the
        "scaleStatus" attribute

        in the representation of the "Individual VNF instance" resource.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/ScaleVnfRequest'
      responses:
        '202':
          $ref: '#/components/responses/ScaleVnfInstance.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfInstanceId'
    post:
      description: >
        Scale VNF to Level.

        The POST method requests to scale a VNF instance resource to a target
        level.

        This method shall follow the provisions specified in the tables
        5.4.6.3.1-1 and 5.4.6.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        The steps and conditions that apply as the result of successfully
        executing this method are

        specified in clause 5.4.1.2.

        In addition, once the VNFM has successfully completed the underlying VNF
        LCM operation occurrence,

        it shall reflect the result of scaling the VNF instance by updating the
        "scaleStatus" attribute

        in the representation of the "Individual VNF instance" resource.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/ScaleVnfToLevelRequest'
      responses:
        '202':
          $ref: '#/components/responses/ScaleToLevelVnfInstance.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfInstanceId'
    post:
      description: >
        Change VNF Flavour.

        This method shall follow the provisions specified in the tables
        5.4.7.3.1-1 and 5.4.7.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        The steps and conditions that apply as the result of successfully
        executing this method

        are specified in clause 5.4.1.2.

        In addition, once the VNFM has successfully completed the underlying VNF
        LCM operation occurrence,

        it shall set the "flavourId" attribute in the representation of the
        "Individual VNF instance"

        resource to the value of the "newFlavourId" attribute passed in the
        "ChangeVnfFlavourRequest"

        data in the POST request.


        When initiating a change of the current VNF flavour, the values of the
        extensions and/or VNF 

        configurable properties, can differ between the new flavour and the old
        flavour of the VNF instance.

        The VNFM shall apply the "extensions" and "vnfConfigurableProperties"
        attributes in the 

        "ChangeVnfFlavourRequest" data structure in the payload body to the
        existing "extensions" and 

        "vnfConfigurableProperties" attributes from the "VnfInstance" data
        structure according to the rules 

        of JSON Merge Patch (see IETF RFC 7396). The VNFM shall ensure that the
        content of the resulting 

        "extensions" and "vnfConfigurableProperties" attributes is valid against
        the VNFD (which includes 

        ensuring the presence of all child attributes that are marked as
        "required" in the VNFD). In case

        of an error, the operation shall be automatically rolled back, and
        appropriate error information 

        shall be provided in the "VnfLcmOperationOccurrenceNotification" message
        and the "VnfLcmOpOcc" data 

        structure. The processing of changes to the "extensions" /
        "vnfConfigurableProperties" attributes 

        shall be performed in the "STARTING" phase of the LCM operation. The
        change shall be atomic, i.e. 

        the result of intermediate stages shall not be visible in the API. In
        case of successful completion 

        of the processing and validation, the attributes shall be provided in
        the "VnfInstance" data structure 

        and the operation shall proceed to obtain the grant.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/ChangeVnfFlavourRequest'
      responses:
        '202':
          $ref: '#/components/responses/ChangeFlavourVnfInstance.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfInstanceId'
    post:
      description: >
        Terminate VNF.

        The POST method triggers the VNFM to terminate a VNF instance and to
        request to the VIM

        the release of its used virtualised resources.

        This method shall follow the provisions specified in the tables
        5.4.8.3.1-1 and 5.4.8.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        The steps and conditions that apply as the result of successfully
        executing this method

        are specified in clause 5.4.1.2.

        In addition, once the VNFM has successfully completed the underlying VNF
        LCM operation occurrence,

        it shall set the "instantiationState" attribute in the representation of
        the "Individual VNF instance"

        resource to the value "NOT_INSTANTIATED".
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/TerminateVnfRequest'
      responses:
        '202':
          $ref: '#/components/responses/TerminateVnfInstance.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfInstanceId'
    post:
      description: >
        Heal VNF.

        The POST method requests to heal a VNF instance.

        This method shall follow the provisions specified in the tables
        5.4.9.3.1-1 and 5.4.9.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        The steps and conditions that apply as the result of successfully
        executing this method

        are specified in clause 5.4.1.2.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/HealVnfRequest'
      responses:
        '202':
          $ref: '#/components/responses/HealVnfInstance.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfInstanceId'
    post:
      description: >
        Operate VNF.

        The POST method changes the operational state of a VNF instance
        resource.

        This method shall follow the provisions specified in the tables
        5.4.10.3.1-1 and 5.4.10.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        The steps and conditions that apply as the result of successfully
        executing this method

        are specified in clause 5.4.1.2.

        In addition, once the VNFM has successfully completed the underlying VNF
        LCM operation occurrence,

        it shall set the "vnfState" attribute in the representation of the
        "Individual VNF instance" resource

        to the value of the "changeStateTo" attribute passed in the
        "OperateVnfRequest" data in the POST request.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/OperateVnfRequest'
      responses:
        '202':
          $ref: '#/components/responses/OperateVnfInstance.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfInstanceId'
    post:
      description: >
        Change External VNF Connectivity.

        The POST method changes the external connectivity of a VNF instance.

        This method shall follow the provisions specified in the tables
        5.4.11.3.1-1 and 5.4.11.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        The steps and conditions that apply as the result of successfully
        executing this method

        are specified in clause 5.4.1.2.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/ChangeExtVnfConnectivityRequest'
      responses:
        '202':
          $ref: '#/components/responses/ChangeExtConnVnfInstance.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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_vnfpkg':
    parameters:
      - $ref: '#/components/parameters/VnfInstanceId'
    post:
      description: >
        The POST method changes the current VNF package on which the VNF
        instance is based.

        This method shall follow the provisions specified in the tables
        5.4.11a.3.1-1 and 

        5.4.11a.3.1-2 for URI query parameters, request and response data
        structures, and 

        response codes.

        The steps and conditions that apply as the result of successfully
        executing this method 

        are specified in clause 5.4.1.2.

        During a change of the current VNF package, the allowed and required
        extensions and/or 

        VNF configurable properties and their data types, as well as the
        metadata data types, 

        can differ between the source and the destination VNFD.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/ChangeCurrentVnfPkgRequest'
      responses:
        '202':
          $ref: '#/components/responses/ChangeVnfpkgVnfInstance.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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 API consumer can use this method to query status information about
        multiple

        VNF lifecycle management operation occurrences.

        This method shall follow the provisions specified in the tables
        5.4.12.3.2-1 and 5.4.12.3.2-2

        for URI query parameters, request and response data structures, and
        response codes.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: filter
          description: >
            Attribute-based filtering expression according to clause 5.2 of ETSI
            GS NFV-SOL 013. The NFV-MANO functional entity shall support
            receiving this parameter as part of the URI query string. The API
            consumer may supply this parameter. All attribute names that appear
            in the FmSubscription and in data types referenced from it shall be
            supported by the NFV-MANO functional entity in the filter
            expression.
          in: query
          required: false
          schema:
            type: string
        - name: all_fields
          description: >
            Include all complex attributes in the response. See clause 5.3 of
            ETSI GS NFV-SOL 013. The NFV-MANO functional entity shall support
            this parameter.
          in: query
          required: false
          schema:
            type: string
        - name: fields
          description: >
            Complex attributes to be included into the response. See clause 5.3
            of ETSI GS NFV-SOL 013 for details. The NFV-MANO functional entity
            should support this parameter.
          in: query
          required: false
          schema:
            type: string
        - name: exclude_fields
          description: >
            Complex attributes to be excluded from the response. See clause 5.3
            of ETSI GS NFV-SOL 013 for details. The NFV-MANO functional entity
            should support this parameter.
          in: query
          required: false
          schema:
            type: string
        - name: exclude_default
          in: query
          description: >-
            Indicates to exclude the following complex attributes from the
            response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. The
            NFV-MANO functional entity shall support this parameter.
          required: false
          schema:
            type: string
        - name: nextpage_opaque_marker
          description: >
            Marker to obtain the next page of a paged response. Shall be
            supported by the NFV-MANO functional entity if the entity supports
            alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS
            NFV-SOL 013 for this resource.
          in: query
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/VnfLcmOpOccs.Get.200'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfLcmOpOccId'
    get:
      description: >
        Get Operation Status.

        The API consumer can use this method to retrieve status information
        about a VNF lifecycle

        management operation occurrence by reading an "Individual VNF LCM
        operation occurrence" resource.

        This method shall follow the provisions specified in the tables
        5.4.13.3.2-1 and 5.4.13.3.2-2

        for URI query parameters, request and response data structures, and
        response codes.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/IndividualVnfLcmOpOcc.Get.200'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfLcmOpOccId'
    post:
      description: >
        The POST method initiates retrying a VNF lifecycle operation if that
        operation

        has experienced a temporary failure, i.e. the related "Individual VNF
        LCM operation occurrence"

        resource is in "FAILED_TEMP" state.

        This method shall follow the provisions specified in the tables
        5.4.14.3.1-1 and 5.4.14.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        In case of success of processing the asynchronous request, the
        "operationState" attribute

        in the representation of the parent resource shall be changed to
        "PROCESSING" and the applicable

        "start" notification according to clause 5.6.2.2 shall be emitted to
        indicate that the underlying

        VNF LCM operation occurrence proceeds.
      parameters:
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      responses:
        '202':
          $ref: '#/components/responses/RetryVnfLcmOpOcc.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfLcmOpOccId'
    post:
      description: >
        The POST method initiates rolling back a VNF lifecycle operation if that
        operation

        has experienced a temporary failure, i.e. the related "Individual VNF
        LCM operation occurrence"

        resource is in "FAILED_TEMP" state.

        In case of rolling back an occurrence of the "InstantiateVnf" operation,
        the VNFM shall

        request to the VIM the release of the virtualised resources that were
        allocated for the related VNF instance.

        The "rollback" task shall be supported by the VNFM for any VNF LCM
        operation occurrence that represents an

        "InstantiateVnf" operation in FAILED_TEMP state.

        This method shall follow the provisions specified in the tables
        5.4.15.3.1-1 and 5.4.15.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        In case of success of processing the asynchronous request, the
        "operationState" attribute

        in the representation of the parent resource shall be changed to
        "ROLLING_BACK" and the applicable

        "start" notification according to clause 5.6.2.2 shall be emitted to
        indicate that rollback of the

        underlying VNF LCM operation occurrence is attempted.
      parameters:
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      responses:
        '202':
          $ref: '#/components/responses/RollbackVnfLcmOpOcc.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfLcmOpOccId'
    post:
      description: >
        The POST method marks a VNF lifecycle management operation occurrence as
        "finally failed"

        if that operation occurrence is in "FAILED_TEMP" state.

        This method shall follow the provisions specified in the tables
        5.4.16.3.1-1 and 5.4.16.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        In case of success, the "operationState" attribute in the representation
        of the parent resource

        shall be changed to "FAILED" and the applicable "result" notification
        according to clause 5.6.2.2

        shall be emitted to indicate that the execution of the underlying VNF
        LCM operation occurrence

        has finally and unrecoverably failed.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/FailVnfLcmOpOcc.Post.200'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/VnfLcmOpOccId'
    post:
      description: "The POST method initiates cancelling an ongoing VNF lifecycle operation while\nit is being executed or rolled back, i.e. the related \"Individual VNF LCM operation occurrence\"\nresource is either in \"STARTING\" or \"PROCESSING\" or \"ROLLING_BACK\" state.\nThis method shall follow the provisions specified in the tables 5.4.17.3.1-1 and 5.4.17.3.1-2\nfor URI query parameters, request and response data structures, and response codes.\nBefore returning the \"202 Accepted\" response, the VNFM shall update the \"isCancelPending\"\nand \"cancelMode\" attributes in the representation of the parent resource according to the\nprovisions in clause 5.5.2.13.\n\nIn case of success of processing the asynchronous request:\n1)\tIf the request has been processed in \"STARTING\" state, the \"operationState\" attribute\n    in the representation of the parent resource shall be changed to \"ROLLED_BACK\".\n2)\tIf the request has been processed in \"PROCESSING\" or \"ROLLING_BACK\" state,\n    the \"operationState\" attribute in the representation of the parent resource\n    shall be changed to \"FAILED_TEMP\".\n\nIn both cases, the VNFM shall update the \"isCancelPending\" and \"cancelMode\" attributes\nin the representation of the parent resource according to the provisions in clause 5.5.2.13\nto reflect the new status, and the applicable \"result\" notification according to clause 5.6.2.2\nshall be emitted to indicate that the execution of the underlying VNF LCM operation occurrence\nhas temporarily failed.\nDue to race conditions, the processing of the actual operation that is to be cancelled may eventually\nstill succeed, in which case the \"operationState\" attribute in the representation of the parent\nresource shall represent the result of that operation, rather than the result of the cancellation.\n"
      parameters:
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      responses:
        '202':
          $ref: '#/components/responses/CancelVnfLcmOpOcc.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
    parameters:
      - name: Accept
        description: >
          Content-Types that are acceptable for the response. Reference: IETF
          RFC 7231.
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        description: |
          The authorization token for the request. Reference: IETF RFC 7235.
        in: header
        required: false
        schema:
          type: string
      - name: Version
        description: |
          Version of the API requested to use when responding to this request.
        in: header
        required: true
        schema:
          type: string
    post:
      description: >
        Subscribe.

        The POST method creates a new subscription.

        This method shall follow the provisions specified in the tables
        5.4.18.3.1-1 and 5.4.18.3.1-2

        for URI query parameters, request and response data structures, and
        response codes.

        As the result of successfully executing this method, a new "Individual
        subscription"

        resource as defined in clause 5.4.3 shall have been created. This method
        shall not trigger any notification.

        Creation of two "Individual subscription" resources with the same
        callback URI 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

        an "Individual subscription" resource if another "Individual
        subscription" resource with the same

        filter and callback URI already exists (in which case it shall return
        the "201 Created" response code),

        or may decide to not create a duplicate "Individual subscription"
        resource (in which case it shall

        return a "303 See Other" response code referencing the existing
        "Individual subscription" resource

        with the same filter and callback URI).
      requestBody:
        $ref: '#/components/requestBodies/LccnSubscriptionRequest'
      responses:
        '201':
          $ref: '#/components/responses/Subscriptions.Post.201'
        '303':
          description: |
            303 See Other
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            422 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.

            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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: filter
          description: >
            Attribute-based filtering expression according to clause 5.2 of ETSI
            GS NFV-SOL 013. The NFV-MANO functional entity shall support
            receiving this parameter as part of the URI query string. The API
            consumer may supply this parameter. All attribute names that appear
            in the FmSubscription and in data types referenced from it shall be
            supported by the NFV-MANO functional entity in the filter
            expression.
          in: query
          required: false
          schema:
            type: string
        - name: nextpage_opaque_marker
          description: >
            Marker to obtain the next page of a paged response. Shall be
            supported by the NFV-MANO functional entity if the entity supports
            alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS
            NFV-SOL 013 for this resource.
          in: query
          required: false
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/Subscriptions.Get.200'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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:
      - $ref: '#/components/parameters/SubscriptionId'
      - name: Authorization
        description: |
          The authorization token for the request. Reference: IETF RFC 7235.
        in: header
        required: false
        schema:
          type: string
      - name: Version
        description: |
          Version of the API requested to use when responding to this request.
        in: header
        required: true
        schema:
          type: string
    get:
      description: >
        Query Subscription Information.

        The GET method retrieves information about a subscription by reading an
        "Individual subscription" resource.

        This method shall follow the provisions specified in the tables
        5.4.19.3.2-1 and 5.4.19.3.2-2

        for URI query parameters, request and response data structures, and
        response codes.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/IndividualSubscription.Get.200'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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.

        This method shall follow the provisions specified in the tables
        5.4.19.3.5-1 and 5.4.19.3.5-2

        for URI query parameters, request and response data structures, and
        response codes.

        As the result of successfully executing this method, the "Individual
        subscription" resource

        shall not exist any longer. This means that no notifications for that
        subscription shall be

        sent to the formerly-subscribed API consumer.

          NOTE: Due to race conditions, some notifications might still be received by the formerly-subscribed

        API consumer for a certain time period after the deletion.
      responses:
        '204':
          $ref: '#/components/responses/IndividualSubscription.Delete.204'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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}/create_snapshot':
    parameters:
      - $ref: '#/components/parameters/VnfInstanceId'
    post:
      description: >
        The POST method requests taking a snapshot a VNF instance and populating
        a 

        previously created VNF snapshot resource (refer to clause 5.4.23.3.1)
        with 

        the snapshot content.

        The steps and conditions that apply as the result of successfully
        executing 

        this method are specified in clause 5.4.1.2.

        In addition, once the VNFM has successfully completed the underlying VNF
        LCM 

        operation occurrence, it shall reflect the result of the VNF snapshot
        creation 

        by updating the corresponding "Individual VNF snapshot" resource
        indicated by 

        the "vnfSnapshotInfoId" attribute of the "CreateVnfSnapshotRequest" that
        is 

        included in the payload body of the request.

        This method shall follow the provisions specified in the tables
        5.4.21.3.1-1 

        and 5.4.21.3.1-2 for URI query parameters, request and response data
        structures, 

        and response codes.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/CreateVnfSnapshotRequest'
      responses:
        '202':
          $ref: '#/components/responses/CreateVnfSnapshotTask.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            422 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.

            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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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}/revert_to_snapshot':
    parameters:
      - $ref: '#/components/parameters/VnfInstanceId'
    post:
      description: >
        The POST method requests reverting a VNF instance to a VNF snapshot.

        This method shall follow the provisions specified in the tables
        5.4.22.3.1-1 

        and 5.4.22.3.1-2 for URI query parameters, request and response data
        structures, 

        and response codes.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235.
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/RevertToVnfSnapshotRequest'
      responses:
        '202':
          $ref: '#/components/responses/RevertToVnfSnapshotTask.Post.202'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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_snapshots:
    parameters:
      - name: Accept
        description: >
          Content-Types that are acceptable for the response. Reference: IETF
          RFC 7231.
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        description: |
          The authorization token for the request. Reference: IETF RFC 7235.
        in: header
        required: false
        schema:
          type: string
      - name: Version
        description: |
          Version of the API requested to use when responding to this request.
        in: header
        required: true
        schema:
          type: string
    post:
      description: >
        The POST method creates a new "Individual VNF snapshot" resource.


        As a result of successfully executing this method, a new "Individual VNF
        snapshot" 

        resource as defined in clause 5.4.24 shall have been created.


        The creation of an "Individual VNF snapshot" resource can be performed
        for two reasons:

        - To create an "Individual VNF snapshot" resources that can later be
        populated by a 

        new VNF snapshot taken from a VNF instance (refer to clause 5.4.21.3.1).

        - To create an "Individual VNF snapshot" resource that can be populated
        with information 

        gathered from a VNF snapshot package extraction. In this case, the API
        consumer indicates 

        the source of the VNF snapshot package in the payload body of the POST
        request to the 

        present resource.


        In the second case, for a successful execution of the operation, the
        values in the 

        "VnfSnapshotInfo" data structure representing the "Individual VNF
        snapshot" resource 

        shall be applied as follows:

        - If the request (refer to clause 5.5.2.20) includes the "vnfSnapshot"
        attribute, 

        the VNFM shall apply the "VnfSnapshotInfo" with such provided
        information.

        - If the request (refer to clause 5.5.2.20) does not include the
        "vnfSnapshot" 

        attribute, the VNFM shall first fetch the VNF snapshot record from the
        source VNF 

        snapshot package signalled by the "vnfSnapshotPkgId" attribute in the
        request and 

        then apply the "VnfSnapshotInfo" from the fetched VNF snapshot record.


        This method shall follow the provisions specified in the tables
        5.4.23.3.1-1 

        and 5.4.23.3.1-2 for URI query parameters, request and response data
        structures, 

        and response codes.
      requestBody:
        $ref: '#/components/requestBodies/CreateVnfSnapshotInfoRequest'
      responses:
        '201':
          $ref: '#/components/responses/VnfSnapshots.Post.201'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
        The GET method queries information about multiple VNF snapshots. This
        method shall follow the provisions specified in the tables 5.4.23.3.2-1 
        and 5.4.23.3.2-2 for URI query parameters, request and response data
        structures,  and response codes.
      parameters:
        - name: filter
          description: >
            Attribute-based filtering expression according to clause 5.2 of ETSI
            GS NFV-SOL 013. The NFV-MANO functional entity shall support
            receiving this parameter as part of the URI query string. The API
            consumer may supply this parameter. All attribute names that appear
            in the FmSubscription and in data types referenced from it shall be
            supported by the NFV-MANO functional entity in the filter
            expression.
          in: query
          required: false
          schema:
            type: string
        - name: all_fields
          description: >
            Include all complex attributes in the response. See clause 5.3 of
            ETSI GS NFV-SOL 013. The NFV-MANO functional entity shall support
            this parameter.
          in: query
          required: false
          schema:
            type: string
        - name: fields
          description: >
            Complex attributes to be included into the response. See clause 5.3
            of ETSI GS NFV-SOL 013 for details. The NFV-MANO functional entity
            should support this parameter.
          in: query
          required: false
          schema:
            type: string
        - name: exclude_fields
          description: >
            Complex attributes to be excluded from the response. See clause 5.3
            of ETSI GS NFV-SOL 013 for details. The NFV-MANO functional entity
            should support this parameter.
          in: query
          required: false
          schema:
            type: string
        - name: exclude_default
          in: query
          description: >-
            Indicates to exclude the following complex attributes from the
            response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. The
            NFV-MANO functional entity shall support this parameter.
          required: false
          schema:
            type: string
        - name: nextpage_opaque_marker
          description: >
            Marker to obtain the next page of a paged response. Shall be
            supported by the NFV-MANO functional entity if the entity supports
            alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS
            NFV-SOL 013 for this resource.
          in: query
          required: false
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/VnfSnapshots.Get.200'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            416 Range Not Satisfiable
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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_snapshots/{vnfSnapshotInfoId}':
    parameters:
      - $ref: '#/components/parameters/VnfSnapshotInfoId'
      - name: Authorization
        description: |
          The authorization token for the request. Reference: IETF RFC 7235.
        in: header
        required: false
        schema:
          type: string
      - name: Version
        description: |
          Version of the API requested to use when responding to this request.
        in: header
        required: true
        schema:
          type: string
    get:
      description: >
        The GET method retrieves information about a VNF snapshot by reading an
        "Individual VNF snapshot" 

        resource.

        This method shall follow the provisions specified in the tables
        5.4.24.3.2-1 and 5.4.24.3.2-2 

        for URI query parameters, request and response data structures, and
        response codes.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/IndividualVnfSnapshot.Get.200'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            416 Range Not Satisfiable
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
        This method modifies an "Individual VNF snapshot" resource.


        Changes are applied to the VNF snapshot information managed by the VNFM
        and are reflected in the 

        representation of this resource. The VNFM shall reject the modification
        request if the "vnfSnapshot" 

        attribute in the "VnfSnapshotInfo" structure representing the
        "Individual VNF snapshot" resource 

        is not empty, or the resource is associated to an ongoing VNF snapshot
        operation (e.g., a VNF 

        snapshot creation process has started).


        This method shall follow the provisions specified in the tables
        5.4.24.3.4-1 and 5.4.24.3.4-2 

        for URI query parameters, request and response data structures, and
        response codes.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - name: Content-Type
          description: |
            The MIME type of the body of the request. Reference: IETF RFC 7231
          in: header
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/VnfSnapshotInfoModificationRequest'
      responses:
        '200':
          $ref: '#/components/responses/IndividualVnfSnapshot.Patch.200'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            412 PRECONDITION FAILED

            Error: 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            416 Range Not Satisfiable
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
        This method deletes an "Individual VNF snapshot" resource and the
        associated VNF snapshot 

        information managed by the VNFM, and any resource associated to the VNF
        snapshot managed 

        by the VIM.

        As the result of successfully executing this method, the "Individual VNF
        snapshot" resource 

        shall not exist any longer.

        This method shall follow the provisions specified in the tables
        5.4.24.3.5-1 and 5.4.24.3.5-2 

        for URI query parameters, request and response data structures, and
        response codes.
      responses:
        '204':
          $ref: '#/components/responses/IndividualVnfSnapshot.Delete.204'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            412 PRECONDITION FAILED

            Error: 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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_snapshots/{vnfSnapshotInfoId}/vnf_state_snapshot':
    parameters:
      - $ref: '#/components/parameters/VnfSnapshotInfoId'
      - name: Authorization
        description: |
          The authorization token for the request. Reference: IETF RFC 7235.
        in: header
        required: false
        schema:
          type: string
      - name: Version
        description: |
          Version of the API requested to use when responding to this request.
        in: header
        required: true
        schema:
          type: string
    get:
      description: >
        The GET method fetches the content of the VNF state snapshot. 

        This method shall follow the provisions specified in the tables
        5.4.25.3.2-1 and 5.4.25.3.2-2 

        for URI query parameters, request and response data structures, and
        response codes.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response. Reference: IETF
            RFC 7231.
          in: header
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Range'
      responses:
        '200':
          $ref: '#/components/responses/IndividualVnfSnapshotState.Get.200'
        '206':
          $ref: '#/components/responses/IndividualVnfSnapshotState.Get.206'
        '400':
          description: >
            400 BAD REQUEST

            400 code can be returned in the following specified cases, the
            specific cause has to be proper specified in the "ProblemDetails"
            structure to be returned.

            If the request is malformed or syntactically incorrect (e.g. if the
            request URI contains incorrect query parameters or the payload body
            contains a syntactically incorrect data structure), 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 response to a GET request which queries a container resource
            would be so big that the performance of the API producer is
            adversely affected, and the API producer does not support paging for
            the affected resource, it 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 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.

            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.

            The use of this HTTP error response code described above is
            applicable to the use of the OAuth 2.0 for the authorization of API
            requests and notifications, as defined in clauses 4.5.3.3 and
            4.5.3.4.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            401 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            403 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            404 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.

            This response code is not appropriate in case the resource addressed
            by the URI is a container resource which is designed to contain
            child resources, but does not contain any child resource at the time
            the request is received. For a GET request to an existing empty
            container resource, a typical response contains a 200 OK response
            code and a payload body with an empty array.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            405 METHOD NOT ALLOWED

            If a particular HTTP method is not supported for a particular
            resource, the API producer shall respond with this response code.
            The "ProblemDetails" structure may be omitted.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            406 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.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            409 CONFLICT
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: |
            416 Range Not Satisfiable
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            500 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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: >
            503 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 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.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
        '504':
          description: >
            504 GATEWAY TIMEOUT

            If the API producer encounters a timeout while waiting for a
            response from an upstream server (i.e. a server that the API
            producer communicates with when fulfilling a request), it should
            respond with this response code.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              schema:
                type: string
                maximum: 1
                minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                maximum: 1
                minimum: 1
          content:
            application/json:
              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
components:
  parameters:
    VnfInstanceId:
      name: vnfInstanceId
      in: path
      description: >
        Identifier of the VNF instance for the VNF snapshot to be reverted to.
        This identifier can be retrieved from the resource 

        referenced by the "Location" HTTP header in the response to a POST
        request creating a new "Individual VNF instance" resource. 

        It can also be retrieved from the "id" attribute in the payload body of
        that response.
      required: true
      style: simple
      explode: false
      schema:
        type: string
    VnfLcmOpOccId:
      name: vnfLcmOpOccId
      in: path
      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.
      required: true
      style: simple
      explode: false
      schema:
        type: string
    SubscriptionId:
      name: subscriptionId
      in: path
      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.
      required: true
      style: simple
      explode: false
      schema:
        type: string
    VnfSnapshotInfoId:
      name: vnfSnapshotInfoId
      in: path
      description: >
        Identifier of the "Individual VNF snapshot" resource. 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 snapshot resource. It can also be retrieved from the
        "id" attribute in

        the payload body of that response.        
      required: true
      style: simple
      explode: false
      schema:
        type: string
    Range:
      name: Range
      in: header
      description: |
        The request may contain a "Range" HTTP header to obtain single
        range of bytes from a VNF state snapshot file. This can be used to
        continue an aborted transmission.
        If the "Range" header is present in the request and the VNFM
        does not support responding to range requests with a 206
        response, it shall return a 200 OK response instead.
      schema:
        type: string
  requestBodies:
    CreateVnfRequest:
      description: The VNF creation parameters
      content:
        application/json:
          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
              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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    VnfInfoModificationRequest:
      description: |
        Parameters for the VNF modification, as defined in clause 5.5.2.12.
      content:
        application/json:
          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: |
                  A string defined in IETF RFC 8259.
                type: string
              vnfInstanceDescription:
                description: |
                  A string defined in IETF RFC 8259.
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
              vimConnectionInfo:
                description: >
                  Modifications of the "vimConnectionInfo" attribute. If
                  present, these  modifications shall be applied according to
                  the rules of  JSON Merge Patch (see IETF RFC 7396 ).
                type: object
                additionalProperties:
                  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:
                    - vimType
                  properties:
                    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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      type: object
      required: true
    InstantiateVnfRequest:
      description: Parameters for the VNF instantiation.
      content:
        application/json:
          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: >
                              Map of instance data that need to be configured on
                              the CP instances created from the respective CPD.
                              The key of the map which identifies the individual
                              VnfExtCpConfig entries is managed by the API
                              consumer. The entries shall be applied by the VNFM
                              according to the rules of JSON Merge Patch (see
                              IETF RFC 7396). Within one VNF instance, all VNFC
                              instances created from a particular VDU have the
                              same external connectivity. Thus, given a
                              particular value of the “cpdId” attribute, there
                              shall be one “cpConfig” entry for each VNFC
                              instance that has been or can be created from a
                              VDU which includes a CPD identified by the “cpdId”
                              attribute. If the cpConfig represents a subport in
                              a trunk, all “cpConfig” entries in this list shall
                              have the same segmentationId, which means they are
                              connected to the same set of external VLs via the
                              trunk. The map entry value shall be set to "null"
                              in order to delete a "VnfExtCpConfig" entry
                              identified by a particular key value from the map,
                              i.e. for the disconnection of an existing external
                              CP instance addressed by cpInstanceId in the
                              deleted map entry from a particular external
                              virtual link, and deletion of that instance in
                              case it represents a subport. Deleting the last
                              key from the map removes the affected instance of
                              the "VnfExtCpData" structure from its parent data
                              structure.
                            type: object
                            additionalProperties:
                              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.
                              anyOf:
                                - required:
                                    - linkPortId
                                - required:
                                    - cpProtocolData
                              type: object
                              properties:
                                parentCpConfigId:
                                  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": 1) Void 2) At least one of
                                    the "linkPortId" and "cpProtocolData"
                                    attributes 
                                       shall be present for an external CP instance representing a subport 
                                       that is to be created, or an external CP instance that is to be created 
                                       by creating the corresponding VNFC or VNF instance during the current or 
                                       a subsequent LCM operation, or for an existing external CP instance 
                                       that is to be re-configured or added to a particular external virtual link.
                                    3) If the "linkPortId" attribute is absent,
                                    the VNFM shall create a
                                       link port.
                                    4) 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.
                                    5) 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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - fixedAddresses
                                          - required:
                                              - numDynamicAddresses
                                          - required:
                                              - ipAddressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present. Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          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:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                type: string
              extManagedVirtualLinks:
                description: >
                  Information about internal VLs that are managed by the NFVO.

                  NOTES:  The indication of externally-managed internal VLs is
                  needed in case networks have been pre-configured  for use with
                  certain VNFs, for instance to ensure that these networks have
                  certain properties such as  security or acceleration features,
                  or to address particular network topologies. The present
                  document  assumes that externally-managed internal VLs are
                  managed by the NFVO and created towards the VIM.

                  It is possible to have several ExtManagedVirtualLinkData for
                  the same VNF internal VL in case of a  multi-site VNF spanning
                  several VIMs. The set of ExtManagedVirtualLinkData
                  corresponding to the same  VNF internal VL shall indicate so
                  by referencing to the same VnfVirtualLinkDesc and
                  externally-managed  multi-site VL instance (refer to clause
                  4.4.1.12).
                type: array
                items:
                  type: object
                  required:
                    - id
                    - vnfVirtualLinkDescId
                    - resourceId
                  properties:
                    id:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    vnfVirtualLinkDescId:
                      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
                    vnfLinkPort:
                      description: >
                        Externally provided link ports to be used to connect
                        VNFC connection points to this externally-managed VL on
                        this network resource. If this attribute is not present,
                        the VNFM shall create the link ports on the
                        externally-managed VL.
                      type: array
                      items:
                        description: >
                          This type represents an externally provided link port
                          to be used to connect a VNFC connection point  to an
                          exernally managed VL.
                        type: object
                        required:
                          - vnfLinkPortId
                          - resourceHandle
                        properties:
                          vnfLinkPortId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                          resourceHandle:
                            required:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                type: string
                    extManagedMultisiteVirtualLinkId:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      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. The VNFM shall apply
                  the content of this  attribute to the "vimConnectionInfo"
                  attribute of "VnfInstance" according to the rules of JSON
                  Merge Patch  (see IETF RFC 7396).
                type: object
                additionalProperties:
                  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:
                    - vimType
                  properties:
                    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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      type: object
              localizationLanguage:
                description: |
                  A string defined in IETF RFC 8259.
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
              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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    ScaleVnfRequest:
      description: Parameters for the scale VNF operation.
      content:
        application/json:
          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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    ScaleVnfToLevelRequest:
      description: Parameters for the scale VNF to Level operation.
      content:
        application/json:
          schema:
            description: >
              This type represents request parameters for the "Scale VNF to
              Level" operation.
            type: object
            anyOf:
              - oneOf:
                  - required:
                      - instantiationLevelId
                  - required:
                      - scaleInfo
            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
                    vnfdId:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    ChangeVnfFlavourRequest:
      description: Parameters for the Change VNF Flavour operation.
      content:
        application/json:
          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. Entries
                  in the list of external VLs that are unchanged need not be
                  supplied as part of this request.
                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: >
                              Map of instance data that need to be configured on
                              the CP instances created from the respective CPD.
                              The key of the map which identifies the individual
                              VnfExtCpConfig entries is managed by the API
                              consumer. The entries shall be applied by the VNFM
                              according to the rules of JSON Merge Patch (see
                              IETF RFC 7396). Within one VNF instance, all VNFC
                              instances created from a particular VDU have the
                              same external connectivity. Thus, given a
                              particular value of the “cpdId” attribute, there
                              shall be one “cpConfig” entry for each VNFC
                              instance that has been or can be created from a
                              VDU which includes a CPD identified by the “cpdId”
                              attribute. If the cpConfig represents a subport in
                              a trunk, all “cpConfig” entries in this list shall
                              have the same segmentationId, which means they are
                              connected to the same set of external VLs via the
                              trunk. The map entry value shall be set to "null"
                              in order to delete a "VnfExtCpConfig" entry
                              identified by a particular key value from the map,
                              i.e. for the disconnection of an existing external
                              CP instance addressed by cpInstanceId in the
                              deleted map entry from a particular external
                              virtual link, and deletion of that instance in
                              case it represents a subport. Deleting the last
                              key from the map removes the affected instance of
                              the "VnfExtCpData" structure from its parent data
                              structure.
                            type: object
                            additionalProperties:
                              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.
                              anyOf:
                                - required:
                                    - linkPortId
                                - required:
                                    - cpProtocolData
                              type: object
                              properties:
                                parentCpConfigId:
                                  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": 1) Void 2) At least one of
                                    the "linkPortId" and "cpProtocolData"
                                    attributes 
                                       shall be present for an external CP instance representing a subport 
                                       that is to be created, or an external CP instance that is to be created 
                                       by creating the corresponding VNFC or VNF instance during the current or 
                                       a subsequent LCM operation, or for an existing external CP instance 
                                       that is to be re-configured or added to a particular external virtual link.
                                    3) If the "linkPortId" attribute is absent,
                                    the VNFM shall create a
                                       link port.
                                    4) 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.
                                    5) 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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - fixedAddresses
                                          - required:
                                              - numDynamicAddresses
                                          - required:
                                              - ipAddressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present. Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          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:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                type: string
              extManagedVirtualLinks:
                description: >
                  Information about internal VLs that are managed by the NFVO.

                  NOTES:  The indication of externally-managed internal VLs is
                  needed in case networks have been pre-configured  for use with
                  certain VNFs, for instance to ensure that these networks have
                  certain properties such as  security or acceleration features,
                  or to address particular network topologies. The present
                  document  assumes that externally-managed internal VLs are
                  managed by the NFVO and created towards the VIM.

                  It is possible to have several ExtManagedVirtualLinkData for
                  the same VNF internal VL in case of a  multi-site VNF spanning
                  several VIMs. The set of ExtManagedVirtualLinkData
                  corresponding to the same  VNF internal VL shall indicate so
                  by referencing to the same VnfVirtualLinkDesc and
                  externally-managed  multi-site VL instance (refer to clause
                  4.4.1.12).
                type: array
                items:
                  type: object
                  required:
                    - id
                    - vnfVirtualLinkDescId
                    - resourceId
                  properties:
                    id:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    vnfVirtualLinkDescId:
                      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
                    vnfLinkPort:
                      description: >
                        Externally provided link ports to be used to connect
                        VNFC connection points to this externally-managed VL on
                        this network resource. If this attribute is not present,
                        the VNFM shall create the link ports on the
                        externally-managed VL.
                      type: array
                      items:
                        description: >
                          This type represents an externally provided link port
                          to be used to connect a VNFC connection point  to an
                          exernally managed VL.
                        type: object
                        required:
                          - vnfLinkPortId
                          - resourceHandle
                        properties:
                          vnfLinkPortId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                          resourceHandle:
                            required:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                type: string
                    extManagedMultisiteVirtualLinkId:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      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. The VNFM shall apply
                  the content of this  attribute to the "vimConnectionInfo"
                  attribute of "VnfInstance" according to the rules of JSON
                  Merge Patch  (see IETF RFC 7396).
                type: object
                additionalProperties:
                  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:
                    - vimType
                  properties:
                    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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
              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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    TerminateVnfRequest:
      description: Parameters for the VNF termination.
      content:
        application/json:
          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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    HealVnfRequest:
      description: Parameters for the Heal VNF operation.
      content:
        application/json:
          schema:
            type: object
            properties:
              cause:
                description: |
                  A string defined in IETF RFC 8259.
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    OperateVnfRequest:
      description: Parameters for the Operate VNF operation.
      content:
        application/json:
          schema:
            description: >
              This type represents request parameters for the "Operate VNF"
              operation.
            type: object
            required:
              - changeStateTo
            properties:
              changeStateTo:
                description: >
                  STARTED: The VNF instance is up and running. STOPPED: The VNF
                  instance has been shut down.
                type: string
                enum:
                  - STARTED
                  - STOPPED
              stopType:
                description: >
                  * FORCEFUL: The VNFM will stop the VNF instance immediately
                  after accepting 
                    the request.
                  * GRACEFUL: The VNFM instance 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 instance.
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    ChangeExtVnfConnectivityRequest:
      description: |
        Parameters for the Change external VNF connectivity operation.
      content:
        application/json:
          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). Entries in the list of external VLs that are unchanged
                  need not be supplied as part of this request.
                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: >
                              Map of instance data that need to be configured on
                              the CP instances created from the respective CPD.
                              The key of the map which identifies the individual
                              VnfExtCpConfig entries is managed by the API
                              consumer. The entries shall be applied by the VNFM
                              according to the rules of JSON Merge Patch (see
                              IETF RFC 7396). Within one VNF instance, all VNFC
                              instances created from a particular VDU have the
                              same external connectivity. Thus, given a
                              particular value of the “cpdId” attribute, there
                              shall be one “cpConfig” entry for each VNFC
                              instance that has been or can be created from a
                              VDU which includes a CPD identified by the “cpdId”
                              attribute. If the cpConfig represents a subport in
                              a trunk, all “cpConfig” entries in this list shall
                              have the same segmentationId, which means they are
                              connected to the same set of external VLs via the
                              trunk. The map entry value shall be set to "null"
                              in order to delete a "VnfExtCpConfig" entry
                              identified by a particular key value from the map,
                              i.e. for the disconnection of an existing external
                              CP instance addressed by cpInstanceId in the
                              deleted map entry from a particular external
                              virtual link, and deletion of that instance in
                              case it represents a subport. Deleting the last
                              key from the map removes the affected instance of
                              the "VnfExtCpData" structure from its parent data
                              structure.
                            type: object
                            additionalProperties:
                              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.
                              anyOf:
                                - required:
                                    - linkPortId
                                - required:
                                    - cpProtocolData
                              type: object
                              properties:
                                parentCpConfigId:
                                  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": 1) Void 2) At least one of
                                    the "linkPortId" and "cpProtocolData"
                                    attributes 
                                       shall be present for an external CP instance representing a subport 
                                       that is to be created, or an external CP instance that is to be created 
                                       by creating the corresponding VNFC or VNF instance during the current or 
                                       a subsequent LCM operation, or for an existing external CP instance 
                                       that is to be re-configured or added to a particular external virtual link.
                                    3) If the "linkPortId" attribute is absent,
                                    the VNFM shall create a
                                       link port.
                                    4) 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.
                                    5) 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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - fixedAddresses
                                          - required:
                                              - numDynamicAddresses
                                          - required:
                                              - ipAddressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present. Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          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:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                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. The VNFM shall apply the content of this attribute
                  to the  "vimConnectionInfo" attribute of "VnfInstance"
                  according to the rules of JSON Merge Patch (see IETF RFC
                  7396).
                type: object
                additionalProperties:
                  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:
                    - vimType
                  properties:
                    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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    ChangeCurrentVnfPkgRequest:
      description: >
        Parameters for the Change current VNF package operation, as defined in
        clause 5.5.2.11a.
      content:
        application/json:
          schema:
            description: >
              This type represents request parameters for the "Change current
              VNF package"  operation to replace the VNF package on which a VNF
              instance is based.
            type: object
            required:
              - vnfdId
            properties:
              vnfdId:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              extVirtualLinks:
                description: >
                  Information about external VLs to connect the VNF to. Entries
                  in the list  that are unchanged need not be supplied as part
                  of this request.
                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: >
                              Map of instance data that need to be configured on
                              the CP instances created from the respective CPD.
                              The key of the map which identifies the individual
                              VnfExtCpConfig entries is managed by the API
                              consumer. The entries shall be applied by the VNFM
                              according to the rules of JSON Merge Patch (see
                              IETF RFC 7396). Within one VNF instance, all VNFC
                              instances created from a particular VDU have the
                              same external connectivity. Thus, given a
                              particular value of the “cpdId” attribute, there
                              shall be one “cpConfig” entry for each VNFC
                              instance that has been or can be created from a
                              VDU which includes a CPD identified by the “cpdId”
                              attribute. If the cpConfig represents a subport in
                              a trunk, all “cpConfig” entries in this list shall
                              have the same segmentationId, which means they are
                              connected to the same set of external VLs via the
                              trunk. The map entry value shall be set to "null"
                              in order to delete a "VnfExtCpConfig" entry
                              identified by a particular key value from the map,
                              i.e. for the disconnection of an existing external
                              CP instance addressed by cpInstanceId in the
                              deleted map entry from a particular external
                              virtual link, and deletion of that instance in
                              case it represents a subport. Deleting the last
                              key from the map removes the affected instance of
                              the "VnfExtCpData" structure from its parent data
                              structure.
                            type: object
                            additionalProperties:
                              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.
                              anyOf:
                                - required:
                                    - linkPortId
                                - required:
                                    - cpProtocolData
                              type: object
                              properties:
                                parentCpConfigId:
                                  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": 1) Void 2) At least one of
                                    the "linkPortId" and "cpProtocolData"
                                    attributes 
                                       shall be present for an external CP instance representing a subport 
                                       that is to be created, or an external CP instance that is to be created 
                                       by creating the corresponding VNFC or VNF instance during the current or 
                                       a subsequent LCM operation, or for an existing external CP instance 
                                       that is to be re-configured or added to a particular external virtual link.
                                    3) If the "linkPortId" attribute is absent,
                                    the VNFM shall create a
                                       link port.
                                    4) 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.
                                    5) 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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - fixedAddresses
                                          - required:
                                              - numDynamicAddresses
                                          - required:
                                              - ipAddressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present. Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          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:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                type: string
              extManagedVirtualLinks:
                description: >
                  Information about internal VLs that are managed by the NFVO.

                  NOTES: The indication of externally-managed internal VLs is
                  needed in case networks have been pre-configured for use with
                  certain VNFs, for instance to ensure that these networks have
                  certain properties such as security or acceleration features,
                  or to address particular network topologies. The present
                  document assumes that externally-managed internal VLs are
                  managed by the NFVO and created towards the VIM. It is
                  possible to have several ExtManagedVirtualLinkData for the
                  same VNF internal VL in case of a multi-site VNF spanning
                  several VIMs. The set of ExtManagedVirtualLinkData
                  corresponding to the same VNF internal VL shall indicate so by
                  referencing to the same VnfVirtualLinkDesc and
                  externally-managed multi-site VL instance (refer to clause
                  4.4.1.12).
                type: array
                items:
                  type: object
                  required:
                    - id
                    - vnfVirtualLinkDescId
                    - resourceId
                  properties:
                    id:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    vnfVirtualLinkDescId:
                      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
                    vnfLinkPort:
                      description: >
                        Externally provided link ports to be used to connect
                        VNFC connection points to this externally-managed VL on
                        this network resource. If this attribute is not present,
                        the VNFM shall create the link ports on the
                        externally-managed VL.
                      type: array
                      items:
                        description: >
                          This type represents an externally provided link port
                          to be used to connect a VNFC connection point  to an
                          exernally managed VL.
                        type: object
                        required:
                          - vnfLinkPortId
                          - resourceHandle
                        properties:
                          vnfLinkPortId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                          resourceHandle:
                            required:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                type: string
                    extManagedMultisiteVirtualLinkId:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      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. The VNFM shall apply the content of this attribute
                  to the  "vimConnectionInfo" attribute of "VnfInstance"
                  according to the rules of JSON Merge Patch (see IETF RFC
                  7396).
                type: object
                additionalProperties:
                  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:
                    - vimType
                  properties:
                    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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
              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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    LccnSubscriptionRequest:
      description: |
        Details of the subscription to be created.
      content:
        application/json:
          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
                    anyOf:
                      - oneOf:
                          - required:
                              - vnfdId
                          - required:
                              - vnfProductsFromProviders
                      - oneOf:
                          - required:
                              - vnfInstanceIds
                          - required:
                              - vnfInstanceNames
                    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. CREATE_SNAPSHOT | Represents
                        the "Create VNF Snapshot" LCM operation.
                        REVERT_TO_SNAPSHOT | Represents the “Revert-To VNF
                        Snapshot" LCM operation. CHANGE_VNFPKG | Represents the
                        "Change current VNF package" LCM operation.
                      type: string
                      enum:
                        - INSTANTIATE
                        - SCALE
                        - SCALE_TO_LEVEL
                        - CHANGE_FLAVOUR
                        - TERMINATE
                        - HEAL
                        - OPERATE
                        - CHANGE_EXT_CONN
                        - MODIFY_INFO
                        - CREATE_SNAPSHOT
                        - REVERT_TO_SNAPSHOT
                        - CHANGE_VNFPKG
                  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: >
                        STARTING: The LCM operation is starting. PROCESSING: The
                        LCM operation is currently in execution. COMPLETED: The
                        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
              verbosity:
                description: >
                  The enumeration LcmOpOccNotificationVerbosityType provides
                  values to control the verbosity of LCM operation occurrence
                  notifications. * FULL: This signals a full notification which
                  contains all change details. * SHORT: This signals a short
                  notification which omits large-volume change details to reduce
                  the size of data to
                           be sent via the notification mechanism.
                type: string
                enum:
                  - FULL
                  - SHORT
      required: true
    CreateVnfSnapshotRequest:
      description: >
        Parameters for the "Create VNF Snapshot" operation, as defined in clause
        5.5.2.21.
      content:
        application/json:
          schema:
            description: >
              This type represents request parameters for the "Create VNF
              Snapshot"  LCM operation which takes a snapshot of a VNF instance
              and populates  a previously-created "Individual VNF snapshot"
              resource with the content  of the snapshot. It shall comply with
              the provisions defined in table 5.5.2.21-1.
            type: object
            required:
              - vnfSnapshotResId
            properties:
              vnfSnapshotInfoId:
                description: |
                  An identifier with the intention of being globally unique.
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
              userDefinedData:
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    RevertToVnfSnapshotRequest:
      description: >
        Parameters for the Revert to VNF snapshot operation, as defined in
        clause 5.5.2.26.
      content:
        application/json:
          schema:
            description: >
              This type represents request parameters for the "Revert to VNF
              Snapshot" operation.
            type: object
            required:
              - vnfSnapshotInfoId
            properties:
              vnfSnapshotInfoId:
                description: |
                  An identifier with the intention of being globally unique.
                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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
      required: true
    CreateVnfSnapshotInfoRequest:
      description: >
        The VNF snapshot resource creation parameters, as defined in clause
        5.5.2.20.
      content:
        application/json:
          schema:
            description: >
              This type represents request parameters for the creation of an
              "Individual VNF snapshot" resource which can be

              populated with content obtained by invoking the "Create VNF
              snapshot" LCM operation or extracted from a

              VNF snapshot package. It shall comply with the provisions defined
              in table 5.5.2.20-1.
            type: object
            properties:
              vnfSnapshotPkgId:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              vnfSnapshot:
                description: >
                  This type represents a VNF snapshot. It shall comply with the
                  provisions defined in table 5.5.2.23-1.
                type: object
                required:
                  - id
                  - vnfInstanceId
                  - triggeredAt
                  - vnfdId
                  - vnfInfo
                  - vnfcSnapshots
                properties:
                  id:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfInstanceId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  creationStartedAt:
                    description: >
                      Date-time stamp. Representation: String formatted
                      according to IETF RFC 3339.
                    type: string
                    format: date-time
                  creationFinishedAt:
                    description: >
                      Date-time stamp. Representation: String formatted
                      according to IETF RFC 3339.
                    type: string
                    format: date-time
                  vnfdId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfInstance:
                    description: |
                      This type represents a VNF instance.
                    type: object
                    required:
                      - id
                      - vnfdId
                      - vnfProvider
                      - vnfProductName
                      - vnfSoftwareVersion
                      - vnfdVersion
                      - 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
                      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 keyvalue pairs is represented as an
                          object. It shall comply with the provisions defined in
                          clause 4 of IETF RFC 8259. In the following example, a
                          list of key-value pairs with four keys ("aString",
                          "aNumber", "anArray" and "anObject") is provided to
                          illustrate that the values associated with different
                          keys can be of different type.
                        type: object
                      vimConnectionInfo:
                        description: >
                          Information about VIM connections to be used for
                          managing the resources for the VNF instance. The keys
                          of the map, each of which identifies information about
                          a particular VIM connection, are managed by the NFVO
                          and referenced from other data structures via the
                          "vimConnectionId" attribute. This attribute shall only
                          be supported and present if VNF-related resource
                          management in direct mode is pplicable. This attribute
                          can be modified with the PATCH method.
                        type: object
                        additionalProperties:
                          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:
                            - vimType
                          properties:
                            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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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:
                            description: >
                              STARTED: The VNF instance is up and running.
                              STOPPED: The VNF instance has been shut down.
                            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. This
                              attribute shall be present if the VNF supports
                              scaling. See clause B.2 for an explanation of VNF
                              scaling.
                            type: array
                            items:
                              required:
                                - aspectId
                                - scaleLevel
                              type: object
                              properties:
                                aspectId:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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
                          maxScaleLevels:
                            description: >
                              Maximum allowed scale levels of the VNF, one entry
                              per aspect. This attribute shall be present if the
                              VNF supports scaling.
                            type: array
                            items:
                              required:
                                - aspectId
                                - scaleLevel
                              type: object
                              properties:
                                aspectId:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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. When trunking is enabled, the list
                              of entries includes both, external CPs
                              corresponding to parent ports of a trunk, and
                              external CPs associated to sub-ports of a trunk.
                            type: array
                            minItems: 1
                            items:
                              description: >
                                This type represents information about an
                                external CP of a VNF. It shall comply with the
                                provisions defined in table 5.5.3.25 1.
                              type: object
                              required:
                                - id
                                - cpdId
                                - cpConfigId
                                - cpProtocolInfo
                              oneOf:
                                - required:
                                    - associatedVnfcCpId
                                - required:
                                    - associatedVnfVirtualLinkId
                              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
                                cpConfigId:
                                  description: >
                                    An identifier that is unique for the
                                    respective type within a VNF instance, but
                                    may not be globally unique.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    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.
                                    type: object
                                    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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - addresses
                                          - required:
                                              - addressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present.  Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          ipAddresses:
                                            description: >
                                              Addresses assigned to the CP instance.
                                              Each entry represents IP addresses
                                              assigned by fixed or dynamic IP address
                                              assignment per subnet. At least one of
                                              "macAddress" or "ipAddresses" shall be
                                              present.
                                            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). Exactly one of "addresses" or
                                                    "addressRange" 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
                                                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 identifier maintained by the VIM or
                                                    other resource provider. It is expected
                                                    to be unique within the VIM instance.
                                                  type: string
                                extLinkPortId:
                                  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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  type: object
                                associatedVnfcCpId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                associatedVnfVirtualLinkId:
                                  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
                                - currentVnfExtCpData
                              properties:
                                id:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                resourceHandle:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                currentVnfExtCpData:
                                  description: >
                                    Allows the API consumer to read the current
                                    CP configuration information for the
                                    connection of external CPs to the external
                                    virtual link. This attribute reflects the
                                    current configuration information that has
                                    resulted from merging into this attribute
                                    the "VnfExtCpData" information which was
                                    passed as part of the "ExtVirtualLinkData"
                                    structure in the input of the most recent
                                    VNF LCM operation such as
                                    "InstantiateVnfRequest",
                                    "ChangeExtVnfConnectivityRequest",
                                    "ChangeVnfFlavourRequest" or
                                    "ChangeCurrentVnfPkgRequest", or has been
                                    provided by the NFVO during the granting
                                    procedure. If applying such change results
                                    in an empty list of "currentVnfExtCpData"
                                    structure instances, the affected instance
                                    of "ExtVirtualLinkInfo" shall be removed
                                    from its parent data structure.
                                  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: >
                                          Map of instance data that need to be
                                          configured on the CP instances created
                                          from the respective CPD. The key of the
                                          map which identifies the individual
                                          VnfExtCpConfig entries is managed by the
                                          API consumer. The entries shall be
                                          applied by the VNFM according to the
                                          rules of JSON Merge Patch (see IETF RFC
                                          7396). Within one VNF instance, all VNFC
                                          instances created from a particular VDU
                                          have the same external connectivity.
                                          Thus, given a particular value of the
                                          “cpdId” attribute, there shall be one
                                          “cpConfig” entry for each VNFC instance
                                          that has been or can be created from a
                                          VDU which includes a CPD identified by
                                          the “cpdId” attribute. If the cpConfig
                                          represents a subport in a trunk, all
                                          “cpConfig” entries in this list shall
                                          have the same segmentationId, which
                                          means they are connected to the same set
                                          of external VLs via the trunk. The map
                                          entry value shall be set to "null" in
                                          order to delete a "VnfExtCpConfig" entry
                                          identified by a particular key value
                                          from the map, i.e. for the disconnection
                                          of an existing external CP instance
                                          addressed by cpInstanceId in the deleted
                                          map entry from a particular external
                                          virtual link, and deletion of that
                                          instance in case it represents a
                                          subport. Deleting the last key from the
                                          map removes the affected instance of the
                                          "VnfExtCpData" structure from its parent
                                          data structure.
                                        type: object
                                        additionalProperties:
                                          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.
                                          anyOf:
                                            - required:
                                                - linkPortId
                                            - required:
                                                - cpProtocolData
                                          type: object
                                          properties:
                                            parentCpConfigId:
                                              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": 1) Void 2) At least
                                                one of the "linkPortId" and
                                                "cpProtocolData" attributes 
                                                   shall be present for an external CP instance representing a subport 
                                                   that is to be created, or an external CP instance that is to be created 
                                                   by creating the corresponding VNFC or VNF instance during the current or 
                                                   a subsequent LCM operation, or for an existing external CP instance 
                                                   that is to be re-configured or added to a particular external virtual link.
                                                3) If the "linkPortId" attribute is
                                                absent, the VNFM shall create a
                                                   link port.
                                                4) 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.
                                                5) 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
                                                    anyOf:
                                                      - required:
                                                          - macAddress
                                                      - required:
                                                          - ipAddresses
                                                    oneOf:
                                                      - required:
                                                          - fixedAddresses
                                                      - required:
                                                          - numDynamicAddresses
                                                      - required:
                                                          - ipAddressRange
                                                    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
                                                      segmentationId:
                                                        description: >
                                                          Identification of the network segment to
                                                          which the Cp instance connects to. If
                                                          the Cp instance represents a subport in
                                                          a trunk, segmentationId shall be
                                                          present. Otherwise it shall not be
                                                          present. Depending on the NFVI
                                                          networking infrastructure, the
                                                          segmentationId may indicate the actual
                                                          network segment value (e.g. vlan Id,
                                                          Vxlan segmentation id, etc.) used in the
                                                          transport header of the packets or it
                                                          may be an identifier used between the
                                                          application and the NFVI networking
                                                          infrastructure to identify the network
                                                          sub-interface of the trunk port in
                                                          question. In the latter case the NFVI
                                                          infrastructure will map this local
                                                          segmentationId to whatever
                                                          segmentationId is actually used by the
                                                          NFVI’s transport technology.
                                                        type: string
                                                      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
                          extManagedVirtualLinkInfo:
                            description: >
                              Information about the externally-managed internal
                              VLs of the VNF instance.

                              NOTE: It is possible to have several
                              ExtManagedVirtualLinkInfo for the same VNF
                              internal VL in case of a multi-site VNF spanning
                              several VIMs. The set of ExtManagedVirtualLinkInfo
                              corresponding to the same VNF internal VL shall
                              indicate so by referencing to the same
                              VnfVirtualLinkDesc and externally-managed
                              multi-site VL instance (refer to clause 5.5.3.3).
                            type: array
                            items:
                              type: object
                              required:
                                - id
                                - vnfVirtualLinkDescId
                                - networkResource
                              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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                networkResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                      cpInstanceType:
                                        description: >
                                          Type of the CP instance that is
                                          identified by cpInstanceId. Shall be
                                          present if "cpInstanceId" is present,
                                          and shall be absent otherwise. Permitted
                                          values: VNFC_CP: The link port is
                                          connected to a VNFC CP EXT_CP: The link
                                          port is associated to an external CP.
                                        type: string
                                        enum:
                                          - VNFC_CP
                                          - EXT_CP
                                extManagedMultisiteVirtualLinkId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                          monitoringParameters:
                            description: |
                              Active monitoring parameters.
                            type: array
                            items:
                              type: object
                              required:
                                - id
                                - performanceMetric
                              properties:
                                id:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                name:
                                  description: >
                                    Human readable name of the monitoring
                                    parameter, as defined in the VNFD.
                                  type: string
                                performanceMetric:
                                  description: >
                                    Performance metric that is monitored. This
                                    attribute shall contain the related
                                    "Measurement Name" value as defined in
                                    clause 7.2 of ETSI GS NFV-IFA 027.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                computeResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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: >
                                    All the CPs of the VNFC instance. Shall be
                                    present when that particular CP of the VNFC
                                    instance is exposed as an external CP of the
                                    VNF instance or is connected to an external
                                    CP of the VNF instance. A VNFC CP is
                                    "connected to" an external CP if the VNFC CP
                                    is connected to an internal VL that exposes
                                    an external CP. A VNFC CP is "exposed as" an
                                    external CP if it is connected directly to
                                    an external VL. 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. May be omitted if the VNFC CP is
                                          exposed as an external CP. The
                                          information can be omitted because it is
                                          already available as part of the
                                          external CP information.
                                        type: array
                                        items:
                                          description: >
                                            This type describes the protocol
                                            layer(s) that a CP uses together with
                                            protocol-related information, like
                                            addresses.
                                          type: object
                                          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
                                              anyOf:
                                                - required:
                                                    - macAddress
                                                - required:
                                                    - ipAddresses
                                              oneOf:
                                                - required:
                                                    - addresses
                                                - required:
                                                    - addressRange
                                              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
                                                segmentationId:
                                                  description: >
                                                    Identification of the network segment to
                                                    which the Cp instance connects to. If
                                                    the Cp instance represents a subport in
                                                    a trunk, segmentationId shall be
                                                    present.  Otherwise it shall not be
                                                    present. Depending on the NFVI
                                                    networking infrastructure, the
                                                    segmentationId may indicate the actual
                                                    network segment value (e.g. vlan Id,
                                                    Vxlan segmentation id, etc.) used in the
                                                    transport header of the packets or it
                                                    may be an identifier used between the
                                                    application and the NFVI networking
                                                    infrastructure to identify the network
                                                    sub-interface of the trunk port in
                                                    question. In the latter case the NFVI
                                                    infrastructure will map this local
                                                    segmentationId to whatever
                                                    segmentationId is actually used by the
                                                    NFVI’s transport technology.
                                                  type: string
                                                ipAddresses:
                                                  description: >
                                                    Addresses assigned to the CP instance.
                                                    Each entry represents IP addresses
                                                    assigned by fixed or dynamic IP address
                                                    assignment per subnet. At least one of
                                                    "macAddress" or "ipAddresses" shall be
                                                    present.
                                                  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). Exactly one of "addresses" or
                                                          "addressRange" 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
                                                      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 identifier maintained by the VIM or
                                                          other resource provider. It is expected
                                                          to be unique within the VIM instance.
                                                        type: string
                                      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 keyvalue pairs is represented as an
                                          object. It shall comply with the
                                          provisions defined in clause 4 of IETF
                                          RFC 8259. In the following example, a
                                          list of key-value pairs with four keys
                                          ("aString", "aNumber", "anArray" and
                                          "anObject") is provided to illustrate
                                          that the values associated with
                                          different keys can be of different type.
                                        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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                networkResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                      cpInstanceType:
                                        description: >
                                          Type of the CP instance that is
                                          identified by cpInstanceId. Shall be
                                          present if "cpInstanceId" is present,
                                          and shall be absent otherwise. Permitted
                                          values: VNFC_CP: The link port is
                                          connected to a VNFC CP EXT_CP: The link
                                          port is associated to an external CP.
                                        type: string
                                        enum:
                                          - VNFC_CP
                                          - EXT_CP
                                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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                storageResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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 keyvalue pairs is represented as an
                          object. It shall comply with the provisions defined in
                          clause 4 of IETF RFC 8259. In the following example, a
                          list of key-value pairs with four keys ("aString",
                          "aNumber", "anArray" and "anObject") is provided to
                          illustrate that the values associated with different
                          keys can be of different type.
                        type: object
                      extensions:
                        description: >
                          Additional VNF-specific attributes that affect the
                          lifecycle management of this VNF instance. These
                          attributes represent values that are stored
                          persistently in the VnfInstance structure for
                          consumption by the VNFM or the lifecycle management
                          scripts during the execution of VNF lifecycle
                          management operations. All extensions that are allowed
                          for the VNF are declared in the VNFD. The declaration
                          of an extension in the VNFD contains information on
                          whether its presence is optional or required, and
                          optionally can specify an initial value. See note 2
                          and note 4. The VNFM shall reject requests to write
                          extension attributes that are not declared in the VNFD
                          with a "422 Unprocessable entity" error response as
                          defined in clause 6.4 of ETSI GS NFV-SOL 013.
                          Modifying the values of these attributes has no direct
                          effect on the VNF instance; however, the modified
                          attribute values can be considered during subsequent
                          VNF lifecycle management operations, which means that
                          the modified values can indirectly affect the
                          configuration of the VNF instance. These attributes
                          can be initialized with default values from the VNFD.
                          These attributes can be modified with values passed in
                          the request structures of certain LCM operations, such
                          as the InstantiateVnfRequest structure. Further, these
                          attributes can be created, modified or deleted with
                          the PATCH method.

                          NOTE: Upon creation of the VnfInstance structure, the
                          VNFM shall create and initialize all child attributes
                          of "vnfConfigurableProperties", "metadata" and
                          "extensions" that were declared in the VNFD with a
                          defined initial value. The defined initial values can
                          be declared in the VNFD, and/or, in case of
                          "metadata", obtained from the "CreateVnfRequest"
                          structure. Child attributes of
                          "vnfConfigurableProperties", "metadata" and
                          "extensions" that have no defineddeclared initial
                          value shall not be created, in order to be consistent
                          with the semantics of the JSON Merge Patch method (see
                          IETF RFC 7396) that interprets null values as deletion
                          request.
                      _links:
                        description: |
                          Links to resources related to this resource.
                        type: object
                        required:
                          - self
                        properties:
                          self:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          indicators:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          instantiate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          terminate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          scale:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          scaleToLevel:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          changeFlavour:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          heal:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          operate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          changeExtConn:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          createSnapshot:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          revertToSnapshot:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                  vnfcSnapshots:
                    description: >
                      Information about VNFC snapshots constituting this VNF
                      snapshot.
                    type: array
                    items:
                      description: |
                        This type represents a VNFC snapshot.
                      type: object
                      required:
                        - id
                        - vnfcInstanceId
                        - triggeredAt
                        - vnfcResourceId
                      properties:
                        id:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        vnfcInstanceId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        creationStartedAt:
                          description: >
                            Date-time stamp. Representation: String formatted
                            according to IETF RFC 3339.
                          type: string
                          format: date-time
                        creationFinishedAt:
                          description: >
                            Date-time stamp. Representation: String formatted
                            according to IETF RFC 3339.
                          type: string
                          format: date-time
                        vnfcResourceInfoId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        computeSnapshotResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        storageSnapshotResources:
                          description: >
                            Mapping of the storage resources associated to the
                            VNFC with the storage snapshot resources.
                          type: array
                          items:
                            type: object
                            required:
                              - storageResourceId
                            properties:
                              storageResourceId:
                                description: >
                                  An identifier that is unique for the
                                  respective type within a VNF instance, but may
                                  not be globally unique.
                                type: string
                              storageSnapshotResource:
                                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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                type: object
                        userDefinedData:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                  vnfStateSnapshotInfo:
                    description: >
                      This type represents information about VNF-specific state
                      snapshot data.
                    type: object
                    required:
                      - checksum
                      - isEncrypted
                    properties:
                      checksum:
                        description: >
                          Checksum of the VNF state snapshot file. Hash
                          algorithms applicable to VNF snapshot package
                          artifacts are defined in ETSI GS NFV-SOL 010. $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/Checksum"
                      isEncrypted:
                        description: >
                          Reflects whether the VNF state snapshot content is
                          encrypted (true) or not (false). $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/Boolean"
                      metadata:
                        description: >
                          The metadata with additional information such as
                          content type, size, creation date, etc. $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
                  userDefinedData:
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 using an
                          absolute URI.
                        type: object
                        required:
                          - href
                        properties:
                          href:
                            description: |
                              String formatted according to IETF RFC 3986.
                            type: string
                      vnfStateSnapshot:
                        description: >
                          This type represents a link to a resource using an
                          absolute URI.
                        type: object
                        required:
                          - href
                        properties:
                          href:
                            description: |
                              String formatted according to IETF RFC 3986.
                            type: string
      required: true
    VnfSnapshotInfoModificationRequest:
      description: >
        Parameters for the VNF snapshot information modification, as defined in
        clause 5.5.2.24.
      content:
        application/json:
          schema:
            description: >
              This type represents attribute modifications for an "Individual
              VNF snapshot" resource, i.e. modifications 

              to a resource representation based on the "VnfSnapshotInfo" data
              type. The attributes of "VnfSnapshotInfo" 

              that can be modified according to the provisions in clause
              5.5.2.22 are included in the 

              "VnfSnapshotInfoModificationRequest" data type. The
              "VnfSnapshotInfoModificationRequest" data type shall 

              comply with the provisions defined in table 5.5.2.24-1.
            type: object
            properties:
              vnfSnapshotPkgId:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              vnfSnapshot:
                description: >
                  This type represents a VNF snapshot. It shall comply with the
                  provisions defined in table 5.5.2.23-1.
                type: object
                required:
                  - id
                  - vnfInstanceId
                  - triggeredAt
                  - vnfdId
                  - vnfInfo
                  - vnfcSnapshots
                properties:
                  id:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfInstanceId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  creationStartedAt:
                    description: >
                      Date-time stamp. Representation: String formatted
                      according to IETF RFC 3339.
                    type: string
                    format: date-time
                  creationFinishedAt:
                    description: >
                      Date-time stamp. Representation: String formatted
                      according to IETF RFC 3339.
                    type: string
                    format: date-time
                  vnfdId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfInstance:
                    description: |
                      This type represents a VNF instance.
                    type: object
                    required:
                      - id
                      - vnfdId
                      - vnfProvider
                      - vnfProductName
                      - vnfSoftwareVersion
                      - vnfdVersion
                      - 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
                      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 keyvalue pairs is represented as an
                          object. It shall comply with the provisions defined in
                          clause 4 of IETF RFC 8259. In the following example, a
                          list of key-value pairs with four keys ("aString",
                          "aNumber", "anArray" and "anObject") is provided to
                          illustrate that the values associated with different
                          keys can be of different type.
                        type: object
                      vimConnectionInfo:
                        description: >
                          Information about VIM connections to be used for
                          managing the resources for the VNF instance. The keys
                          of the map, each of which identifies information about
                          a particular VIM connection, are managed by the NFVO
                          and referenced from other data structures via the
                          "vimConnectionId" attribute. This attribute shall only
                          be supported and present if VNF-related resource
                          management in direct mode is pplicable. This attribute
                          can be modified with the PATCH method.
                        type: object
                        additionalProperties:
                          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:
                            - vimType
                          properties:
                            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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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:
                            description: >
                              STARTED: The VNF instance is up and running.
                              STOPPED: The VNF instance has been shut down.
                            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. This
                              attribute shall be present if the VNF supports
                              scaling. See clause B.2 for an explanation of VNF
                              scaling.
                            type: array
                            items:
                              required:
                                - aspectId
                                - scaleLevel
                              type: object
                              properties:
                                aspectId:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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
                          maxScaleLevels:
                            description: >
                              Maximum allowed scale levels of the VNF, one entry
                              per aspect. This attribute shall be present if the
                              VNF supports scaling.
                            type: array
                            items:
                              required:
                                - aspectId
                                - scaleLevel
                              type: object
                              properties:
                                aspectId:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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. When trunking is enabled, the list
                              of entries includes both, external CPs
                              corresponding to parent ports of a trunk, and
                              external CPs associated to sub-ports of a trunk.
                            type: array
                            minItems: 1
                            items:
                              description: >
                                This type represents information about an
                                external CP of a VNF. It shall comply with the
                                provisions defined in table 5.5.3.25 1.
                              type: object
                              required:
                                - id
                                - cpdId
                                - cpConfigId
                                - cpProtocolInfo
                              oneOf:
                                - required:
                                    - associatedVnfcCpId
                                - required:
                                    - associatedVnfVirtualLinkId
                              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
                                cpConfigId:
                                  description: >
                                    An identifier that is unique for the
                                    respective type within a VNF instance, but
                                    may not be globally unique.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    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.
                                    type: object
                                    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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - addresses
                                          - required:
                                              - addressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present.  Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          ipAddresses:
                                            description: >
                                              Addresses assigned to the CP instance.
                                              Each entry represents IP addresses
                                              assigned by fixed or dynamic IP address
                                              assignment per subnet. At least one of
                                              "macAddress" or "ipAddresses" shall be
                                              present.
                                            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). Exactly one of "addresses" or
                                                    "addressRange" 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
                                                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 identifier maintained by the VIM or
                                                    other resource provider. It is expected
                                                    to be unique within the VIM instance.
                                                  type: string
                                extLinkPortId:
                                  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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  type: object
                                associatedVnfcCpId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                associatedVnfVirtualLinkId:
                                  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
                                - currentVnfExtCpData
                              properties:
                                id:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                resourceHandle:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                currentVnfExtCpData:
                                  description: >
                                    Allows the API consumer to read the current
                                    CP configuration information for the
                                    connection of external CPs to the external
                                    virtual link. This attribute reflects the
                                    current configuration information that has
                                    resulted from merging into this attribute
                                    the "VnfExtCpData" information which was
                                    passed as part of the "ExtVirtualLinkData"
                                    structure in the input of the most recent
                                    VNF LCM operation such as
                                    "InstantiateVnfRequest",
                                    "ChangeExtVnfConnectivityRequest",
                                    "ChangeVnfFlavourRequest" or
                                    "ChangeCurrentVnfPkgRequest", or has been
                                    provided by the NFVO during the granting
                                    procedure. If applying such change results
                                    in an empty list of "currentVnfExtCpData"
                                    structure instances, the affected instance
                                    of "ExtVirtualLinkInfo" shall be removed
                                    from its parent data structure.
                                  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: >
                                          Map of instance data that need to be
                                          configured on the CP instances created
                                          from the respective CPD. The key of the
                                          map which identifies the individual
                                          VnfExtCpConfig entries is managed by the
                                          API consumer. The entries shall be
                                          applied by the VNFM according to the
                                          rules of JSON Merge Patch (see IETF RFC
                                          7396). Within one VNF instance, all VNFC
                                          instances created from a particular VDU
                                          have the same external connectivity.
                                          Thus, given a particular value of the
                                          “cpdId” attribute, there shall be one
                                          “cpConfig” entry for each VNFC instance
                                          that has been or can be created from a
                                          VDU which includes a CPD identified by
                                          the “cpdId” attribute. If the cpConfig
                                          represents a subport in a trunk, all
                                          “cpConfig” entries in this list shall
                                          have the same segmentationId, which
                                          means they are connected to the same set
                                          of external VLs via the trunk. The map
                                          entry value shall be set to "null" in
                                          order to delete a "VnfExtCpConfig" entry
                                          identified by a particular key value
                                          from the map, i.e. for the disconnection
                                          of an existing external CP instance
                                          addressed by cpInstanceId in the deleted
                                          map entry from a particular external
                                          virtual link, and deletion of that
                                          instance in case it represents a
                                          subport. Deleting the last key from the
                                          map removes the affected instance of the
                                          "VnfExtCpData" structure from its parent
                                          data structure.
                                        type: object
                                        additionalProperties:
                                          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.
                                          anyOf:
                                            - required:
                                                - linkPortId
                                            - required:
                                                - cpProtocolData
                                          type: object
                                          properties:
                                            parentCpConfigId:
                                              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": 1) Void 2) At least
                                                one of the "linkPortId" and
                                                "cpProtocolData" attributes 
                                                   shall be present for an external CP instance representing a subport 
                                                   that is to be created, or an external CP instance that is to be created 
                                                   by creating the corresponding VNFC or VNF instance during the current or 
                                                   a subsequent LCM operation, or for an existing external CP instance 
                                                   that is to be re-configured or added to a particular external virtual link.
                                                3) If the "linkPortId" attribute is
                                                absent, the VNFM shall create a
                                                   link port.
                                                4) 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.
                                                5) 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
                                                    anyOf:
                                                      - required:
                                                          - macAddress
                                                      - required:
                                                          - ipAddresses
                                                    oneOf:
                                                      - required:
                                                          - fixedAddresses
                                                      - required:
                                                          - numDynamicAddresses
                                                      - required:
                                                          - ipAddressRange
                                                    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
                                                      segmentationId:
                                                        description: >
                                                          Identification of the network segment to
                                                          which the Cp instance connects to. If
                                                          the Cp instance represents a subport in
                                                          a trunk, segmentationId shall be
                                                          present. Otherwise it shall not be
                                                          present. Depending on the NFVI
                                                          networking infrastructure, the
                                                          segmentationId may indicate the actual
                                                          network segment value (e.g. vlan Id,
                                                          Vxlan segmentation id, etc.) used in the
                                                          transport header of the packets or it
                                                          may be an identifier used between the
                                                          application and the NFVI networking
                                                          infrastructure to identify the network
                                                          sub-interface of the trunk port in
                                                          question. In the latter case the NFVI
                                                          infrastructure will map this local
                                                          segmentationId to whatever
                                                          segmentationId is actually used by the
                                                          NFVI’s transport technology.
                                                        type: string
                                                      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
                          extManagedVirtualLinkInfo:
                            description: >
                              Information about the externally-managed internal
                              VLs of the VNF instance.

                              NOTE: It is possible to have several
                              ExtManagedVirtualLinkInfo for the same VNF
                              internal VL in case of a multi-site VNF spanning
                              several VIMs. The set of ExtManagedVirtualLinkInfo
                              corresponding to the same VNF internal VL shall
                              indicate so by referencing to the same
                              VnfVirtualLinkDesc and externally-managed
                              multi-site VL instance (refer to clause 5.5.3.3).
                            type: array
                            items:
                              type: object
                              required:
                                - id
                                - vnfVirtualLinkDescId
                                - networkResource
                              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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                networkResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                      cpInstanceType:
                                        description: >
                                          Type of the CP instance that is
                                          identified by cpInstanceId. Shall be
                                          present if "cpInstanceId" is present,
                                          and shall be absent otherwise. Permitted
                                          values: VNFC_CP: The link port is
                                          connected to a VNFC CP EXT_CP: The link
                                          port is associated to an external CP.
                                        type: string
                                        enum:
                                          - VNFC_CP
                                          - EXT_CP
                                extManagedMultisiteVirtualLinkId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                          monitoringParameters:
                            description: |
                              Active monitoring parameters.
                            type: array
                            items:
                              type: object
                              required:
                                - id
                                - performanceMetric
                              properties:
                                id:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                name:
                                  description: >
                                    Human readable name of the monitoring
                                    parameter, as defined in the VNFD.
                                  type: string
                                performanceMetric:
                                  description: >
                                    Performance metric that is monitored. This
                                    attribute shall contain the related
                                    "Measurement Name" value as defined in
                                    clause 7.2 of ETSI GS NFV-IFA 027.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                computeResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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: >
                                    All the CPs of the VNFC instance. Shall be
                                    present when that particular CP of the VNFC
                                    instance is exposed as an external CP of the
                                    VNF instance or is connected to an external
                                    CP of the VNF instance. A VNFC CP is
                                    "connected to" an external CP if the VNFC CP
                                    is connected to an internal VL that exposes
                                    an external CP. A VNFC CP is "exposed as" an
                                    external CP if it is connected directly to
                                    an external VL. 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. May be omitted if the VNFC CP is
                                          exposed as an external CP. The
                                          information can be omitted because it is
                                          already available as part of the
                                          external CP information.
                                        type: array
                                        items:
                                          description: >
                                            This type describes the protocol
                                            layer(s) that a CP uses together with
                                            protocol-related information, like
                                            addresses.
                                          type: object
                                          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
                                              anyOf:
                                                - required:
                                                    - macAddress
                                                - required:
                                                    - ipAddresses
                                              oneOf:
                                                - required:
                                                    - addresses
                                                - required:
                                                    - addressRange
                                              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
                                                segmentationId:
                                                  description: >
                                                    Identification of the network segment to
                                                    which the Cp instance connects to. If
                                                    the Cp instance represents a subport in
                                                    a trunk, segmentationId shall be
                                                    present.  Otherwise it shall not be
                                                    present. Depending on the NFVI
                                                    networking infrastructure, the
                                                    segmentationId may indicate the actual
                                                    network segment value (e.g. vlan Id,
                                                    Vxlan segmentation id, etc.) used in the
                                                    transport header of the packets or it
                                                    may be an identifier used between the
                                                    application and the NFVI networking
                                                    infrastructure to identify the network
                                                    sub-interface of the trunk port in
                                                    question. In the latter case the NFVI
                                                    infrastructure will map this local
                                                    segmentationId to whatever
                                                    segmentationId is actually used by the
                                                    NFVI’s transport technology.
                                                  type: string
                                                ipAddresses:
                                                  description: >
                                                    Addresses assigned to the CP instance.
                                                    Each entry represents IP addresses
                                                    assigned by fixed or dynamic IP address
                                                    assignment per subnet. At least one of
                                                    "macAddress" or "ipAddresses" shall be
                                                    present.
                                                  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). Exactly one of "addresses" or
                                                          "addressRange" 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
                                                      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 identifier maintained by the VIM or
                                                          other resource provider. It is expected
                                                          to be unique within the VIM instance.
                                                        type: string
                                      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 keyvalue pairs is represented as an
                                          object. It shall comply with the
                                          provisions defined in clause 4 of IETF
                                          RFC 8259. In the following example, a
                                          list of key-value pairs with four keys
                                          ("aString", "aNumber", "anArray" and
                                          "anObject") is provided to illustrate
                                          that the values associated with
                                          different keys can be of different type.
                                        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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                networkResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                      cpInstanceType:
                                        description: >
                                          Type of the CP instance that is
                                          identified by cpInstanceId. Shall be
                                          present if "cpInstanceId" is present,
                                          and shall be absent otherwise. Permitted
                                          values: VNFC_CP: The link port is
                                          connected to a VNFC CP EXT_CP: The link
                                          port is associated to an external CP.
                                        type: string
                                        enum:
                                          - VNFC_CP
                                          - EXT_CP
                                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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                storageResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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 keyvalue pairs is represented as an
                          object. It shall comply with the provisions defined in
                          clause 4 of IETF RFC 8259. In the following example, a
                          list of key-value pairs with four keys ("aString",
                          "aNumber", "anArray" and "anObject") is provided to
                          illustrate that the values associated with different
                          keys can be of different type.
                        type: object
                      extensions:
                        description: >
                          Additional VNF-specific attributes that affect the
                          lifecycle management of this VNF instance. These
                          attributes represent values that are stored
                          persistently in the VnfInstance structure for
                          consumption by the VNFM or the lifecycle management
                          scripts during the execution of VNF lifecycle
                          management operations. All extensions that are allowed
                          for the VNF are declared in the VNFD. The declaration
                          of an extension in the VNFD contains information on
                          whether its presence is optional or required, and
                          optionally can specify an initial value. See note 2
                          and note 4. The VNFM shall reject requests to write
                          extension attributes that are not declared in the VNFD
                          with a "422 Unprocessable entity" error response as
                          defined in clause 6.4 of ETSI GS NFV-SOL 013.
                          Modifying the values of these attributes has no direct
                          effect on the VNF instance; however, the modified
                          attribute values can be considered during subsequent
                          VNF lifecycle management operations, which means that
                          the modified values can indirectly affect the
                          configuration of the VNF instance. These attributes
                          can be initialized with default values from the VNFD.
                          These attributes can be modified with values passed in
                          the request structures of certain LCM operations, such
                          as the InstantiateVnfRequest structure. Further, these
                          attributes can be created, modified or deleted with
                          the PATCH method.

                          NOTE: Upon creation of the VnfInstance structure, the
                          VNFM shall create and initialize all child attributes
                          of "vnfConfigurableProperties", "metadata" and
                          "extensions" that were declared in the VNFD with a
                          defined initial value. The defined initial values can
                          be declared in the VNFD, and/or, in case of
                          "metadata", obtained from the "CreateVnfRequest"
                          structure. Child attributes of
                          "vnfConfigurableProperties", "metadata" and
                          "extensions" that have no defineddeclared initial
                          value shall not be created, in order to be consistent
                          with the semantics of the JSON Merge Patch method (see
                          IETF RFC 7396) that interprets null values as deletion
                          request.
                      _links:
                        description: |
                          Links to resources related to this resource.
                        type: object
                        required:
                          - self
                        properties:
                          self:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          indicators:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          instantiate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          terminate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          scale:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          scaleToLevel:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          changeFlavour:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          heal:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          operate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          changeExtConn:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          createSnapshot:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          revertToSnapshot:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                  vnfcSnapshots:
                    description: >
                      Information about VNFC snapshots constituting this VNF
                      snapshot.
                    type: array
                    items:
                      description: |
                        This type represents a VNFC snapshot.
                      type: object
                      required:
                        - id
                        - vnfcInstanceId
                        - triggeredAt
                        - vnfcResourceId
                      properties:
                        id:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        vnfcInstanceId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        creationStartedAt:
                          description: >
                            Date-time stamp. Representation: String formatted
                            according to IETF RFC 3339.
                          type: string
                          format: date-time
                        creationFinishedAt:
                          description: >
                            Date-time stamp. Representation: String formatted
                            according to IETF RFC 3339.
                          type: string
                          format: date-time
                        vnfcResourceInfoId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        computeSnapshotResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        storageSnapshotResources:
                          description: >
                            Mapping of the storage resources associated to the
                            VNFC with the storage snapshot resources.
                          type: array
                          items:
                            type: object
                            required:
                              - storageResourceId
                            properties:
                              storageResourceId:
                                description: >
                                  An identifier that is unique for the
                                  respective type within a VNF instance, but may
                                  not be globally unique.
                                type: string
                              storageSnapshotResource:
                                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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                type: object
                        userDefinedData:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                  vnfStateSnapshotInfo:
                    description: >
                      This type represents information about VNF-specific state
                      snapshot data.
                    type: object
                    required:
                      - checksum
                      - isEncrypted
                    properties:
                      checksum:
                        description: >
                          Checksum of the VNF state snapshot file. Hash
                          algorithms applicable to VNF snapshot package
                          artifacts are defined in ETSI GS NFV-SOL 010. $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/Checksum"
                      isEncrypted:
                        description: >
                          Reflects whether the VNF state snapshot content is
                          encrypted (true) or not (false). $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/Boolean"
                      metadata:
                        description: >
                          The metadata with additional information such as
                          content type, size, creation date, etc. $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
                  userDefinedData:
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 using an
                          absolute URI.
                        type: object
                        required:
                          - href
                        properties:
                          href:
                            description: |
                              String formatted according to IETF RFC 3986.
                            type: string
                      vnfStateSnapshot:
                        description: >
                          This type represents a link to a resource using an
                          absolute URI.
                        type: object
                        required:
                          - href
                        properties:
                          href:
                            description: |
                              String formatted according to IETF RFC 3986.
                            type: string
      required: true
  responses:
    VNFInstances.Post.201:
      description: >
        201 CREATED


        Shall be returned when a new "Individual VNF instance" resource and

        the associated VNF instance identifier washas been created successfully.

        The response body shall contain a representation of the created VNF
        instance,

        as defined in clause 5.5.2.2.

        The HTTP response shall include a "Location" HTTP header that contains
        the resource

        URI of the created VNF instance.
      headers:
        Location:
          description: |
            The resource URI of the created subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            description: |
              This type represents a VNF instance.
            type: object
            required:
              - id
              - vnfdId
              - vnfProvider
              - vnfProductName
              - vnfSoftwareVersion
              - vnfdVersion
              - 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
              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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
              vimConnectionInfo:
                description: >
                  Information about VIM connections to be used for managing the
                  resources for the VNF instance. The keys of the map, each of
                  which identifies information about a particular VIM
                  connection, are managed by the NFVO and referenced from other
                  data structures via the "vimConnectionId" attribute. This
                  attribute shall only be supported and present if VNF-related
                  resource management in direct mode is pplicable. This
                  attribute can be modified with the PATCH method.
                type: object
                additionalProperties:
                  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:
                    - vimType
                  properties:
                    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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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:
                    description: >
                      STARTED: The VNF instance is up and running. STOPPED: The
                      VNF instance has been shut down.
                    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. This attribute shall be present if the
                      VNF supports scaling. See clause B.2 for an explanation of
                      VNF scaling.
                    type: array
                    items:
                      required:
                        - aspectId
                        - scaleLevel
                      type: object
                      properties:
                        aspectId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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
                  maxScaleLevels:
                    description: >
                      Maximum allowed scale levels of the VNF, one entry per
                      aspect. This attribute shall be present if the VNF
                      supports scaling.
                    type: array
                    items:
                      required:
                        - aspectId
                        - scaleLevel
                      type: object
                      properties:
                        aspectId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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. When trunking is enabled, the list of entries
                      includes both, external CPs corresponding to parent ports
                      of a trunk, and external CPs associated to sub-ports of a
                      trunk.
                    type: array
                    minItems: 1
                    items:
                      description: >
                        This type represents information about an external CP of
                        a VNF. It shall comply with the provisions defined in
                        table 5.5.3.25 1.
                      type: object
                      required:
                        - id
                        - cpdId
                        - cpConfigId
                        - cpProtocolInfo
                      oneOf:
                        - required:
                            - associatedVnfcCpId
                        - required:
                            - associatedVnfVirtualLinkId
                      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
                        cpConfigId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being 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.
                            type: object
                            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
                                anyOf:
                                  - required:
                                      - macAddress
                                  - required:
                                      - ipAddresses
                                oneOf:
                                  - required:
                                      - addresses
                                  - required:
                                      - addressRange
                                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
                                  segmentationId:
                                    description: >
                                      Identification of the network segment to
                                      which the Cp instance connects to. If the
                                      Cp instance represents a subport in a
                                      trunk, segmentationId shall be present. 
                                      Otherwise it shall not be present.
                                      Depending on the NFVI networking
                                      infrastructure, the segmentationId may
                                      indicate the actual network segment value
                                      (e.g. vlan Id, Vxlan segmentation id,
                                      etc.) used in the transport header of the
                                      packets or it may be an identifier used
                                      between the application and the NFVI
                                      networking infrastructure to identify the
                                      network sub-interface of the trunk port in
                                      question. In the latter case the NFVI
                                      infrastructure will map this local
                                      segmentationId to whatever segmentationId
                                      is actually used by the NFVI’s transport
                                      technology.
                                    type: string
                                  ipAddresses:
                                    description: >
                                      Addresses assigned to the CP instance.
                                      Each entry represents IP addresses
                                      assigned by fixed or dynamic IP address
                                      assignment per subnet. At least one of
                                      "macAddress" or "ipAddresses" shall be
                                      present.
                                    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). Exactly one of "addresses" or
                                            "addressRange" 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
                                        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 identifier maintained by the VIM or
                                            other resource provider. It is expected
                                            to be unique within the VIM instance.
                                          type: string
                        extLinkPortId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                        associatedVnfcCpId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        associatedVnfVirtualLinkId:
                          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
                        - currentVnfExtCpData
                      properties:
                        id:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        resourceHandle:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              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:
                                  - 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: >
                                      The value set of the
                                      "vimLevelResourceType" attribute is within
                                      the scope of the VIM or the resource
                                      provider and can be used as information
                                      that complements the ResourceHandle. This
                                      value set is different from the value set
                                      of the "type" attribute in the
                                      ResourceDefinition (refer to clause
                                      9.5.3.2 in SOL003).
                                    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
                        currentVnfExtCpData:
                          description: >
                            Allows the API consumer to read the current CP
                            configuration information for the connection of
                            external CPs to the external virtual link. This
                            attribute reflects the current configuration
                            information that has resulted from merging into this
                            attribute the "VnfExtCpData" information which was
                            passed as part of the "ExtVirtualLinkData" structure
                            in the input of the most recent VNF LCM operation
                            such as "InstantiateVnfRequest",
                            "ChangeExtVnfConnectivityRequest",
                            "ChangeVnfFlavourRequest" or
                            "ChangeCurrentVnfPkgRequest", or has been provided
                            by the NFVO during the granting procedure. If
                            applying such change results in an empty list of
                            "currentVnfExtCpData" structure instances, the
                            affected instance of "ExtVirtualLinkInfo" shall be
                            removed from its parent data structure.
                          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: >
                                  Map of instance data that need to be
                                  configured on the CP instances created from
                                  the respective CPD. The key of the map which
                                  identifies the individual VnfExtCpConfig
                                  entries is managed by the API consumer. The
                                  entries shall be applied by the VNFM according
                                  to the rules of JSON Merge Patch (see IETF RFC
                                  7396). Within one VNF instance, all VNFC
                                  instances created from a particular VDU have
                                  the same external connectivity. Thus, given a
                                  particular value of the “cpdId” attribute,
                                  there shall be one “cpConfig” entry for each
                                  VNFC instance that has been or can be created
                                  from a VDU which includes a CPD identified by
                                  the “cpdId” attribute. If the cpConfig
                                  represents a subport in a trunk, all
                                  “cpConfig” entries in this list shall have the
                                  same segmentationId, which means they are
                                  connected to the same set of external VLs via
                                  the trunk. The map entry value shall be set to
                                  "null" in order to delete a "VnfExtCpConfig"
                                  entry identified by a particular key value
                                  from the map, i.e. for the disconnection of an
                                  existing external CP instance addressed by
                                  cpInstanceId in the deleted map entry from a
                                  particular external virtual link, and deletion
                                  of that instance in case it represents a
                                  subport. Deleting the last key from the map
                                  removes the affected instance of the
                                  "VnfExtCpData" structure from its parent data
                                  structure.
                                type: object
                                additionalProperties:
                                  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.
                                  anyOf:
                                    - required:
                                        - linkPortId
                                    - required:
                                        - cpProtocolData
                                  type: object
                                  properties:
                                    parentCpConfigId:
                                      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": 1) Void 2) At least
                                        one of the "linkPortId" and
                                        "cpProtocolData" attributes 
                                           shall be present for an external CP instance representing a subport 
                                           that is to be created, or an external CP instance that is to be created 
                                           by creating the corresponding VNFC or VNF instance during the current or 
                                           a subsequent LCM operation, or for an existing external CP instance 
                                           that is to be re-configured or added to a particular external virtual link.
                                        3) If the "linkPortId" attribute is
                                        absent, the VNFM shall create a
                                           link port.
                                        4) 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.
                                        5) 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
                                            anyOf:
                                              - required:
                                                  - macAddress
                                              - required:
                                                  - ipAddresses
                                            oneOf:
                                              - required:
                                                  - fixedAddresses
                                              - required:
                                                  - numDynamicAddresses
                                              - required:
                                                  - ipAddressRange
                                            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
                                              segmentationId:
                                                description: >
                                                  Identification of the network segment to
                                                  which the Cp instance connects to. If
                                                  the Cp instance represents a subport in
                                                  a trunk, segmentationId shall be
                                                  present. Otherwise it shall not be
                                                  present. Depending on the NFVI
                                                  networking infrastructure, the
                                                  segmentationId may indicate the actual
                                                  network segment value (e.g. vlan Id,
                                                  Vxlan segmentation id, etc.) used in the
                                                  transport header of the packets or it
                                                  may be an identifier used between the
                                                  application and the NFVI networking
                                                  infrastructure to identify the network
                                                  sub-interface of the trunk port in
                                                  question. In the latter case the NFVI
                                                  infrastructure will map this local
                                                  segmentationId to whatever
                                                  segmentationId is actually used by the
                                                  NFVI’s transport technology.
                                                type: string
                                              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
                  extManagedVirtualLinkInfo:
                    description: >
                      Information about the externally-managed internal VLs of
                      the VNF instance.

                      NOTE: It is possible to have several
                      ExtManagedVirtualLinkInfo for the same VNF internal VL in
                      case of a multi-site VNF spanning several VIMs. The set of
                      ExtManagedVirtualLinkInfo corresponding to the same VNF
                      internal VL shall indicate so by referencing to the same
                      VnfVirtualLinkDesc and externally-managed multi-site VL
                      instance (refer to clause 5.5.3.3).
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - vnfVirtualLinkDescId
                        - networkResource
                      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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        networkResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              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:
                                  - 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: >
                                      The value set of the
                                      "vimLevelResourceType" attribute is within
                                      the scope of the VIM or the resource
                                      provider and can be used as information
                                      that complements the ResourceHandle. This
                                      value set is different from the value set
                                      of the "type" attribute in the
                                      ResourceDefinition (refer to clause
                                      9.5.3.2 in SOL003).
                                    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
                              cpInstanceType:
                                description: >
                                  Type of the CP instance that is identified by
                                  cpInstanceId. Shall be present if
                                  "cpInstanceId" is present, and shall be absent
                                  otherwise. Permitted values: VNFC_CP: The link
                                  port is connected to a VNFC CP EXT_CP: The
                                  link port is associated to an external CP.
                                type: string
                                enum:
                                  - VNFC_CP
                                  - EXT_CP
                        extManagedMultisiteVirtualLinkId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                  monitoringParameters:
                    description: |
                      Active monitoring parameters.
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - performanceMetric
                      properties:
                        id:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        name:
                          description: >
                            Human readable name of the monitoring parameter, as
                            defined in the VNFD.
                          type: string
                        performanceMetric:
                          description: >
                            Performance metric that is monitored. This attribute
                            shall contain the related "Measurement Name" value
                            as defined in clause 7.2 of ETSI GS NFV-IFA 027.
                          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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        computeResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        zoneId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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: >
                            All the CPs of the VNFC instance. Shall be present
                            when that particular CP of the VNFC instance is
                            exposed as an external CP of the VNF instance or is
                            connected to an external CP of the VNF instance. A
                            VNFC CP is "connected to" an external CP if the VNFC
                            CP is connected to an internal VL that exposes an
                            external CP. A VNFC CP is "exposed as" an external
                            CP if it is connected directly to an external VL.
                            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. May
                                  be omitted if the VNFC CP is exposed as an
                                  external CP. The information can be omitted
                                  because it is already available as part of the
                                  external CP information.
                                type: array
                                items:
                                  description: >
                                    This type describes the protocol layer(s)
                                    that a CP uses together with
                                    protocol-related information, like
                                    addresses.
                                  type: object
                                  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
                                      anyOf:
                                        - required:
                                            - macAddress
                                        - required:
                                            - ipAddresses
                                      oneOf:
                                        - required:
                                            - addresses
                                        - required:
                                            - addressRange
                                      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
                                        segmentationId:
                                          description: >
                                            Identification of the network segment to
                                            which the Cp instance connects to. If
                                            the Cp instance represents a subport in
                                            a trunk, segmentationId shall be
                                            present.  Otherwise it shall not be
                                            present. Depending on the NFVI
                                            networking infrastructure, the
                                            segmentationId may indicate the actual
                                            network segment value (e.g. vlan Id,
                                            Vxlan segmentation id, etc.) used in the
                                            transport header of the packets or it
                                            may be an identifier used between the
                                            application and the NFVI networking
                                            infrastructure to identify the network
                                            sub-interface of the trunk port in
                                            question. In the latter case the NFVI
                                            infrastructure will map this local
                                            segmentationId to whatever
                                            segmentationId is actually used by the
                                            NFVI’s transport technology.
                                          type: string
                                        ipAddresses:
                                          description: >
                                            Addresses assigned to the CP instance.
                                            Each entry represents IP addresses
                                            assigned by fixed or dynamic IP address
                                            assignment per subnet. At least one of
                                            "macAddress" or "ipAddresses" shall be
                                            present.
                                          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). Exactly one of "addresses" or
                                                  "addressRange" 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
                                              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 identifier maintained by the VIM or
                                                  other resource provider. It is expected
                                                  to be unique within the VIM instance.
                                                type: string
                              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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        networkResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        zoneId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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:
                                  - 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: >
                                      The value set of the
                                      "vimLevelResourceType" attribute is within
                                      the scope of the VIM or the resource
                                      provider and can be used as information
                                      that complements the ResourceHandle. This
                                      value set is different from the value set
                                      of the "type" attribute in the
                                      ResourceDefinition (refer to clause
                                      9.5.3.2 in SOL003).
                                    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
                              cpInstanceType:
                                description: >
                                  Type of the CP instance that is identified by
                                  cpInstanceId. Shall be present if
                                  "cpInstanceId" is present, and shall be absent
                                  otherwise. Permitted values: VNFC_CP: The link
                                  port is connected to a VNFC CP EXT_CP: The
                                  link port is associated to an external CP.
                                type: string
                                enum:
                                  - VNFC_CP
                                  - EXT_CP
                        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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        storageResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        zoneId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
              extensions:
                description: >
                  Additional VNF-specific attributes that affect the lifecycle
                  management of this VNF instance. These attributes represent
                  values that are stored persistently in the VnfInstance
                  structure for consumption by the VNFM or the lifecycle
                  management scripts during the execution of VNF lifecycle
                  management operations. All extensions that are allowed for the
                  VNF are declared in the VNFD. The declaration of an extension
                  in the VNFD contains information on whether its presence is
                  optional or required, and optionally can specify an initial
                  value. See note 2 and note 4. The VNFM shall reject requests
                  to write extension attributes that are not declared in the
                  VNFD with a "422 Unprocessable entity" error response as
                  defined in clause 6.4 of ETSI GS NFV-SOL 013. Modifying the
                  values of these attributes has no direct effect on the VNF
                  instance; however, the modified attribute values can be
                  considered during subsequent VNF lifecycle management
                  operations, which means that the modified values can
                  indirectly affect the configuration of the VNF instance. These
                  attributes can be initialized with default values from the
                  VNFD. These attributes can be modified with values passed in
                  the request structures of certain LCM operations, such as the
                  InstantiateVnfRequest structure. Further, these attributes can
                  be created, modified or deleted with the PATCH method.

                  NOTE: Upon creation of the VnfInstance structure, the VNFM
                  shall create and initialize all child attributes of
                  "vnfConfigurableProperties", "metadata" and "extensions" that
                  were declared in the VNFD with a defined initial value. The
                  defined initial values can be declared in the VNFD, and/or, in
                  case of "metadata", obtained from the "CreateVnfRequest"
                  structure. Child attributes of "vnfConfigurableProperties",
                  "metadata" and "extensions" that have no defineddeclared
                  initial value shall not be created, in order to be consistent
                  with the semantics of the JSON Merge Patch method (see IETF
                  RFC 7396) that interprets null values as deletion request.
              _links:
                description: |
                  Links to resources related to this resource.
                type: object
                required:
                  - self
                properties:
                  self:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  indicators:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  instantiate:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  terminate:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  scale:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  scaleToLevel:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  changeFlavour:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  heal:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  operate:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  changeExtConn:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  createSnapshot:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  revertToSnapshot:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
    VNFInstances.Get.200:
      description: >
        200 OK


        Shall be returned when information about zero or more VNF instances has
        been queried successfully.

        The response body shall contain in an array the representations of zero
        or more VNF instances,

        as defined in clause 5.5.2.2.

        If the "filter" URI parameter or one of the "all_fields", "fields" (if
        supported), "exclude_fields"

        (if supported) or "exclude_default" URI parameters was supplied in the
        request, the data in the response

        body shall have been transformed according to the rules specified in
        clauses 5.2.2 and 5.3.2 of

        ETSI GS NFV-SOL 013, respectively.

        If the VNFM supports alternative 2 (paging) according to clause
        5.4.7.2.1 of ETSI GS NFV-SOL 013

        for this resource, inclusion of the Link HTTP header in this response
        shall follow the provisions

        in clause 4.7.2.3.5.4.2.3 of ETSI GS NFV-SOL 013.
      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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
        Link:
          description: >
            Reference to other resources. Used for paging in the present
            document, see clause 4.7.2.1.
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            type: array
            items:
              description: |
                This type represents a VNF instance.
              type: object
              required:
                - id
                - vnfdId
                - vnfProvider
                - vnfProductName
                - vnfSoftwareVersion
                - vnfdVersion
                - 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
                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
                    keyvalue pairs is represented as an object. It shall comply
                    with the provisions defined in clause 4 of IETF RFC 8259. In
                    the following example, a list of key-value pairs with four
                    keys ("aString", "aNumber", "anArray" and "anObject") is
                    provided to illustrate that the values associated with
                    different keys can be of different type.
                  type: object
                vimConnectionInfo:
                  description: >
                    Information about VIM connections to be used for managing
                    the resources for the VNF instance. The keys of the map,
                    each of which identifies information about a particular VIM
                    connection, are managed by the NFVO and referenced from
                    other data structures via the "vimConnectionId" attribute.
                    This attribute shall only be supported and present if
                    VNF-related resource management in direct mode is pplicable.
                    This attribute can be modified with the PATCH method.
                  type: object
                  additionalProperties:
                    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:
                      - vimType
                    properties:
                      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 keyvalue pairs is represented as an
                          object. It shall comply with the provisions defined in
                          clause 4 of IETF RFC 8259. In the following example, a
                          list of key-value pairs with four keys ("aString",
                          "aNumber", "anArray" and "anObject") is provided to
                          illustrate that the values associated with different
                          keys can be of different type.
                        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 keyvalue pairs is represented as an
                          object. It shall comply with the provisions defined in
                          clause 4 of IETF RFC 8259. In the following example, a
                          list of key-value pairs with four keys ("aString",
                          "aNumber", "anArray" and "anObject") is provided to
                          illustrate that the values associated with different
                          keys can be of different type.
                        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 keyvalue pairs is represented as an
                          object. It shall comply with the provisions defined in
                          clause 4 of IETF RFC 8259. In the following example, a
                          list of key-value pairs with four keys ("aString",
                          "aNumber", "anArray" and "anObject") is provided to
                          illustrate that the values associated with different
                          keys can be of different type.
                        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:
                      description: >
                        STARTED: The VNF instance is up and running. STOPPED:
                        The VNF instance has been shut down.
                      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. This attribute shall
                        be present if the VNF supports scaling. See clause B.2
                        for an explanation of VNF scaling.
                      type: array
                      items:
                        required:
                          - aspectId
                          - scaleLevel
                        type: object
                        properties:
                          aspectId:
                            description: >
                              An identifier that is unique within a VNF
                              descriptor.
                            type: string
                          vnfdId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            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
                    maxScaleLevels:
                      description: >
                        Maximum allowed scale levels of the VNF, one entry per
                        aspect. This attribute shall be present if the VNF
                        supports scaling.
                      type: array
                      items:
                        required:
                          - aspectId
                          - scaleLevel
                        type: object
                        properties:
                          aspectId:
                            description: >
                              An identifier that is unique within a VNF
                              descriptor.
                            type: string
                          vnfdId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            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. When trunking is enabled, the list of entries
                        includes both, external CPs corresponding to parent
                        ports of a trunk, and external CPs associated to
                        sub-ports of a trunk.
                      type: array
                      minItems: 1
                      items:
                        description: >
                          This type represents information about an external CP
                          of a VNF. It shall comply with the provisions defined
                          in table 5.5.3.25 1.
                        type: object
                        required:
                          - id
                          - cpdId
                          - cpConfigId
                          - cpProtocolInfo
                        oneOf:
                          - required:
                              - associatedVnfcCpId
                          - required:
                              - associatedVnfVirtualLinkId
                        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
                          cpConfigId:
                            description: >
                              An identifier that is unique for the respective
                              type within a VNF instance, but may not be
                              globally unique.
                            type: string
                          vnfdId:
                            description: >
                              An identifier with the intention of being 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.
                              type: object
                              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
                                  anyOf:
                                    - required:
                                        - macAddress
                                    - required:
                                        - ipAddresses
                                  oneOf:
                                    - required:
                                        - addresses
                                    - required:
                                        - addressRange
                                  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
                                    segmentationId:
                                      description: >
                                        Identification of the network segment to
                                        which the Cp instance connects to. If
                                        the Cp instance represents a subport in
                                        a trunk, segmentationId shall be
                                        present.  Otherwise it shall not be
                                        present. Depending on the NFVI
                                        networking infrastructure, the
                                        segmentationId may indicate the actual
                                        network segment value (e.g. vlan Id,
                                        Vxlan segmentation id, etc.) used in the
                                        transport header of the packets or it
                                        may be an identifier used between the
                                        application and the NFVI networking
                                        infrastructure to identify the network
                                        sub-interface of the trunk port in
                                        question. In the latter case the NFVI
                                        infrastructure will map this local
                                        segmentationId to whatever
                                        segmentationId is actually used by the
                                        NFVI’s transport technology.
                                      type: string
                                    ipAddresses:
                                      description: >
                                        Addresses assigned to the CP instance.
                                        Each entry represents IP addresses
                                        assigned by fixed or dynamic IP address
                                        assignment per subnet. At least one of
                                        "macAddress" or "ipAddresses" shall be
                                        present.
                                      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). Exactly one of "addresses" or
                                              "addressRange" 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
                                          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 identifier maintained by the VIM or
                                              other resource provider. It is expected
                                              to be unique within the VIM instance.
                                            type: string
                          extLinkPortId:
                            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 keyvalue pairs is
                              represented as an object. It shall comply with the
                              provisions defined in clause 4 of IETF RFC 8259.
                              In the following example, a list of key-value
                              pairs with four keys ("aString", "aNumber",
                              "anArray" and "anObject") is provided to
                              illustrate that the values associated with
                              different keys can be of different type.
                            type: object
                          associatedVnfcCpId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                          associatedVnfVirtualLinkId:
                            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
                          - currentVnfExtCpData
                        properties:
                          id:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                          resourceHandle:
                            required:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                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:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      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
                          currentVnfExtCpData:
                            description: >
                              Allows the API consumer to read the current CP
                              configuration information for the connection of
                              external CPs to the external virtual link. This
                              attribute reflects the current configuration
                              information that has resulted from merging into
                              this attribute the "VnfExtCpData" information
                              which was passed as part of the
                              "ExtVirtualLinkData" structure in the input of the
                              most recent VNF LCM operation such as
                              "InstantiateVnfRequest",
                              "ChangeExtVnfConnectivityRequest",
                              "ChangeVnfFlavourRequest" or
                              "ChangeCurrentVnfPkgRequest", or has been provided
                              by the NFVO during the granting procedure. If
                              applying such change results in an empty list of
                              "currentVnfExtCpData" structure instances, the
                              affected instance of "ExtVirtualLinkInfo" shall be
                              removed from its parent data structure.
                            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: >
                                    Map of instance data that need to be
                                    configured on the CP instances created from
                                    the respective CPD. The key of the map which
                                    identifies the individual VnfExtCpConfig
                                    entries is managed by the API consumer. The
                                    entries shall be applied by the VNFM
                                    according to the rules of JSON Merge Patch
                                    (see IETF RFC 7396). Within one VNF
                                    instance, all VNFC instances created from a
                                    particular VDU have the same external
                                    connectivity. Thus, given a particular value
                                    of the “cpdId” attribute, there shall be one
                                    “cpConfig” entry for each VNFC instance that
                                    has been or can be created from a VDU which
                                    includes a CPD identified by the “cpdId”
                                    attribute. If the cpConfig represents a
                                    subport in a trunk, all “cpConfig” entries
                                    in this list shall have the same
                                    segmentationId, which means they are
                                    connected to the same set of external VLs
                                    via the trunk. The map entry value shall be
                                    set to "null" in order to delete a
                                    "VnfExtCpConfig" entry identified by a
                                    particular key value from the map, i.e. for
                                    the disconnection of an existing external CP
                                    instance addressed by cpInstanceId in the
                                    deleted map entry from a particular external
                                    virtual link, and deletion of that instance
                                    in case it represents a subport. Deleting
                                    the last key from the map removes the
                                    affected instance of the "VnfExtCpData"
                                    structure from its parent data structure.
                                  type: object
                                  additionalProperties:
                                    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.
                                    anyOf:
                                      - required:
                                          - linkPortId
                                      - required:
                                          - cpProtocolData
                                    type: object
                                    properties:
                                      parentCpConfigId:
                                        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": 1) Void 2) At least
                                          one of the "linkPortId" and
                                          "cpProtocolData" attributes 
                                             shall be present for an external CP instance representing a subport 
                                             that is to be created, or an external CP instance that is to be created 
                                             by creating the corresponding VNFC or VNF instance during the current or 
                                             a subsequent LCM operation, or for an existing external CP instance 
                                             that is to be re-configured or added to a particular external virtual link.
                                          3) If the "linkPortId" attribute is
                                          absent, the VNFM shall create a
                                             link port.
                                          4) 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.
                                          5) 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
                                              anyOf:
                                                - required:
                                                    - macAddress
                                                - required:
                                                    - ipAddresses
                                              oneOf:
                                                - required:
                                                    - fixedAddresses
                                                - required:
                                                    - numDynamicAddresses
                                                - required:
                                                    - ipAddressRange
                                              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
                                                segmentationId:
                                                  description: >
                                                    Identification of the network segment to
                                                    which the Cp instance connects to. If
                                                    the Cp instance represents a subport in
                                                    a trunk, segmentationId shall be
                                                    present. Otherwise it shall not be
                                                    present. Depending on the NFVI
                                                    networking infrastructure, the
                                                    segmentationId may indicate the actual
                                                    network segment value (e.g. vlan Id,
                                                    Vxlan segmentation id, etc.) used in the
                                                    transport header of the packets or it
                                                    may be an identifier used between the
                                                    application and the NFVI networking
                                                    infrastructure to identify the network
                                                    sub-interface of the trunk port in
                                                    question. In the latter case the NFVI
                                                    infrastructure will map this local
                                                    segmentationId to whatever
                                                    segmentationId is actually used by the
                                                    NFVI’s transport technology.
                                                  type: string
                                                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
                    extManagedVirtualLinkInfo:
                      description: >
                        Information about the externally-managed internal VLs of
                        the VNF instance.

                        NOTE: It is possible to have several
                        ExtManagedVirtualLinkInfo for the same VNF internal VL
                        in case of a multi-site VNF spanning several VIMs. The
                        set of ExtManagedVirtualLinkInfo corresponding to the
                        same VNF internal VL shall indicate so by referencing to
                        the same VnfVirtualLinkDesc and externally-managed
                        multi-site VL instance (refer to clause 5.5.3.3).
                      type: array
                      items:
                        type: object
                        required:
                          - id
                          - vnfVirtualLinkDescId
                          - networkResource
                        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
                          vnfdId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                          networkResource:
                            required:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                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:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      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
                                cpInstanceType:
                                  description: >
                                    Type of the CP instance that is identified
                                    by cpInstanceId. Shall be present if
                                    "cpInstanceId" is present, and shall be
                                    absent otherwise. Permitted values: VNFC_CP:
                                    The link port is connected to a VNFC CP
                                    EXT_CP: The link port is associated to an
                                    external CP.
                                  type: string
                                  enum:
                                    - VNFC_CP
                                    - EXT_CP
                          extManagedMultisiteVirtualLinkId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                    monitoringParameters:
                      description: |
                        Active monitoring parameters.
                      type: array
                      items:
                        type: object
                        required:
                          - id
                          - performanceMetric
                        properties:
                          id:
                            description: >
                              An identifier that is unique within a VNF
                              descriptor.
                            type: string
                          vnfdId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                          name:
                            description: >
                              Human readable name of the monitoring parameter,
                              as defined in the VNFD.
                            type: string
                          performanceMetric:
                            description: >
                              Performance metric that is monitored. This
                              attribute shall contain the related "Measurement
                              Name" value as defined in clause 7.2 of ETSI GS
                              NFV-IFA 027.
                            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
                          vnfdId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                          computeResource:
                            required:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                type: string
                          zoneId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            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: >
                              All the CPs of the VNFC instance. Shall be present
                              when that particular CP of the VNFC instance is
                              exposed as an external CP of the VNF instance or
                              is connected to an external CP of the VNF
                              instance. A VNFC CP is "connected to" an external
                              CP if the VNFC CP is connected to an internal VL
                              that exposes an external CP. A VNFC CP is "exposed
                              as" an external CP if it is connected directly to
                              an external VL. 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.
                                    May be omitted if the VNFC CP is exposed as
                                    an external CP. The information can be
                                    omitted because it is already available as
                                    part of the external CP information.
                                  type: array
                                  items:
                                    description: >
                                      This type describes the protocol layer(s)
                                      that a CP uses together with
                                      protocol-related information, like
                                      addresses.
                                    type: object
                                    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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - addresses
                                          - required:
                                              - addressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present.  Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          ipAddresses:
                                            description: >
                                              Addresses assigned to the CP instance.
                                              Each entry represents IP addresses
                                              assigned by fixed or dynamic IP address
                                              assignment per subnet. At least one of
                                              "macAddress" or "ipAddresses" shall be
                                              present.
                                            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). Exactly one of "addresses" or
                                                    "addressRange" 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
                                                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 identifier maintained by the VIM or
                                                    other resource provider. It is expected
                                                    to be unique within the VIM instance.
                                                  type: string
                                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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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 keyvalue pairs is
                              represented as an object. It shall comply with the
                              provisions defined in clause 4 of IETF RFC 8259.
                              In the following example, a list of key-value
                              pairs with four keys ("aString", "aNumber",
                              "anArray" and "anObject") is provided to
                              illustrate that the values associated with
                              different keys can be of different type.
                            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
                          vnfdId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                          networkResource:
                            required:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                type: string
                          zoneId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            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:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      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
                                cpInstanceType:
                                  description: >
                                    Type of the CP instance that is identified
                                    by cpInstanceId. Shall be present if
                                    "cpInstanceId" is present, and shall be
                                    absent otherwise. Permitted values: VNFC_CP:
                                    The link port is connected to a VNFC CP
                                    EXT_CP: The link port is associated to an
                                    external CP.
                                  type: string
                                  enum:
                                    - VNFC_CP
                                    - EXT_CP
                          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 keyvalue pairs is
                              represented as an object. It shall comply with the
                              provisions defined in clause 4 of IETF RFC 8259.
                              In the following example, a list of key-value
                              pairs with four keys ("aString", "aNumber",
                              "anArray" and "anObject") is provided to
                              illustrate that the values associated with
                              different keys can be of different type.
                            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
                          vnfdId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                          storageResource:
                            required:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                type: string
                          zoneId:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            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 keyvalue pairs is
                              represented as an object. It shall comply with the
                              provisions defined in clause 4 of IETF RFC 8259.
                              In the following example, a list of key-value
                              pairs with four keys ("aString", "aNumber",
                              "anArray" and "anObject") is provided to
                              illustrate that the values associated with
                              different keys can be of different type.
                            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
                    keyvalue pairs is represented as an object. It shall comply
                    with the provisions defined in clause 4 of IETF RFC 8259. In
                    the following example, a list of key-value pairs with four
                    keys ("aString", "aNumber", "anArray" and "anObject") is
                    provided to illustrate that the values associated with
                    different keys can be of different type.
                  type: object
                extensions:
                  description: >
                    Additional VNF-specific attributes that affect the lifecycle
                    management of this VNF instance. These attributes represent
                    values that are stored persistently in the VnfInstance
                    structure for consumption by the VNFM or the lifecycle
                    management scripts during the execution of VNF lifecycle
                    management operations. All extensions that are allowed for
                    the VNF are declared in the VNFD. The declaration of an
                    extension in the VNFD contains information on whether its
                    presence is optional or required, and optionally can specify
                    an initial value. See note 2 and note 4. The VNFM shall
                    reject requests to write extension attributes that are not
                    declared in the VNFD with a "422 Unprocessable entity" error
                    response as defined in clause 6.4 of ETSI GS NFV-SOL 013.
                    Modifying the values of these attributes has no direct
                    effect on the VNF instance; however, the modified attribute
                    values can be considered during subsequent VNF lifecycle
                    management operations, which means that the modified values
                    can indirectly affect the configuration of the VNF instance.
                    These attributes can be initialized with default values from
                    the VNFD. These attributes can be modified with values
                    passed in the request structures of certain LCM operations,
                    such as the InstantiateVnfRequest structure. Further, these
                    attributes can be created, modified or deleted with the
                    PATCH method.

                    NOTE: Upon creation of the VnfInstance structure, the VNFM
                    shall create and initialize all child attributes of
                    "vnfConfigurableProperties", "metadata" and "extensions"
                    that were declared in the VNFD with a defined initial value.
                    The defined initial values can be declared in the VNFD,
                    and/or, in case of "metadata", obtained from the
                    "CreateVnfRequest" structure. Child attributes of
                    "vnfConfigurableProperties", "metadata" and "extensions"
                    that have no defineddeclared initial value shall not be
                    created, in order to be consistent with the semantics of the
                    JSON Merge Patch method (see IETF RFC 7396) that interprets
                    null values as deletion request.
                _links:
                  description: |
                    Links to resources related to this resource.
                  type: object
                  required:
                    - self
                  properties:
                    self:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    indicators:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    instantiate:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    terminate:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    scale:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    scaleToLevel:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    changeFlavour:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    heal:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    operate:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    changeExtConn:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    createSnapshot:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    revertToSnapshot:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
    IndividualVnfInstance.Get.200:
      description: >
        200 OK


        Shall be returned when information about an individual VNF instance has
        been read successfully.

        The response body shall contain a representation of the VNF instance, as
        defined in clause 5.5.2.2.
      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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            description: |
              This type represents a VNF instance.
            type: object
            required:
              - id
              - vnfdId
              - vnfProvider
              - vnfProductName
              - vnfSoftwareVersion
              - vnfdVersion
              - 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
              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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
              vimConnectionInfo:
                description: >
                  Information about VIM connections to be used for managing the
                  resources for the VNF instance. The keys of the map, each of
                  which identifies information about a particular VIM
                  connection, are managed by the NFVO and referenced from other
                  data structures via the "vimConnectionId" attribute. This
                  attribute shall only be supported and present if VNF-related
                  resource management in direct mode is pplicable. This
                  attribute can be modified with the PATCH method.
                type: object
                additionalProperties:
                  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:
                    - vimType
                  properties:
                    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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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:
                    description: >
                      STARTED: The VNF instance is up and running. STOPPED: The
                      VNF instance has been shut down.
                    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. This attribute shall be present if the
                      VNF supports scaling. See clause B.2 for an explanation of
                      VNF scaling.
                    type: array
                    items:
                      required:
                        - aspectId
                        - scaleLevel
                      type: object
                      properties:
                        aspectId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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
                  maxScaleLevels:
                    description: >
                      Maximum allowed scale levels of the VNF, one entry per
                      aspect. This attribute shall be present if the VNF
                      supports scaling.
                    type: array
                    items:
                      required:
                        - aspectId
                        - scaleLevel
                      type: object
                      properties:
                        aspectId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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. When trunking is enabled, the list of entries
                      includes both, external CPs corresponding to parent ports
                      of a trunk, and external CPs associated to sub-ports of a
                      trunk.
                    type: array
                    minItems: 1
                    items:
                      description: >
                        This type represents information about an external CP of
                        a VNF. It shall comply with the provisions defined in
                        table 5.5.3.25 1.
                      type: object
                      required:
                        - id
                        - cpdId
                        - cpConfigId
                        - cpProtocolInfo
                      oneOf:
                        - required:
                            - associatedVnfcCpId
                        - required:
                            - associatedVnfVirtualLinkId
                      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
                        cpConfigId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being 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.
                            type: object
                            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
                                anyOf:
                                  - required:
                                      - macAddress
                                  - required:
                                      - ipAddresses
                                oneOf:
                                  - required:
                                      - addresses
                                  - required:
                                      - addressRange
                                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
                                  segmentationId:
                                    description: >
                                      Identification of the network segment to
                                      which the Cp instance connects to. If the
                                      Cp instance represents a subport in a
                                      trunk, segmentationId shall be present. 
                                      Otherwise it shall not be present.
                                      Depending on the NFVI networking
                                      infrastructure, the segmentationId may
                                      indicate the actual network segment value
                                      (e.g. vlan Id, Vxlan segmentation id,
                                      etc.) used in the transport header of the
                                      packets or it may be an identifier used
                                      between the application and the NFVI
                                      networking infrastructure to identify the
                                      network sub-interface of the trunk port in
                                      question. In the latter case the NFVI
                                      infrastructure will map this local
                                      segmentationId to whatever segmentationId
                                      is actually used by the NFVI’s transport
                                      technology.
                                    type: string
                                  ipAddresses:
                                    description: >
                                      Addresses assigned to the CP instance.
                                      Each entry represents IP addresses
                                      assigned by fixed or dynamic IP address
                                      assignment per subnet. At least one of
                                      "macAddress" or "ipAddresses" shall be
                                      present.
                                    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). Exactly one of "addresses" or
                                            "addressRange" 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
                                        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 identifier maintained by the VIM or
                                            other resource provider. It is expected
                                            to be unique within the VIM instance.
                                          type: string
                        extLinkPortId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                        associatedVnfcCpId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        associatedVnfVirtualLinkId:
                          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
                        - currentVnfExtCpData
                      properties:
                        id:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        resourceHandle:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              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:
                                  - 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: >
                                      The value set of the
                                      "vimLevelResourceType" attribute is within
                                      the scope of the VIM or the resource
                                      provider and can be used as information
                                      that complements the ResourceHandle. This
                                      value set is different from the value set
                                      of the "type" attribute in the
                                      ResourceDefinition (refer to clause
                                      9.5.3.2 in SOL003).
                                    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
                        currentVnfExtCpData:
                          description: >
                            Allows the API consumer to read the current CP
                            configuration information for the connection of
                            external CPs to the external virtual link. This
                            attribute reflects the current configuration
                            information that has resulted from merging into this
                            attribute the "VnfExtCpData" information which was
                            passed as part of the "ExtVirtualLinkData" structure
                            in the input of the most recent VNF LCM operation
                            such as "InstantiateVnfRequest",
                            "ChangeExtVnfConnectivityRequest",
                            "ChangeVnfFlavourRequest" or
                            "ChangeCurrentVnfPkgRequest", or has been provided
                            by the NFVO during the granting procedure. If
                            applying such change results in an empty list of
                            "currentVnfExtCpData" structure instances, the
                            affected instance of "ExtVirtualLinkInfo" shall be
                            removed from its parent data structure.
                          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: >
                                  Map of instance data that need to be
                                  configured on the CP instances created from
                                  the respective CPD. The key of the map which
                                  identifies the individual VnfExtCpConfig
                                  entries is managed by the API consumer. The
                                  entries shall be applied by the VNFM according
                                  to the rules of JSON Merge Patch (see IETF RFC
                                  7396). Within one VNF instance, all VNFC
                                  instances created from a particular VDU have
                                  the same external connectivity. Thus, given a
                                  particular value of the “cpdId” attribute,
                                  there shall be one “cpConfig” entry for each
                                  VNFC instance that has been or can be created
                                  from a VDU which includes a CPD identified by
                                  the “cpdId” attribute. If the cpConfig
                                  represents a subport in a trunk, all
                                  “cpConfig” entries in this list shall have the
                                  same segmentationId, which means they are
                                  connected to the same set of external VLs via
                                  the trunk. The map entry value shall be set to
                                  "null" in order to delete a "VnfExtCpConfig"
                                  entry identified by a particular key value
                                  from the map, i.e. for the disconnection of an
                                  existing external CP instance addressed by
                                  cpInstanceId in the deleted map entry from a
                                  particular external virtual link, and deletion
                                  of that instance in case it represents a
                                  subport. Deleting the last key from the map
                                  removes the affected instance of the
                                  "VnfExtCpData" structure from its parent data
                                  structure.
                                type: object
                                additionalProperties:
                                  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.
                                  anyOf:
                                    - required:
                                        - linkPortId
                                    - required:
                                        - cpProtocolData
                                  type: object
                                  properties:
                                    parentCpConfigId:
                                      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": 1) Void 2) At least
                                        one of the "linkPortId" and
                                        "cpProtocolData" attributes 
                                           shall be present for an external CP instance representing a subport 
                                           that is to be created, or an external CP instance that is to be created 
                                           by creating the corresponding VNFC or VNF instance during the current or 
                                           a subsequent LCM operation, or for an existing external CP instance 
                                           that is to be re-configured or added to a particular external virtual link.
                                        3) If the "linkPortId" attribute is
                                        absent, the VNFM shall create a
                                           link port.
                                        4) 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.
                                        5) 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
                                            anyOf:
                                              - required:
                                                  - macAddress
                                              - required:
                                                  - ipAddresses
                                            oneOf:
                                              - required:
                                                  - fixedAddresses
                                              - required:
                                                  - numDynamicAddresses
                                              - required:
                                                  - ipAddressRange
                                            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
                                              segmentationId:
                                                description: >
                                                  Identification of the network segment to
                                                  which the Cp instance connects to. If
                                                  the Cp instance represents a subport in
                                                  a trunk, segmentationId shall be
                                                  present. Otherwise it shall not be
                                                  present. Depending on the NFVI
                                                  networking infrastructure, the
                                                  segmentationId may indicate the actual
                                                  network segment value (e.g. vlan Id,
                                                  Vxlan segmentation id, etc.) used in the
                                                  transport header of the packets or it
                                                  may be an identifier used between the
                                                  application and the NFVI networking
                                                  infrastructure to identify the network
                                                  sub-interface of the trunk port in
                                                  question. In the latter case the NFVI
                                                  infrastructure will map this local
                                                  segmentationId to whatever
                                                  segmentationId is actually used by the
                                                  NFVI’s transport technology.
                                                type: string
                                              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
                  extManagedVirtualLinkInfo:
                    description: >
                      Information about the externally-managed internal VLs of
                      the VNF instance.

                      NOTE: It is possible to have several
                      ExtManagedVirtualLinkInfo for the same VNF internal VL in
                      case of a multi-site VNF spanning several VIMs. The set of
                      ExtManagedVirtualLinkInfo corresponding to the same VNF
                      internal VL shall indicate so by referencing to the same
                      VnfVirtualLinkDesc and externally-managed multi-site VL
                      instance (refer to clause 5.5.3.3).
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - vnfVirtualLinkDescId
                        - networkResource
                      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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        networkResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              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:
                                  - 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: >
                                      The value set of the
                                      "vimLevelResourceType" attribute is within
                                      the scope of the VIM or the resource
                                      provider and can be used as information
                                      that complements the ResourceHandle. This
                                      value set is different from the value set
                                      of the "type" attribute in the
                                      ResourceDefinition (refer to clause
                                      9.5.3.2 in SOL003).
                                    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
                              cpInstanceType:
                                description: >
                                  Type of the CP instance that is identified by
                                  cpInstanceId. Shall be present if
                                  "cpInstanceId" is present, and shall be absent
                                  otherwise. Permitted values: VNFC_CP: The link
                                  port is connected to a VNFC CP EXT_CP: The
                                  link port is associated to an external CP.
                                type: string
                                enum:
                                  - VNFC_CP
                                  - EXT_CP
                        extManagedMultisiteVirtualLinkId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                  monitoringParameters:
                    description: |
                      Active monitoring parameters.
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - performanceMetric
                      properties:
                        id:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        name:
                          description: >
                            Human readable name of the monitoring parameter, as
                            defined in the VNFD.
                          type: string
                        performanceMetric:
                          description: >
                            Performance metric that is monitored. This attribute
                            shall contain the related "Measurement Name" value
                            as defined in clause 7.2 of ETSI GS NFV-IFA 027.
                          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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        computeResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        zoneId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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: >
                            All the CPs of the VNFC instance. Shall be present
                            when that particular CP of the VNFC instance is
                            exposed as an external CP of the VNF instance or is
                            connected to an external CP of the VNF instance. A
                            VNFC CP is "connected to" an external CP if the VNFC
                            CP is connected to an internal VL that exposes an
                            external CP. A VNFC CP is "exposed as" an external
                            CP if it is connected directly to an external VL.
                            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. May
                                  be omitted if the VNFC CP is exposed as an
                                  external CP. The information can be omitted
                                  because it is already available as part of the
                                  external CP information.
                                type: array
                                items:
                                  description: >
                                    This type describes the protocol layer(s)
                                    that a CP uses together with
                                    protocol-related information, like
                                    addresses.
                                  type: object
                                  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
                                      anyOf:
                                        - required:
                                            - macAddress
                                        - required:
                                            - ipAddresses
                                      oneOf:
                                        - required:
                                            - addresses
                                        - required:
                                            - addressRange
                                      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
                                        segmentationId:
                                          description: >
                                            Identification of the network segment to
                                            which the Cp instance connects to. If
                                            the Cp instance represents a subport in
                                            a trunk, segmentationId shall be
                                            present.  Otherwise it shall not be
                                            present. Depending on the NFVI
                                            networking infrastructure, the
                                            segmentationId may indicate the actual
                                            network segment value (e.g. vlan Id,
                                            Vxlan segmentation id, etc.) used in the
                                            transport header of the packets or it
                                            may be an identifier used between the
                                            application and the NFVI networking
                                            infrastructure to identify the network
                                            sub-interface of the trunk port in
                                            question. In the latter case the NFVI
                                            infrastructure will map this local
                                            segmentationId to whatever
                                            segmentationId is actually used by the
                                            NFVI’s transport technology.
                                          type: string
                                        ipAddresses:
                                          description: >
                                            Addresses assigned to the CP instance.
                                            Each entry represents IP addresses
                                            assigned by fixed or dynamic IP address
                                            assignment per subnet. At least one of
                                            "macAddress" or "ipAddresses" shall be
                                            present.
                                          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). Exactly one of "addresses" or
                                                  "addressRange" 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
                                              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 identifier maintained by the VIM or
                                                  other resource provider. It is expected
                                                  to be unique within the VIM instance.
                                                type: string
                              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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        networkResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        zoneId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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:
                                  - 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: >
                                      The value set of the
                                      "vimLevelResourceType" attribute is within
                                      the scope of the VIM or the resource
                                      provider and can be used as information
                                      that complements the ResourceHandle. This
                                      value set is different from the value set
                                      of the "type" attribute in the
                                      ResourceDefinition (refer to clause
                                      9.5.3.2 in SOL003).
                                    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
                              cpInstanceType:
                                description: >
                                  Type of the CP instance that is identified by
                                  cpInstanceId. Shall be present if
                                  "cpInstanceId" is present, and shall be absent
                                  otherwise. Permitted values: VNFC_CP: The link
                                  port is connected to a VNFC CP EXT_CP: The
                                  link port is associated to an external CP.
                                type: string
                                enum:
                                  - VNFC_CP
                                  - EXT_CP
                        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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        storageResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        zoneId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
              extensions:
                description: >
                  Additional VNF-specific attributes that affect the lifecycle
                  management of this VNF instance. These attributes represent
                  values that are stored persistently in the VnfInstance
                  structure for consumption by the VNFM or the lifecycle
                  management scripts during the execution of VNF lifecycle
                  management operations. All extensions that are allowed for the
                  VNF are declared in the VNFD. The declaration of an extension
                  in the VNFD contains information on whether its presence is
                  optional or required, and optionally can specify an initial
                  value. See note 2 and note 4. The VNFM shall reject requests
                  to write extension attributes that are not declared in the
                  VNFD with a "422 Unprocessable entity" error response as
                  defined in clause 6.4 of ETSI GS NFV-SOL 013. Modifying the
                  values of these attributes has no direct effect on the VNF
                  instance; however, the modified attribute values can be
                  considered during subsequent VNF lifecycle management
                  operations, which means that the modified values can
                  indirectly affect the configuration of the VNF instance. These
                  attributes can be initialized with default values from the
                  VNFD. These attributes can be modified with values passed in
                  the request structures of certain LCM operations, such as the
                  InstantiateVnfRequest structure. Further, these attributes can
                  be created, modified or deleted with the PATCH method.

                  NOTE: Upon creation of the VnfInstance structure, the VNFM
                  shall create and initialize all child attributes of
                  "vnfConfigurableProperties", "metadata" and "extensions" that
                  were declared in the VNFD with a defined initial value. The
                  defined initial values can be declared in the VNFD, and/or, in
                  case of "metadata", obtained from the "CreateVnfRequest"
                  structure. Child attributes of "vnfConfigurableProperties",
                  "metadata" and "extensions" that have no defineddeclared
                  initial value shall not be created, in order to be consistent
                  with the semantics of the JSON Merge Patch method (see IETF
                  RFC 7396) that interprets null values as deletion request.
              _links:
                description: |
                  Links to resources related to this resource.
                type: object
                required:
                  - self
                properties:
                  self:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  indicators:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  instantiate:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  terminate:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  scale:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  scaleToLevel:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  changeFlavour:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  heal:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  operate:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  changeExtConn:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  createSnapshot:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  revertToSnapshot:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
    IndividualVnfInstance.Patch.202:
      description: >
        202 ACCEPTED


        Shall be returned when the request has been accepted for processing.

        On success, the HTTP response shall include a "Location" HTTP header
        that

        contains the URI of the newly-created "Individual VNF LCM operation
        occurrence"

        resource corresponding to the operation.

        The response body shall be empty.
      headers:
        Location:
          description: |
            The resource URI of the created subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            description: |
              This type represents a VNF instance.
            type: object
            required:
              - id
              - vnfdId
              - vnfProvider
              - vnfProductName
              - vnfSoftwareVersion
              - vnfdVersion
              - 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
              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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
              vimConnectionInfo:
                description: >
                  Information about VIM connections to be used for managing the
                  resources for the VNF instance. The keys of the map, each of
                  which identifies information about a particular VIM
                  connection, are managed by the NFVO and referenced from other
                  data structures via the "vimConnectionId" attribute. This
                  attribute shall only be supported and present if VNF-related
                  resource management in direct mode is pplicable. This
                  attribute can be modified with the PATCH method.
                type: object
                additionalProperties:
                  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:
                    - vimType
                  properties:
                    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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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:
                    description: >
                      STARTED: The VNF instance is up and running. STOPPED: The
                      VNF instance has been shut down.
                    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. This attribute shall be present if the
                      VNF supports scaling. See clause B.2 for an explanation of
                      VNF scaling.
                    type: array
                    items:
                      required:
                        - aspectId
                        - scaleLevel
                      type: object
                      properties:
                        aspectId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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
                  maxScaleLevels:
                    description: >
                      Maximum allowed scale levels of the VNF, one entry per
                      aspect. This attribute shall be present if the VNF
                      supports scaling.
                    type: array
                    items:
                      required:
                        - aspectId
                        - scaleLevel
                      type: object
                      properties:
                        aspectId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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. When trunking is enabled, the list of entries
                      includes both, external CPs corresponding to parent ports
                      of a trunk, and external CPs associated to sub-ports of a
                      trunk.
                    type: array
                    minItems: 1
                    items:
                      description: >
                        This type represents information about an external CP of
                        a VNF. It shall comply with the provisions defined in
                        table 5.5.3.25 1.
                      type: object
                      required:
                        - id
                        - cpdId
                        - cpConfigId
                        - cpProtocolInfo
                      oneOf:
                        - required:
                            - associatedVnfcCpId
                        - required:
                            - associatedVnfVirtualLinkId
                      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
                        cpConfigId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being 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.
                            type: object
                            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
                                anyOf:
                                  - required:
                                      - macAddress
                                  - required:
                                      - ipAddresses
                                oneOf:
                                  - required:
                                      - addresses
                                  - required:
                                      - addressRange
                                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
                                  segmentationId:
                                    description: >
                                      Identification of the network segment to
                                      which the Cp instance connects to. If the
                                      Cp instance represents a subport in a
                                      trunk, segmentationId shall be present. 
                                      Otherwise it shall not be present.
                                      Depending on the NFVI networking
                                      infrastructure, the segmentationId may
                                      indicate the actual network segment value
                                      (e.g. vlan Id, Vxlan segmentation id,
                                      etc.) used in the transport header of the
                                      packets or it may be an identifier used
                                      between the application and the NFVI
                                      networking infrastructure to identify the
                                      network sub-interface of the trunk port in
                                      question. In the latter case the NFVI
                                      infrastructure will map this local
                                      segmentationId to whatever segmentationId
                                      is actually used by the NFVI’s transport
                                      technology.
                                    type: string
                                  ipAddresses:
                                    description: >
                                      Addresses assigned to the CP instance.
                                      Each entry represents IP addresses
                                      assigned by fixed or dynamic IP address
                                      assignment per subnet. At least one of
                                      "macAddress" or "ipAddresses" shall be
                                      present.
                                    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). Exactly one of "addresses" or
                                            "addressRange" 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
                                        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 identifier maintained by the VIM or
                                            other resource provider. It is expected
                                            to be unique within the VIM instance.
                                          type: string
                        extLinkPortId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                        associatedVnfcCpId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        associatedVnfVirtualLinkId:
                          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
                        - currentVnfExtCpData
                      properties:
                        id:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        resourceHandle:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              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:
                                  - 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: >
                                      The value set of the
                                      "vimLevelResourceType" attribute is within
                                      the scope of the VIM or the resource
                                      provider and can be used as information
                                      that complements the ResourceHandle. This
                                      value set is different from the value set
                                      of the "type" attribute in the
                                      ResourceDefinition (refer to clause
                                      9.5.3.2 in SOL003).
                                    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
                        currentVnfExtCpData:
                          description: >
                            Allows the API consumer to read the current CP
                            configuration information for the connection of
                            external CPs to the external virtual link. This
                            attribute reflects the current configuration
                            information that has resulted from merging into this
                            attribute the "VnfExtCpData" information which was
                            passed as part of the "ExtVirtualLinkData" structure
                            in the input of the most recent VNF LCM operation
                            such as "InstantiateVnfRequest",
                            "ChangeExtVnfConnectivityRequest",
                            "ChangeVnfFlavourRequest" or
                            "ChangeCurrentVnfPkgRequest", or has been provided
                            by the NFVO during the granting procedure. If
                            applying such change results in an empty list of
                            "currentVnfExtCpData" structure instances, the
                            affected instance of "ExtVirtualLinkInfo" shall be
                            removed from its parent data structure.
                          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: >
                                  Map of instance data that need to be
                                  configured on the CP instances created from
                                  the respective CPD. The key of the map which
                                  identifies the individual VnfExtCpConfig
                                  entries is managed by the API consumer. The
                                  entries shall be applied by the VNFM according
                                  to the rules of JSON Merge Patch (see IETF RFC
                                  7396). Within one VNF instance, all VNFC
                                  instances created from a particular VDU have
                                  the same external connectivity. Thus, given a
                                  particular value of the “cpdId” attribute,
                                  there shall be one “cpConfig” entry for each
                                  VNFC instance that has been or can be created
                                  from a VDU which includes a CPD identified by
                                  the “cpdId” attribute. If the cpConfig
                                  represents a subport in a trunk, all
                                  “cpConfig” entries in this list shall have the
                                  same segmentationId, which means they are
                                  connected to the same set of external VLs via
                                  the trunk. The map entry value shall be set to
                                  "null" in order to delete a "VnfExtCpConfig"
                                  entry identified by a particular key value
                                  from the map, i.e. for the disconnection of an
                                  existing external CP instance addressed by
                                  cpInstanceId in the deleted map entry from a
                                  particular external virtual link, and deletion
                                  of that instance in case it represents a
                                  subport. Deleting the last key from the map
                                  removes the affected instance of the
                                  "VnfExtCpData" structure from its parent data
                                  structure.
                                type: object
                                additionalProperties:
                                  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.
                                  anyOf:
                                    - required:
                                        - linkPortId
                                    - required:
                                        - cpProtocolData
                                  type: object
                                  properties:
                                    parentCpConfigId:
                                      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": 1) Void 2) At least
                                        one of the "linkPortId" and
                                        "cpProtocolData" attributes 
                                           shall be present for an external CP instance representing a subport 
                                           that is to be created, or an external CP instance that is to be created 
                                           by creating the corresponding VNFC or VNF instance during the current or 
                                           a subsequent LCM operation, or for an existing external CP instance 
                                           that is to be re-configured or added to a particular external virtual link.
                                        3) If the "linkPortId" attribute is
                                        absent, the VNFM shall create a
                                           link port.
                                        4) 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.
                                        5) 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
                                            anyOf:
                                              - required:
                                                  - macAddress
                                              - required:
                                                  - ipAddresses
                                            oneOf:
                                              - required:
                                                  - fixedAddresses
                                              - required:
                                                  - numDynamicAddresses
                                              - required:
                                                  - ipAddressRange
                                            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
                                              segmentationId:
                                                description: >
                                                  Identification of the network segment to
                                                  which the Cp instance connects to. If
                                                  the Cp instance represents a subport in
                                                  a trunk, segmentationId shall be
                                                  present. Otherwise it shall not be
                                                  present. Depending on the NFVI
                                                  networking infrastructure, the
                                                  segmentationId may indicate the actual
                                                  network segment value (e.g. vlan Id,
                                                  Vxlan segmentation id, etc.) used in the
                                                  transport header of the packets or it
                                                  may be an identifier used between the
                                                  application and the NFVI networking
                                                  infrastructure to identify the network
                                                  sub-interface of the trunk port in
                                                  question. In the latter case the NFVI
                                                  infrastructure will map this local
                                                  segmentationId to whatever
                                                  segmentationId is actually used by the
                                                  NFVI’s transport technology.
                                                type: string
                                              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
                  extManagedVirtualLinkInfo:
                    description: >
                      Information about the externally-managed internal VLs of
                      the VNF instance.

                      NOTE: It is possible to have several
                      ExtManagedVirtualLinkInfo for the same VNF internal VL in
                      case of a multi-site VNF spanning several VIMs. The set of
                      ExtManagedVirtualLinkInfo corresponding to the same VNF
                      internal VL shall indicate so by referencing to the same
                      VnfVirtualLinkDesc and externally-managed multi-site VL
                      instance (refer to clause 5.5.3.3).
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - vnfVirtualLinkDescId
                        - networkResource
                      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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        networkResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              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:
                                  - 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: >
                                      The value set of the
                                      "vimLevelResourceType" attribute is within
                                      the scope of the VIM or the resource
                                      provider and can be used as information
                                      that complements the ResourceHandle. This
                                      value set is different from the value set
                                      of the "type" attribute in the
                                      ResourceDefinition (refer to clause
                                      9.5.3.2 in SOL003).
                                    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
                              cpInstanceType:
                                description: >
                                  Type of the CP instance that is identified by
                                  cpInstanceId. Shall be present if
                                  "cpInstanceId" is present, and shall be absent
                                  otherwise. Permitted values: VNFC_CP: The link
                                  port is connected to a VNFC CP EXT_CP: The
                                  link port is associated to an external CP.
                                type: string
                                enum:
                                  - VNFC_CP
                                  - EXT_CP
                        extManagedMultisiteVirtualLinkId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                  monitoringParameters:
                    description: |
                      Active monitoring parameters.
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - performanceMetric
                      properties:
                        id:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        name:
                          description: >
                            Human readable name of the monitoring parameter, as
                            defined in the VNFD.
                          type: string
                        performanceMetric:
                          description: >
                            Performance metric that is monitored. This attribute
                            shall contain the related "Measurement Name" value
                            as defined in clause 7.2 of ETSI GS NFV-IFA 027.
                          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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        computeResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        zoneId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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: >
                            All the CPs of the VNFC instance. Shall be present
                            when that particular CP of the VNFC instance is
                            exposed as an external CP of the VNF instance or is
                            connected to an external CP of the VNF instance. A
                            VNFC CP is "connected to" an external CP if the VNFC
                            CP is connected to an internal VL that exposes an
                            external CP. A VNFC CP is "exposed as" an external
                            CP if it is connected directly to an external VL.
                            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. May
                                  be omitted if the VNFC CP is exposed as an
                                  external CP. The information can be omitted
                                  because it is already available as part of the
                                  external CP information.
                                type: array
                                items:
                                  description: >
                                    This type describes the protocol layer(s)
                                    that a CP uses together with
                                    protocol-related information, like
                                    addresses.
                                  type: object
                                  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
                                      anyOf:
                                        - required:
                                            - macAddress
                                        - required:
                                            - ipAddresses
                                      oneOf:
                                        - required:
                                            - addresses
                                        - required:
                                            - addressRange
                                      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
                                        segmentationId:
                                          description: >
                                            Identification of the network segment to
                                            which the Cp instance connects to. If
                                            the Cp instance represents a subport in
                                            a trunk, segmentationId shall be
                                            present.  Otherwise it shall not be
                                            present. Depending on the NFVI
                                            networking infrastructure, the
                                            segmentationId may indicate the actual
                                            network segment value (e.g. vlan Id,
                                            Vxlan segmentation id, etc.) used in the
                                            transport header of the packets or it
                                            may be an identifier used between the
                                            application and the NFVI networking
                                            infrastructure to identify the network
                                            sub-interface of the trunk port in
                                            question. In the latter case the NFVI
                                            infrastructure will map this local
                                            segmentationId to whatever
                                            segmentationId is actually used by the
                                            NFVI’s transport technology.
                                          type: string
                                        ipAddresses:
                                          description: >
                                            Addresses assigned to the CP instance.
                                            Each entry represents IP addresses
                                            assigned by fixed or dynamic IP address
                                            assignment per subnet. At least one of
                                            "macAddress" or "ipAddresses" shall be
                                            present.
                                          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). Exactly one of "addresses" or
                                                  "addressRange" 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
                                              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 identifier maintained by the VIM or
                                                  other resource provider. It is expected
                                                  to be unique within the VIM instance.
                                                type: string
                              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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        networkResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        zoneId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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:
                                  - 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: >
                                      The value set of the
                                      "vimLevelResourceType" attribute is within
                                      the scope of the VIM or the resource
                                      provider and can be used as information
                                      that complements the ResourceHandle. This
                                      value set is different from the value set
                                      of the "type" attribute in the
                                      ResourceDefinition (refer to clause
                                      9.5.3.2 in SOL003).
                                    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
                              cpInstanceType:
                                description: >
                                  Type of the CP instance that is identified by
                                  cpInstanceId. Shall be present if
                                  "cpInstanceId" is present, and shall be absent
                                  otherwise. Permitted values: VNFC_CP: The link
                                  port is connected to a VNFC CP EXT_CP: The
                                  link port is associated to an external CP.
                                type: string
                                enum:
                                  - VNFC_CP
                                  - EXT_CP
                        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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        storageResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        zoneId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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
                  keyvalue pairs is represented as an object. It shall comply
                  with the provisions defined in clause 4 of IETF RFC 8259. In
                  the following example, a list of key-value pairs with four
                  keys ("aString", "aNumber", "anArray" and "anObject") is
                  provided to illustrate that the values associated with
                  different keys can be of different type.
                type: object
              extensions:
                description: >
                  Additional VNF-specific attributes that affect the lifecycle
                  management of this VNF instance. These attributes represent
                  values that are stored persistently in the VnfInstance
                  structure for consumption by the VNFM or the lifecycle
                  management scripts during the execution of VNF lifecycle
                  management operations. All extensions that are allowed for the
                  VNF are declared in the VNFD. The declaration of an extension
                  in the VNFD contains information on whether its presence is
                  optional or required, and optionally can specify an initial
                  value. See note 2 and note 4. The VNFM shall reject requests
                  to write extension attributes that are not declared in the
                  VNFD with a "422 Unprocessable entity" error response as
                  defined in clause 6.4 of ETSI GS NFV-SOL 013. Modifying the
                  values of these attributes has no direct effect on the VNF
                  instance; however, the modified attribute values can be
                  considered during subsequent VNF lifecycle management
                  operations, which means that the modified values can
                  indirectly affect the configuration of the VNF instance. These
                  attributes can be initialized with default values from the
                  VNFD. These attributes can be modified with values passed in
                  the request structures of certain LCM operations, such as the
                  InstantiateVnfRequest structure. Further, these attributes can
                  be created, modified or deleted with the PATCH method.

                  NOTE: Upon creation of the VnfInstance structure, the VNFM
                  shall create and initialize all child attributes of
                  "vnfConfigurableProperties", "metadata" and "extensions" that
                  were declared in the VNFD with a defined initial value. The
                  defined initial values can be declared in the VNFD, and/or, in
                  case of "metadata", obtained from the "CreateVnfRequest"
                  structure. Child attributes of "vnfConfigurableProperties",
                  "metadata" and "extensions" that have no defineddeclared
                  initial value shall not be created, in order to be consistent
                  with the semantics of the JSON Merge Patch method (see IETF
                  RFC 7396) that interprets null values as deletion request.
              _links:
                description: |
                  Links to resources related to this resource.
                type: object
                required:
                  - self
                properties:
                  self:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  indicators:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  instantiate:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  terminate:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  scale:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  scaleToLevel:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  changeFlavour:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  heal:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  operate:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  changeExtConn:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  createSnapshot:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  revertToSnapshot:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
    IndividualVnfInstance.Delete.204:
      description: >
        204 NO CONTENT


        Shall be returned when the "Individual 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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    InstantiateVnfInstance.Post.202:
      description: |
        202 ACCEPTED

        Shall be returned when the request has been accepted for processing
        The response body shall be empty.
        The HTTP response shall include a "Location" HTTP header that
        contains the URI of the newly-created "Individual VNF LCM operation
        occurrence" resource corresponding to the operation.
      headers:
        Location:
          description: |
            The resource URI of the created subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    ScaleVnfInstance.Post.202:
      description: |
        202 ACCEPTED

        Shall be returned when the request has been accepted for processing.
        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 subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    ScaleToLevelVnfInstance.Post.202:
      description: |
        202 ACCEPTED

        Shall be returned when the request has been accepted for processing.
        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 subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    ChangeFlavourVnfInstance.Post.202:
      description: |
        202 ACCEPTED

        Shall be returned when the request has been accepted for processing.
        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 subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    TerminateVnfInstance.Post.202:
      description: |
        202 ACCEPTED

        Shall be returned when the request has been accepted for processing.
        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 subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    HealVnfInstance.Post.202:
      description: |
        202 ACCEPTED

        Shall be returned when the request has been accepted for processing.
        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 subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    OperateVnfInstance.Post.202:
      description: |
        202 ACCEPTED

        Shall be returned when the request has been accepted for processing.
        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 subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    ChangeExtConnVnfInstance.Post.202:
      description: |
        202 ACCEPTED

        Shall be returned when the request has been accepted for processing.
        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 subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    ChangeVnfpkgVnfInstance.Post.202:
      description: >
        202 ACCEPTED


        Shall be returned when the request has been accepted for processing.

        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 subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    VnfLcmOpOccs.Get.200:
      description: >
        200 OK


        Shall be returned when status information for zero or more VNF lifecycle
        management

        operation occurrences has been queried successfully.

        The response body shall contain in an array the status information about
        zero or more

        VNF lifecycle operation occurrences, as defined in clause 5.5.2.13.

        If the "filter" URI parameter or one of the "all_fields", "fields" (if
        supported),

        "exclude_fields" (if supported) or "exclude_default" URI parameters was
        supplied in the request,

        the data in the response body shall have been transformed according to
        the rules specified

        in clauses 5.2.2 and 5.3.2 of ETSI GS NFV-SOL 013, respectively.

        If the VNFM supports alternative 2 (paging) according to clause 5.4.2.1
        of ETSI GS NFV-SOL 013

        for this resource, inclusion of the Link HTTP header in this response
        shall follow the provisions

        in clause 5.4.2.3 of ETSI GS NFV-SOL 013.
      headers:
        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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
        Link:
          description: >
            Reference to other resources. Used for paging in the present
            document, see clause 4.7.2.1.
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            description: >
              This type represents a VNF lifecycle management operation
              occurrence. Shall be set to the value of the "id" attribute in the
              "Grant" representing the associated "Individual Grant", if such
              grant exists.
            type: object
            oneOf:
              - required:
                  - changedInfo
              - required:
                  - modificationsTriggeredByVnfPkgChange
            required:
              - id
              - operationState
              - stateEnteredTime
              - startTime
              - vnfInstanceId
              - operation
              - isAutomaticInvocation
              - isCancelPending
            properties:
              id:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              operationState:
                description: >
                  STARTING: The LCM operation is starting. PROCESSING: The LCM
                  operation is currently in execution. COMPLETED: The 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 stamp. Representation: String formatted according to
                  IETF RFC 3339.
                type: string
                format: date-time
              startTime:
                description: >
                  Date-time stamp. Representation: String formatted according to
                  IETF RFC 3339.
                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. CREATE_SNAPSHOT |
                  Represents the "Create VNF Snapshot" LCM operation.
                  REVERT_TO_SNAPSHOT | Represents the “Revert-To VNF Snapshot"
                  LCM operation. CHANGE_VNFPKG | Represents the "Change current
                  VNF package" LCM operation.
                type: string
                enum:
                  - INSTANTIATE
                  - SCALE
                  - SCALE_TO_LEVEL
                  - CHANGE_FLAVOUR
                  - TERMINATE
                  - HEAL
                  - OPERATE
                  - CHANGE_EXT_CONN
                  - MODIFY_INFO
                  - CREATE_SNAPSHOT
                  - REVERT_TO_SNAPSHOT
                  - CHANGE_VNFPKG
              isAutomaticInvocation:
                description: |
                  The Boolean is a data type having two values (true and false).
                type: boolean
              operationParams:
                description: >
                  Input parameters of the LCM operation. This attribute shall be
                  formatted according to the request data type of the related
                  LCM operation. The following mapping between operationType and
                  the data type of this attribute shall apply: * INSTANTIATE:
                  InstantiateVnfRequest * SCALE: ScaleVnfRequest *
                  SCALE_TO_LEVEL: ScaleVnfToLevelRequest * CHANGE_FLAVOUR:
                  ChangeVnfFlavourRequest * OPERATE: OperateVnfRequest * HEAL:
                  HealVnfRequest * CHANGE_EXT_CONN:
                  ChangeExtVnfConnectivityRequest * TERMINATE:
                  TerminateVnfRequest * MODIFY_INFO: VnfInfoModifications *
                  CREATE_SNAPSHOT: CreateVnfSnapshotRequest *
                  REVERT_TO_SNAPSHOT: RevertToVnfSnapshotRequest *
                  CHANGE_VNFPKG: ChangeCurrentVnfPkgRequest
                type: object
              isCancelPending:
                description: |
                  The Boolean is a data type having two values (true and 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 API consumer 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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        zoneId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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 API consumer 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. For a particular
                      affected VL, there shall be as many "AffectedVirtualLink"
                      entries as needed for signalling the different types of
                      changes, i.e., one per virtual link and change type. For
                      instance, in the case of signaling affected VL instances
                      involving the addition of a particular VL instance with
                      links ports, one "AffectedVirtualLink" entry signals the
                      addition of the VL by using the "changeType" attribute of
                      "AffectedVirtualLink" structure equal to "ADDED", and
                      another "AffectedVirtualLink" entry signals the addition
                      of VNF link ports of the VL by using the "changeType"
                      equal to "LINK_PORT_ADDED".
                    type: array
                    items:
                      description: >
                        This type provides information about added, deleted,
                        modified and temporary VLs, and added or removed VNF
                        link ports.
                      type: object
                      required:
                        - id
                        - vnfVirtualLinkDescId
                        - 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
                        vnfVirtualLinkDescId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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. When
                            signalling the addition (LINK_PORT_ADDED) or removal
                            (LINK_PORT_REMOVED) of VNF link ports, the
                            "networkResource" attribute refers to the affected
                            virtual link instance, not the link port instance.
                            The resource handles of the affected VNF link ports
                            can be found by dereferencing the identifiers in the
                            "vnfLinkPortIds" attribute.
                          type: string
                          enum:
                            - ADDED
                            - REMOVED
                            - MODIFIED
                            - TEMPORARY
                            - LINK_PORT_ADDED
                            - LINK_PORT_REMOVED
                        networkResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        vnfLinkPortIds:
                          description: >
                            Identifiers of the link ports of the affected VL
                            (reference to the vnfLinkPortInfo) related to the
                            change. Each identifier references a
                            "VnfLinkPortInfo" structure. Shall be set when
                            changeType is equal to "LINK_PORT_ADDED" or
                            "LINK_PORT_REMOVED", and the related
                            “VnfLinkPortInfo” structures are present (case
                            "added") or have been present (case "removed") in
                            the “VnfVirtualLinkResourceInfo” or
                            "ExtManagedVirtualLinkInfo" structures that are
                            represented by the "vnfVirtualLinkResourceInfo" or
                            "extManagedVirtualLinkInfo" attribute in the
                            "VnfInstance" structure. When signalling the
                            addition (LINK_PORT_ADDED) or removal
                            (LINK_PORT_REMOVED) of VNF link ports, the
                            "networkResource" attribute refers to the affected
                            virtual link instance, not the link port instance.
                            The resource handles of the affected VNF link ports
                            can be found by dereferencing the identifiers in the
                            "vnfLinkPortIds" attribute.
                          type: array
                          items:
                            description: >
                              An identifier that is unique within a VNF
                              descriptor.
                            type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        zoneId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                  affectedExtLinkPorts:
                    description: >
                      Information about external VNF link ports that were
                      affected during the lifecycle operation. This allows the
                      API consumer 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 and deleted
                        external link ports (link ports attached to external
                        virtual links).
                      type: object
                      required:
                        - id
                        - changeType
                        - extCpInstanceId
                        - resourceHandle
                      properties:
                        id:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        changeType:
                          description: "Signals the type of change. Permitted values: -\tADDED -\tREMOVED\n"
                          type: string
                          enum:
                            - ADDED
                            - REMOVED
                        extCpInstanceId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        resourceHandle:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                  affectedVirtualStorages:
                    description: >
                      Information about virtualised storage instances that were
                      affected during the lifecycle operation. This allows the
                      API consumer 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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        zoneId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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: |
                      A string defined in IETF RFC 8259.
                    type: string
                  vnfInstanceDescription:
                    description: |
                      A string defined in IETF RFC 8259.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    type: object
                  vimConnectionInfo:
                    description: >
                      If present, this attribute signals modifications the
                      "vimConnectionInfo"  attribute array in "VnfInstance".
                    type: object
                    additionalProperties:
                      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:
                        - vimType
                      properties:
                        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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                  vnfdId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfProvider:
                    description: |
                      A string defined in IETF RFC 8259.
                    type: string
                  vnfProductName:
                    description: |
                      A string defined in IETF RFC 8259.
                    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
                    - currentVnfExtCpData
                  properties:
                    id:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    resourceHandle:
                      required:
                        - 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: >
                            The value set of the "vimLevelResourceType"
                            attribute is within the scope of the VIM or the
                            resource provider and can be used as information
                            that complements the ResourceHandle. This value set
                            is different from the value set of the "type"
                            attribute in the ResourceDefinition (refer to clause
                            9.5.3.2 in SOL003).
                          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:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                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
                    currentVnfExtCpData:
                      description: >
                        Allows the API consumer to read the current CP
                        configuration information for the connection of external
                        CPs to the external virtual link. This attribute
                        reflects the current configuration information that has
                        resulted from merging into this attribute the
                        "VnfExtCpData" information which was passed as part of
                        the "ExtVirtualLinkData" structure in the input of the
                        most recent VNF LCM operation such as
                        "InstantiateVnfRequest",
                        "ChangeExtVnfConnectivityRequest",
                        "ChangeVnfFlavourRequest" or
                        "ChangeCurrentVnfPkgRequest", or has been provided by
                        the NFVO during the granting procedure. If applying such
                        change results in an empty list of "currentVnfExtCpData"
                        structure instances, the affected instance of
                        "ExtVirtualLinkInfo" shall be removed from its parent
                        data structure.
                      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: >
                              Map of instance data that need to be configured on
                              the CP instances created from the respective CPD.
                              The key of the map which identifies the individual
                              VnfExtCpConfig entries is managed by the API
                              consumer. The entries shall be applied by the VNFM
                              according to the rules of JSON Merge Patch (see
                              IETF RFC 7396). Within one VNF instance, all VNFC
                              instances created from a particular VDU have the
                              same external connectivity. Thus, given a
                              particular value of the “cpdId” attribute, there
                              shall be one “cpConfig” entry for each VNFC
                              instance that has been or can be created from a
                              VDU which includes a CPD identified by the “cpdId”
                              attribute. If the cpConfig represents a subport in
                              a trunk, all “cpConfig” entries in this list shall
                              have the same segmentationId, which means they are
                              connected to the same set of external VLs via the
                              trunk. The map entry value shall be set to "null"
                              in order to delete a "VnfExtCpConfig" entry
                              identified by a particular key value from the map,
                              i.e. for the disconnection of an existing external
                              CP instance addressed by cpInstanceId in the
                              deleted map entry from a particular external
                              virtual link, and deletion of that instance in
                              case it represents a subport. Deleting the last
                              key from the map removes the affected instance of
                              the "VnfExtCpData" structure from its parent data
                              structure.
                            type: object
                            additionalProperties:
                              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.
                              anyOf:
                                - required:
                                    - linkPortId
                                - required:
                                    - cpProtocolData
                              type: object
                              properties:
                                parentCpConfigId:
                                  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": 1) Void 2) At least one of
                                    the "linkPortId" and "cpProtocolData"
                                    attributes 
                                       shall be present for an external CP instance representing a subport 
                                       that is to be created, or an external CP instance that is to be created 
                                       by creating the corresponding VNFC or VNF instance during the current or 
                                       a subsequent LCM operation, or for an existing external CP instance 
                                       that is to be re-configured or added to a particular external virtual link.
                                    3) If the "linkPortId" attribute is absent,
                                    the VNFM shall create a
                                       link port.
                                    4) 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.
                                    5) 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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - fixedAddresses
                                          - required:
                                              - numDynamicAddresses
                                          - required:
                                              - ipAddressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present. Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          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
              modificationsTriggeredByVnfPkgChange:
                description: >
                  This type represents attribute modifications that were
                  performed on an "Individual VNF instance" resource when
                  changing the current VNF package. The attributes that can be
                  included consist of those requested to be modified explicitly
                  in the "ChangeCurrentVnfPkgRequest" data structure, and
                  additional attributes of the "VnfInstance" data structure that
                  were modified implicitly during the operation.
                type: object
                properties:
                  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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    type: object
                  vnfdId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfProvider:
                    description: >
                      If present, this attribute signals the new value of the
                      "vnfProvider" attribute in "VnfInstance". If present, this
                      attribute (which depends on the value of the "vnfdId"
                      attribute) was modified implicitly during the related
                      operation, and contains a copy of  the value of he related
                      attribute from the VNFD in the VNF Package identified by
                      the "vnfdId" attribute.
                    type: string
                  vnfProductName:
                    description: >
                      If present, this attribute signals the new value of the
                      "vnfProductName" attribute in "VnfInstance". If present,
                      this attribute (which depends on the value of the "vnfdId"
                      attribute) was modified implicitly during the related
                      operation, and contains a copy of  the value of he related
                      attribute from the VNFD in the VNF Package identified by
                      the "vnfdId" attribute.
                    type: string
                  vnfSoftwareVersion:
                    description: |
                      A version.
                    type: string
                  vnfdVersion:
                    description: |
                      A version.
                    type: string
              vnfSnapshotInfoId:
                description: |
                  An identifier with the intention of being 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 using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  vnfInstance:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  grant:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  cancel:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  retry:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  rollback:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  fail:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  vnfSnapshot:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
    IndividualVnfLcmOpOcc.Get.200:
      description: >
        200 OK


        Shall be returned when information about a VNF LCM operation occurrence
        washas been read successfully.

        The response body shall contain status information about a VNF lifecycle
        management operation occurrence

        (see clause 5.5.2.13).
      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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            description: >
              This type represents a VNF lifecycle management operation
              occurrence. Shall be set to the value of the "id" attribute in the
              "Grant" representing the associated "Individual Grant", if such
              grant exists.
            type: object
            oneOf:
              - required:
                  - changedInfo
              - required:
                  - modificationsTriggeredByVnfPkgChange
            required:
              - id
              - operationState
              - stateEnteredTime
              - startTime
              - vnfInstanceId
              - operation
              - isAutomaticInvocation
              - isCancelPending
            properties:
              id:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              operationState:
                description: >
                  STARTING: The LCM operation is starting. PROCESSING: The LCM
                  operation is currently in execution. COMPLETED: The 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 stamp. Representation: String formatted according to
                  IETF RFC 3339.
                type: string
                format: date-time
              startTime:
                description: >
                  Date-time stamp. Representation: String formatted according to
                  IETF RFC 3339.
                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. CREATE_SNAPSHOT |
                  Represents the "Create VNF Snapshot" LCM operation.
                  REVERT_TO_SNAPSHOT | Represents the “Revert-To VNF Snapshot"
                  LCM operation. CHANGE_VNFPKG | Represents the "Change current
                  VNF package" LCM operation.
                type: string
                enum:
                  - INSTANTIATE
                  - SCALE
                  - SCALE_TO_LEVEL
                  - CHANGE_FLAVOUR
                  - TERMINATE
                  - HEAL
                  - OPERATE
                  - CHANGE_EXT_CONN
                  - MODIFY_INFO
                  - CREATE_SNAPSHOT
                  - REVERT_TO_SNAPSHOT
                  - CHANGE_VNFPKG
              isAutomaticInvocation:
                description: |
                  The Boolean is a data type having two values (true and false).
                type: boolean
              operationParams:
                description: >
                  Input parameters of the LCM operation. This attribute shall be
                  formatted according to the request data type of the related
                  LCM operation. The following mapping between operationType and
                  the data type of this attribute shall apply: * INSTANTIATE:
                  InstantiateVnfRequest * SCALE: ScaleVnfRequest *
                  SCALE_TO_LEVEL: ScaleVnfToLevelRequest * CHANGE_FLAVOUR:
                  ChangeVnfFlavourRequest * OPERATE: OperateVnfRequest * HEAL:
                  HealVnfRequest * CHANGE_EXT_CONN:
                  ChangeExtVnfConnectivityRequest * TERMINATE:
                  TerminateVnfRequest * MODIFY_INFO: VnfInfoModifications *
                  CREATE_SNAPSHOT: CreateVnfSnapshotRequest *
                  REVERT_TO_SNAPSHOT: RevertToVnfSnapshotRequest *
                  CHANGE_VNFPKG: ChangeCurrentVnfPkgRequest
                type: object
              isCancelPending:
                description: |
                  The Boolean is a data type having two values (true and 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 API consumer 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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        zoneId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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 API consumer 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. For a particular
                      affected VL, there shall be as many "AffectedVirtualLink"
                      entries as needed for signalling the different types of
                      changes, i.e., one per virtual link and change type. For
                      instance, in the case of signaling affected VL instances
                      involving the addition of a particular VL instance with
                      links ports, one "AffectedVirtualLink" entry signals the
                      addition of the VL by using the "changeType" attribute of
                      "AffectedVirtualLink" structure equal to "ADDED", and
                      another "AffectedVirtualLink" entry signals the addition
                      of VNF link ports of the VL by using the "changeType"
                      equal to "LINK_PORT_ADDED".
                    type: array
                    items:
                      description: >
                        This type provides information about added, deleted,
                        modified and temporary VLs, and added or removed VNF
                        link ports.
                      type: object
                      required:
                        - id
                        - vnfVirtualLinkDescId
                        - 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
                        vnfVirtualLinkDescId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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. When
                            signalling the addition (LINK_PORT_ADDED) or removal
                            (LINK_PORT_REMOVED) of VNF link ports, the
                            "networkResource" attribute refers to the affected
                            virtual link instance, not the link port instance.
                            The resource handles of the affected VNF link ports
                            can be found by dereferencing the identifiers in the
                            "vnfLinkPortIds" attribute.
                          type: string
                          enum:
                            - ADDED
                            - REMOVED
                            - MODIFIED
                            - TEMPORARY
                            - LINK_PORT_ADDED
                            - LINK_PORT_REMOVED
                        networkResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        vnfLinkPortIds:
                          description: >
                            Identifiers of the link ports of the affected VL
                            (reference to the vnfLinkPortInfo) related to the
                            change. Each identifier references a
                            "VnfLinkPortInfo" structure. Shall be set when
                            changeType is equal to "LINK_PORT_ADDED" or
                            "LINK_PORT_REMOVED", and the related
                            “VnfLinkPortInfo” structures are present (case
                            "added") or have been present (case "removed") in
                            the “VnfVirtualLinkResourceInfo” or
                            "ExtManagedVirtualLinkInfo" structures that are
                            represented by the "vnfVirtualLinkResourceInfo" or
                            "extManagedVirtualLinkInfo" attribute in the
                            "VnfInstance" structure. When signalling the
                            addition (LINK_PORT_ADDED) or removal
                            (LINK_PORT_REMOVED) of VNF link ports, the
                            "networkResource" attribute refers to the affected
                            virtual link instance, not the link port instance.
                            The resource handles of the affected VNF link ports
                            can be found by dereferencing the identifiers in the
                            "vnfLinkPortIds" attribute.
                          type: array
                          items:
                            description: >
                              An identifier that is unique within a VNF
                              descriptor.
                            type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        zoneId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                  affectedExtLinkPorts:
                    description: >
                      Information about external VNF link ports that were
                      affected during the lifecycle operation. This allows the
                      API consumer 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 and deleted
                        external link ports (link ports attached to external
                        virtual links).
                      type: object
                      required:
                        - id
                        - changeType
                        - extCpInstanceId
                        - resourceHandle
                      properties:
                        id:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        changeType:
                          description: "Signals the type of change. Permitted values: -\tADDED -\tREMOVED\n"
                          type: string
                          enum:
                            - ADDED
                            - REMOVED
                        extCpInstanceId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        resourceHandle:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                  affectedVirtualStorages:
                    description: >
                      Information about virtualised storage instances that were
                      affected during the lifecycle operation. This allows the
                      API consumer 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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        zoneId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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: |
                      A string defined in IETF RFC 8259.
                    type: string
                  vnfInstanceDescription:
                    description: |
                      A string defined in IETF RFC 8259.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    type: object
                  vimConnectionInfo:
                    description: >
                      If present, this attribute signals modifications the
                      "vimConnectionInfo"  attribute array in "VnfInstance".
                    type: object
                    additionalProperties:
                      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:
                        - vimType
                      properties:
                        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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                  vnfdId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfProvider:
                    description: |
                      A string defined in IETF RFC 8259.
                    type: string
                  vnfProductName:
                    description: |
                      A string defined in IETF RFC 8259.
                    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
                    - currentVnfExtCpData
                  properties:
                    id:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    resourceHandle:
                      required:
                        - 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: >
                            The value set of the "vimLevelResourceType"
                            attribute is within the scope of the VIM or the
                            resource provider and can be used as information
                            that complements the ResourceHandle. This value set
                            is different from the value set of the "type"
                            attribute in the ResourceDefinition (refer to clause
                            9.5.3.2 in SOL003).
                          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:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                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
                    currentVnfExtCpData:
                      description: >
                        Allows the API consumer to read the current CP
                        configuration information for the connection of external
                        CPs to the external virtual link. This attribute
                        reflects the current configuration information that has
                        resulted from merging into this attribute the
                        "VnfExtCpData" information which was passed as part of
                        the "ExtVirtualLinkData" structure in the input of the
                        most recent VNF LCM operation such as
                        "InstantiateVnfRequest",
                        "ChangeExtVnfConnectivityRequest",
                        "ChangeVnfFlavourRequest" or
                        "ChangeCurrentVnfPkgRequest", or has been provided by
                        the NFVO during the granting procedure. If applying such
                        change results in an empty list of "currentVnfExtCpData"
                        structure instances, the affected instance of
                        "ExtVirtualLinkInfo" shall be removed from its parent
                        data structure.
                      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: >
                              Map of instance data that need to be configured on
                              the CP instances created from the respective CPD.
                              The key of the map which identifies the individual
                              VnfExtCpConfig entries is managed by the API
                              consumer. The entries shall be applied by the VNFM
                              according to the rules of JSON Merge Patch (see
                              IETF RFC 7396). Within one VNF instance, all VNFC
                              instances created from a particular VDU have the
                              same external connectivity. Thus, given a
                              particular value of the “cpdId” attribute, there
                              shall be one “cpConfig” entry for each VNFC
                              instance that has been or can be created from a
                              VDU which includes a CPD identified by the “cpdId”
                              attribute. If the cpConfig represents a subport in
                              a trunk, all “cpConfig” entries in this list shall
                              have the same segmentationId, which means they are
                              connected to the same set of external VLs via the
                              trunk. The map entry value shall be set to "null"
                              in order to delete a "VnfExtCpConfig" entry
                              identified by a particular key value from the map,
                              i.e. for the disconnection of an existing external
                              CP instance addressed by cpInstanceId in the
                              deleted map entry from a particular external
                              virtual link, and deletion of that instance in
                              case it represents a subport. Deleting the last
                              key from the map removes the affected instance of
                              the "VnfExtCpData" structure from its parent data
                              structure.
                            type: object
                            additionalProperties:
                              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.
                              anyOf:
                                - required:
                                    - linkPortId
                                - required:
                                    - cpProtocolData
                              type: object
                              properties:
                                parentCpConfigId:
                                  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": 1) Void 2) At least one of
                                    the "linkPortId" and "cpProtocolData"
                                    attributes 
                                       shall be present for an external CP instance representing a subport 
                                       that is to be created, or an external CP instance that is to be created 
                                       by creating the corresponding VNFC or VNF instance during the current or 
                                       a subsequent LCM operation, or for an existing external CP instance 
                                       that is to be re-configured or added to a particular external virtual link.
                                    3) If the "linkPortId" attribute is absent,
                                    the VNFM shall create a
                                       link port.
                                    4) 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.
                                    5) 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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - fixedAddresses
                                          - required:
                                              - numDynamicAddresses
                                          - required:
                                              - ipAddressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present. Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          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
              modificationsTriggeredByVnfPkgChange:
                description: >
                  This type represents attribute modifications that were
                  performed on an "Individual VNF instance" resource when
                  changing the current VNF package. The attributes that can be
                  included consist of those requested to be modified explicitly
                  in the "ChangeCurrentVnfPkgRequest" data structure, and
                  additional attributes of the "VnfInstance" data structure that
                  were modified implicitly during the operation.
                type: object
                properties:
                  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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    type: object
                  vnfdId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfProvider:
                    description: >
                      If present, this attribute signals the new value of the
                      "vnfProvider" attribute in "VnfInstance". If present, this
                      attribute (which depends on the value of the "vnfdId"
                      attribute) was modified implicitly during the related
                      operation, and contains a copy of  the value of he related
                      attribute from the VNFD in the VNF Package identified by
                      the "vnfdId" attribute.
                    type: string
                  vnfProductName:
                    description: >
                      If present, this attribute signals the new value of the
                      "vnfProductName" attribute in "VnfInstance". If present,
                      this attribute (which depends on the value of the "vnfdId"
                      attribute) was modified implicitly during the related
                      operation, and contains a copy of  the value of he related
                      attribute from the VNFD in the VNF Package identified by
                      the "vnfdId" attribute.
                    type: string
                  vnfSoftwareVersion:
                    description: |
                      A version.
                    type: string
                  vnfdVersion:
                    description: |
                      A version.
                    type: string
              vnfSnapshotInfoId:
                description: |
                  An identifier with the intention of being 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 using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  vnfInstance:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  grant:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  cancel:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  retry:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  rollback:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  fail:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  vnfSnapshot:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
    RollbackVnfLcmOpOcc.Post.202:
      description: |
        202 ACCEPTED

        Shall be returned when the request has been accepted for processing.
        The response shall have an empty payload body.
      headers:
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the

            corresponding HTTP request has provided an invalid authorization
            token.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    RetryVnfLcmOpOcc.Post.202:
      description: |
        202 ACCEPTED

        Shall be returned when the request has been accepted for processing.
        The response shall have an empty payload body.
      headers:
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the

            corresponding HTTP request has provided an invalid authorization
            token.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    FailVnfLcmOpOcc.Post.200:
      description: >
        200 OK


        Shall be returned when the state of the VNF lifecycle management
        operation occurrence

        has been changed successfully.

        The response bofyshall include a representation of the "Individual VNF
        lifecycle operation occurrence" 

        resource.
      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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            description: >
              This type represents a VNF lifecycle management operation
              occurrence. Shall be set to the value of the "id" attribute in the
              "Grant" representing the associated "Individual Grant", if such
              grant exists.
            type: object
            oneOf:
              - required:
                  - changedInfo
              - required:
                  - modificationsTriggeredByVnfPkgChange
            required:
              - id
              - operationState
              - stateEnteredTime
              - startTime
              - vnfInstanceId
              - operation
              - isAutomaticInvocation
              - isCancelPending
            properties:
              id:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              operationState:
                description: >
                  STARTING: The LCM operation is starting. PROCESSING: The LCM
                  operation is currently in execution. COMPLETED: The 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 stamp. Representation: String formatted according to
                  IETF RFC 3339.
                type: string
                format: date-time
              startTime:
                description: >
                  Date-time stamp. Representation: String formatted according to
                  IETF RFC 3339.
                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. CREATE_SNAPSHOT |
                  Represents the "Create VNF Snapshot" LCM operation.
                  REVERT_TO_SNAPSHOT | Represents the “Revert-To VNF Snapshot"
                  LCM operation. CHANGE_VNFPKG | Represents the "Change current
                  VNF package" LCM operation.
                type: string
                enum:
                  - INSTANTIATE
                  - SCALE
                  - SCALE_TO_LEVEL
                  - CHANGE_FLAVOUR
                  - TERMINATE
                  - HEAL
                  - OPERATE
                  - CHANGE_EXT_CONN
                  - MODIFY_INFO
                  - CREATE_SNAPSHOT
                  - REVERT_TO_SNAPSHOT
                  - CHANGE_VNFPKG
              isAutomaticInvocation:
                description: |
                  The Boolean is a data type having two values (true and false).
                type: boolean
              operationParams:
                description: >
                  Input parameters of the LCM operation. This attribute shall be
                  formatted according to the request data type of the related
                  LCM operation. The following mapping between operationType and
                  the data type of this attribute shall apply: * INSTANTIATE:
                  InstantiateVnfRequest * SCALE: ScaleVnfRequest *
                  SCALE_TO_LEVEL: ScaleVnfToLevelRequest * CHANGE_FLAVOUR:
                  ChangeVnfFlavourRequest * OPERATE: OperateVnfRequest * HEAL:
                  HealVnfRequest * CHANGE_EXT_CONN:
                  ChangeExtVnfConnectivityRequest * TERMINATE:
                  TerminateVnfRequest * MODIFY_INFO: VnfInfoModifications *
                  CREATE_SNAPSHOT: CreateVnfSnapshotRequest *
                  REVERT_TO_SNAPSHOT: RevertToVnfSnapshotRequest *
                  CHANGE_VNFPKG: ChangeCurrentVnfPkgRequest
                type: object
              isCancelPending:
                description: |
                  The Boolean is a data type having two values (true and 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 API consumer 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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        zoneId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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 API consumer 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. For a particular
                      affected VL, there shall be as many "AffectedVirtualLink"
                      entries as needed for signalling the different types of
                      changes, i.e., one per virtual link and change type. For
                      instance, in the case of signaling affected VL instances
                      involving the addition of a particular VL instance with
                      links ports, one "AffectedVirtualLink" entry signals the
                      addition of the VL by using the "changeType" attribute of
                      "AffectedVirtualLink" structure equal to "ADDED", and
                      another "AffectedVirtualLink" entry signals the addition
                      of VNF link ports of the VL by using the "changeType"
                      equal to "LINK_PORT_ADDED".
                    type: array
                    items:
                      description: >
                        This type provides information about added, deleted,
                        modified and temporary VLs, and added or removed VNF
                        link ports.
                      type: object
                      required:
                        - id
                        - vnfVirtualLinkDescId
                        - 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
                        vnfVirtualLinkDescId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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. When
                            signalling the addition (LINK_PORT_ADDED) or removal
                            (LINK_PORT_REMOVED) of VNF link ports, the
                            "networkResource" attribute refers to the affected
                            virtual link instance, not the link port instance.
                            The resource handles of the affected VNF link ports
                            can be found by dereferencing the identifiers in the
                            "vnfLinkPortIds" attribute.
                          type: string
                          enum:
                            - ADDED
                            - REMOVED
                            - MODIFIED
                            - TEMPORARY
                            - LINK_PORT_ADDED
                            - LINK_PORT_REMOVED
                        networkResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        vnfLinkPortIds:
                          description: >
                            Identifiers of the link ports of the affected VL
                            (reference to the vnfLinkPortInfo) related to the
                            change. Each identifier references a
                            "VnfLinkPortInfo" structure. Shall be set when
                            changeType is equal to "LINK_PORT_ADDED" or
                            "LINK_PORT_REMOVED", and the related
                            “VnfLinkPortInfo” structures are present (case
                            "added") or have been present (case "removed") in
                            the “VnfVirtualLinkResourceInfo” or
                            "ExtManagedVirtualLinkInfo" structures that are
                            represented by the "vnfVirtualLinkResourceInfo" or
                            "extManagedVirtualLinkInfo" attribute in the
                            "VnfInstance" structure. When signalling the
                            addition (LINK_PORT_ADDED) or removal
                            (LINK_PORT_REMOVED) of VNF link ports, the
                            "networkResource" attribute refers to the affected
                            virtual link instance, not the link port instance.
                            The resource handles of the affected VNF link ports
                            can be found by dereferencing the identifiers in the
                            "vnfLinkPortIds" attribute.
                          type: array
                          items:
                            description: >
                              An identifier that is unique within a VNF
                              descriptor.
                            type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        zoneId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                  affectedExtLinkPorts:
                    description: >
                      Information about external VNF link ports that were
                      affected during the lifecycle operation. This allows the
                      API consumer 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 and deleted
                        external link ports (link ports attached to external
                        virtual links).
                      type: object
                      required:
                        - id
                        - changeType
                        - extCpInstanceId
                        - resourceHandle
                      properties:
                        id:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        changeType:
                          description: "Signals the type of change. Permitted values: -\tADDED -\tREMOVED\n"
                          type: string
                          enum:
                            - ADDED
                            - REMOVED
                        extCpInstanceId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        resourceHandle:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                  affectedVirtualStorages:
                    description: >
                      Information about virtualised storage instances that were
                      affected during the lifecycle operation. This allows the
                      API consumer 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
                        vnfdId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          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:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        resourceDefinitionId:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        zoneId:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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: |
                      A string defined in IETF RFC 8259.
                    type: string
                  vnfInstanceDescription:
                    description: |
                      A string defined in IETF RFC 8259.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    type: object
                  vimConnectionInfo:
                    description: >
                      If present, this attribute signals modifications the
                      "vimConnectionInfo"  attribute array in "VnfInstance".
                    type: object
                    additionalProperties:
                      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:
                        - vimType
                      properties:
                        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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                  vnfdId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfProvider:
                    description: |
                      A string defined in IETF RFC 8259.
                    type: string
                  vnfProductName:
                    description: |
                      A string defined in IETF RFC 8259.
                    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
                    - currentVnfExtCpData
                  properties:
                    id:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    resourceHandle:
                      required:
                        - 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: >
                            The value set of the "vimLevelResourceType"
                            attribute is within the scope of the VIM or the
                            resource provider and can be used as information
                            that complements the ResourceHandle. This value set
                            is different from the value set of the "type"
                            attribute in the ResourceDefinition (refer to clause
                            9.5.3.2 in SOL003).
                          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:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                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
                    currentVnfExtCpData:
                      description: >
                        Allows the API consumer to read the current CP
                        configuration information for the connection of external
                        CPs to the external virtual link. This attribute
                        reflects the current configuration information that has
                        resulted from merging into this attribute the
                        "VnfExtCpData" information which was passed as part of
                        the "ExtVirtualLinkData" structure in the input of the
                        most recent VNF LCM operation such as
                        "InstantiateVnfRequest",
                        "ChangeExtVnfConnectivityRequest",
                        "ChangeVnfFlavourRequest" or
                        "ChangeCurrentVnfPkgRequest", or has been provided by
                        the NFVO during the granting procedure. If applying such
                        change results in an empty list of "currentVnfExtCpData"
                        structure instances, the affected instance of
                        "ExtVirtualLinkInfo" shall be removed from its parent
                        data structure.
                      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: >
                              Map of instance data that need to be configured on
                              the CP instances created from the respective CPD.
                              The key of the map which identifies the individual
                              VnfExtCpConfig entries is managed by the API
                              consumer. The entries shall be applied by the VNFM
                              according to the rules of JSON Merge Patch (see
                              IETF RFC 7396). Within one VNF instance, all VNFC
                              instances created from a particular VDU have the
                              same external connectivity. Thus, given a
                              particular value of the “cpdId” attribute, there
                              shall be one “cpConfig” entry for each VNFC
                              instance that has been or can be created from a
                              VDU which includes a CPD identified by the “cpdId”
                              attribute. If the cpConfig represents a subport in
                              a trunk, all “cpConfig” entries in this list shall
                              have the same segmentationId, which means they are
                              connected to the same set of external VLs via the
                              trunk. The map entry value shall be set to "null"
                              in order to delete a "VnfExtCpConfig" entry
                              identified by a particular key value from the map,
                              i.e. for the disconnection of an existing external
                              CP instance addressed by cpInstanceId in the
                              deleted map entry from a particular external
                              virtual link, and deletion of that instance in
                              case it represents a subport. Deleting the last
                              key from the map removes the affected instance of
                              the "VnfExtCpData" structure from its parent data
                              structure.
                            type: object
                            additionalProperties:
                              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.
                              anyOf:
                                - required:
                                    - linkPortId
                                - required:
                                    - cpProtocolData
                              type: object
                              properties:
                                parentCpConfigId:
                                  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": 1) Void 2) At least one of
                                    the "linkPortId" and "cpProtocolData"
                                    attributes 
                                       shall be present for an external CP instance representing a subport 
                                       that is to be created, or an external CP instance that is to be created 
                                       by creating the corresponding VNFC or VNF instance during the current or 
                                       a subsequent LCM operation, or for an existing external CP instance 
                                       that is to be re-configured or added to a particular external virtual link.
                                    3) If the "linkPortId" attribute is absent,
                                    the VNFM shall create a
                                       link port.
                                    4) 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.
                                    5) 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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - fixedAddresses
                                          - required:
                                              - numDynamicAddresses
                                          - required:
                                              - ipAddressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present. Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          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
              modificationsTriggeredByVnfPkgChange:
                description: >
                  This type represents attribute modifications that were
                  performed on an "Individual VNF instance" resource when
                  changing the current VNF package. The attributes that can be
                  included consist of those requested to be modified explicitly
                  in the "ChangeCurrentVnfPkgRequest" data structure, and
                  additional attributes of the "VnfInstance" data structure that
                  were modified implicitly during the operation.
                type: object
                properties:
                  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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    type: object
                  vnfdId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfProvider:
                    description: >
                      If present, this attribute signals the new value of the
                      "vnfProvider" attribute in "VnfInstance". If present, this
                      attribute (which depends on the value of the "vnfdId"
                      attribute) was modified implicitly during the related
                      operation, and contains a copy of  the value of he related
                      attribute from the VNFD in the VNF Package identified by
                      the "vnfdId" attribute.
                    type: string
                  vnfProductName:
                    description: >
                      If present, this attribute signals the new value of the
                      "vnfProductName" attribute in "VnfInstance". If present,
                      this attribute (which depends on the value of the "vnfdId"
                      attribute) was modified implicitly during the related
                      operation, and contains a copy of  the value of he related
                      attribute from the VNFD in the VNF Package identified by
                      the "vnfdId" attribute.
                    type: string
                  vnfSoftwareVersion:
                    description: |
                      A version.
                    type: string
                  vnfdVersion:
                    description: |
                      A version.
                    type: string
              vnfSnapshotInfoId:
                description: |
                  An identifier with the intention of being 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 using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  vnfInstance:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  grant:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  cancel:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  retry:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  rollback:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  fail:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  vnfSnapshot:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
    CancelVnfLcmOpOcc.Post.202:
      description: |
        202 ACCEPTED

        Shall be returned when the request has been accepted for processing.
        The response shall have an empty payload body.
      headers:
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the

            corresponding HTTP request has provided an invalid authorization
            token.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    Subscriptions.Post.201:
      description: >
        201 CREATED


        Shall be returned when the subscription has been created successfully.

        The response body shall contain a representation of the created
        "Individual subscription" resource.

        The HTTP response shall include a "Location" HTTP header that points to
        the created

        "Individual subscription" resource.
      headers:
        Location:
          description: |
            The resource URI of the created subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            description: >
              This type represents a subscription related to notifications about
              VNF lifecycle changes.
            type: object
            required:
              - id
              - callbackUri
              - verbosity
              - _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
                    anyOf:
                      - oneOf:
                          - required:
                              - vnfdId
                          - required:
                              - vnfProductsFromProviders
                      - oneOf:
                          - required:
                              - vnfInstanceIds
                          - required:
                              - vnfInstanceNames
                    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. CREATE_SNAPSHOT | Represents
                        the "Create VNF Snapshot" LCM operation.
                        REVERT_TO_SNAPSHOT | Represents the “Revert-To VNF
                        Snapshot" LCM operation. CHANGE_VNFPKG | Represents the
                        "Change current VNF package" LCM operation.
                      type: string
                      enum:
                        - INSTANTIATE
                        - SCALE
                        - SCALE_TO_LEVEL
                        - CHANGE_FLAVOUR
                        - TERMINATE
                        - HEAL
                        - OPERATE
                        - CHANGE_EXT_CONN
                        - MODIFY_INFO
                        - CREATE_SNAPSHOT
                        - REVERT_TO_SNAPSHOT
                        - CHANGE_VNFPKG
                  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: >
                        STARTING: The LCM operation is starting. PROCESSING: The
                        LCM operation is currently in execution. COMPLETED: The
                        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
              verbosity:
                description: >
                  The enumeration LcmOpOccNotificationVerbosityType provides
                  values to control the verbosity of LCM operation occurrence
                  notifications. * FULL: This signals a full notification which
                  contains all change details. * SHORT: This signals a short
                  notification which omits large-volume change details to reduce
                  the size of data to
                           be sent via the notification mechanism.
                type: string
                enum:
                  - FULL
                  - SHORT
              _links:
                description: |
                  Links to resources related to this resource.
                type: object
                required:
                  - self
                properties:
                  self:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
    Subscriptions.Get.200:
      description: >
        200 OK


        Shall be returned when the list of subscriptions has been queried
        successfully.

        The response body shall contain in an array the representations of all
        active subscriptions of

        the functional block that invokes the method, i.e. zero or more
        representations of lifecycle change

        notification subscriptions as defined in clause 5.5.2.16.

        If the "filter" URI parameter was supplied in the request, the data in
        the response body shall have been

        transformed according to the rules specified in clause 5.2.2 of ETSI GS
        NFV-SOL 013.

        If the VNFM supports alternative 2 (paging) according to clause
        5.4.7.2.1 of ETSI GS NFV-SOL 013

        for this resource, inclusion of the Link HTTP header in this response
        shall follow the provisions

        in clause 4.7.2.3.5.4.2.3 of ETSI GS NFV-SOL 013.
      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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
        Link:
          description: >
            Reference to other resources. Used for paging in the present
            document, see clause 4.7.2.1.
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            description: >
              This type represents a subscription related to notifications about
              VNF lifecycle changes.
            type: object
            required:
              - id
              - callbackUri
              - verbosity
              - _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
                    anyOf:
                      - oneOf:
                          - required:
                              - vnfdId
                          - required:
                              - vnfProductsFromProviders
                      - oneOf:
                          - required:
                              - vnfInstanceIds
                          - required:
                              - vnfInstanceNames
                    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. CREATE_SNAPSHOT | Represents
                        the "Create VNF Snapshot" LCM operation.
                        REVERT_TO_SNAPSHOT | Represents the “Revert-To VNF
                        Snapshot" LCM operation. CHANGE_VNFPKG | Represents the
                        "Change current VNF package" LCM operation.
                      type: string
                      enum:
                        - INSTANTIATE
                        - SCALE
                        - SCALE_TO_LEVEL
                        - CHANGE_FLAVOUR
                        - TERMINATE
                        - HEAL
                        - OPERATE
                        - CHANGE_EXT_CONN
                        - MODIFY_INFO
                        - CREATE_SNAPSHOT
                        - REVERT_TO_SNAPSHOT
                        - CHANGE_VNFPKG
                  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: >
                        STARTING: The LCM operation is starting. PROCESSING: The
                        LCM operation is currently in execution. COMPLETED: The
                        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
              verbosity:
                description: >
                  The enumeration LcmOpOccNotificationVerbosityType provides
                  values to control the verbosity of LCM operation occurrence
                  notifications. * FULL: This signals a full notification which
                  contains all change details. * SHORT: This signals a short
                  notification which omits large-volume change details to reduce
                  the size of data to
                           be sent via the notification mechanism.
                type: string
                enum:
                  - FULL
                  - SHORT
              _links:
                description: |
                  Links to resources related to this resource.
                type: object
                required:
                  - self
                properties:
                  self:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
    IndividualSubscription.Get.200:
      description: >
        200 OK


        Shall be returned when information about an individual subscription has
        been read successfully.

        The response body shall contain a representation of the "Individual
        subscription" resource.
      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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            description: >
              This type represents a subscription related to notifications about
              VNF lifecycle changes.
            type: object
            required:
              - id
              - callbackUri
              - verbosity
              - _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
                    anyOf:
                      - oneOf:
                          - required:
                              - vnfdId
                          - required:
                              - vnfProductsFromProviders
                      - oneOf:
                          - required:
                              - vnfInstanceIds
                          - required:
                              - vnfInstanceNames
                    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. CREATE_SNAPSHOT | Represents
                        the "Create VNF Snapshot" LCM operation.
                        REVERT_TO_SNAPSHOT | Represents the “Revert-To VNF
                        Snapshot" LCM operation. CHANGE_VNFPKG | Represents the
                        "Change current VNF package" LCM operation.
                      type: string
                      enum:
                        - INSTANTIATE
                        - SCALE
                        - SCALE_TO_LEVEL
                        - CHANGE_FLAVOUR
                        - TERMINATE
                        - HEAL
                        - OPERATE
                        - CHANGE_EXT_CONN
                        - MODIFY_INFO
                        - CREATE_SNAPSHOT
                        - REVERT_TO_SNAPSHOT
                        - CHANGE_VNFPKG
                  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: >
                        STARTING: The LCM operation is starting. PROCESSING: The
                        LCM operation is currently in execution. COMPLETED: The
                        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
              verbosity:
                description: >
                  The enumeration LcmOpOccNotificationVerbosityType provides
                  values to control the verbosity of LCM operation occurrence
                  notifications. * FULL: This signals a full notification which
                  contains all change details. * SHORT: This signals a short
                  notification which omits large-volume change details to reduce
                  the size of data to
                           be sent via the notification mechanism.
                type: string
                enum:
                  - FULL
                  - SHORT
              _links:
                description: |
                  Links to resources related to this resource.
                type: object
                required:
                  - self
                properties:
                  self:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
    IndividualSubscription.Delete.204:
      description: >
        204 NO CONTENT


        Shall be returned when the "Individual subscription" resource has been
        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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    CreateVnfSnapshotTask.Post.202:
      description: >
        202 ACCEPTED


        Shall be returned when 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 subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    RevertToVnfSnapshotTask.Post.202:
      description: >
        202 ACCEPTED


        Shall be returned when 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 subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    VnfSnapshots.Post.201:
      description: >
        201 CREATED


        Shall be returned when an "Individual VNF snapshot" resource has been
        created 

        successfully.

        The response body shall contain a representation of the new "Individual
        VNF snapshot" 

        resource, as defined in clause 5.5.2.22.

        The HTTP response shall include a "Location" HTTP header that contains
        the resource URI 

        of the "Individual VNF snapshot" resource.
      headers:
        Location:
          description: |
            The resource URI of the created subscription resource.
          style: simple
          explode: false
          schema:
            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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            description: >
              This type represents an "Individual VNF snapshot" resource. It
              shall comply with the provisions defined in table 5.5.2.22-1.
            type: object
            required:
              - id
              - _links
            properties:
              id:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              vnfSnapshotPkgId:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              vnfSnapshot:
                description: >
                  This type represents a VNF snapshot. It shall comply with the
                  provisions defined in table 5.5.2.23-1.
                type: object
                required:
                  - id
                  - vnfInstanceId
                  - triggeredAt
                  - vnfdId
                  - vnfInfo
                  - vnfcSnapshots
                properties:
                  id:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfInstanceId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  creationStartedAt:
                    description: >
                      Date-time stamp. Representation: String formatted
                      according to IETF RFC 3339.
                    type: string
                    format: date-time
                  creationFinishedAt:
                    description: >
                      Date-time stamp. Representation: String formatted
                      according to IETF RFC 3339.
                    type: string
                    format: date-time
                  vnfdId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfInstance:
                    description: |
                      This type represents a VNF instance.
                    type: object
                    required:
                      - id
                      - vnfdId
                      - vnfProvider
                      - vnfProductName
                      - vnfSoftwareVersion
                      - vnfdVersion
                      - 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
                      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 keyvalue pairs is represented as an
                          object. It shall comply with the provisions defined in
                          clause 4 of IETF RFC 8259. In the following example, a
                          list of key-value pairs with four keys ("aString",
                          "aNumber", "anArray" and "anObject") is provided to
                          illustrate that the values associated with different
                          keys can be of different type.
                        type: object
                      vimConnectionInfo:
                        description: >
                          Information about VIM connections to be used for
                          managing the resources for the VNF instance. The keys
                          of the map, each of which identifies information about
                          a particular VIM connection, are managed by the NFVO
                          and referenced from other data structures via the
                          "vimConnectionId" attribute. This attribute shall only
                          be supported and present if VNF-related resource
                          management in direct mode is pplicable. This attribute
                          can be modified with the PATCH method.
                        type: object
                        additionalProperties:
                          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:
                            - vimType
                          properties:
                            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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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:
                            description: >
                              STARTED: The VNF instance is up and running.
                              STOPPED: The VNF instance has been shut down.
                            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. This
                              attribute shall be present if the VNF supports
                              scaling. See clause B.2 for an explanation of VNF
                              scaling.
                            type: array
                            items:
                              required:
                                - aspectId
                                - scaleLevel
                              type: object
                              properties:
                                aspectId:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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
                          maxScaleLevels:
                            description: >
                              Maximum allowed scale levels of the VNF, one entry
                              per aspect. This attribute shall be present if the
                              VNF supports scaling.
                            type: array
                            items:
                              required:
                                - aspectId
                                - scaleLevel
                              type: object
                              properties:
                                aspectId:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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. When trunking is enabled, the list
                              of entries includes both, external CPs
                              corresponding to parent ports of a trunk, and
                              external CPs associated to sub-ports of a trunk.
                            type: array
                            minItems: 1
                            items:
                              description: >
                                This type represents information about an
                                external CP of a VNF. It shall comply with the
                                provisions defined in table 5.5.3.25 1.
                              type: object
                              required:
                                - id
                                - cpdId
                                - cpConfigId
                                - cpProtocolInfo
                              oneOf:
                                - required:
                                    - associatedVnfcCpId
                                - required:
                                    - associatedVnfVirtualLinkId
                              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
                                cpConfigId:
                                  description: >
                                    An identifier that is unique for the
                                    respective type within a VNF instance, but
                                    may not be globally unique.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    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.
                                    type: object
                                    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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - addresses
                                          - required:
                                              - addressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present.  Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          ipAddresses:
                                            description: >
                                              Addresses assigned to the CP instance.
                                              Each entry represents IP addresses
                                              assigned by fixed or dynamic IP address
                                              assignment per subnet. At least one of
                                              "macAddress" or "ipAddresses" shall be
                                              present.
                                            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). Exactly one of "addresses" or
                                                    "addressRange" 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
                                                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 identifier maintained by the VIM or
                                                    other resource provider. It is expected
                                                    to be unique within the VIM instance.
                                                  type: string
                                extLinkPortId:
                                  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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  type: object
                                associatedVnfcCpId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                associatedVnfVirtualLinkId:
                                  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
                                - currentVnfExtCpData
                              properties:
                                id:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                resourceHandle:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                currentVnfExtCpData:
                                  description: >
                                    Allows the API consumer to read the current
                                    CP configuration information for the
                                    connection of external CPs to the external
                                    virtual link. This attribute reflects the
                                    current configuration information that has
                                    resulted from merging into this attribute
                                    the "VnfExtCpData" information which was
                                    passed as part of the "ExtVirtualLinkData"
                                    structure in the input of the most recent
                                    VNF LCM operation such as
                                    "InstantiateVnfRequest",
                                    "ChangeExtVnfConnectivityRequest",
                                    "ChangeVnfFlavourRequest" or
                                    "ChangeCurrentVnfPkgRequest", or has been
                                    provided by the NFVO during the granting
                                    procedure. If applying such change results
                                    in an empty list of "currentVnfExtCpData"
                                    structure instances, the affected instance
                                    of "ExtVirtualLinkInfo" shall be removed
                                    from its parent data structure.
                                  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: >
                                          Map of instance data that need to be
                                          configured on the CP instances created
                                          from the respective CPD. The key of the
                                          map which identifies the individual
                                          VnfExtCpConfig entries is managed by the
                                          API consumer. The entries shall be
                                          applied by the VNFM according to the
                                          rules of JSON Merge Patch (see IETF RFC
                                          7396). Within one VNF instance, all VNFC
                                          instances created from a particular VDU
                                          have the same external connectivity.
                                          Thus, given a particular value of the
                                          “cpdId” attribute, there shall be one
                                          “cpConfig” entry for each VNFC instance
                                          that has been or can be created from a
                                          VDU which includes a CPD identified by
                                          the “cpdId” attribute. If the cpConfig
                                          represents a subport in a trunk, all
                                          “cpConfig” entries in this list shall
                                          have the same segmentationId, which
                                          means they are connected to the same set
                                          of external VLs via the trunk. The map
                                          entry value shall be set to "null" in
                                          order to delete a "VnfExtCpConfig" entry
                                          identified by a particular key value
                                          from the map, i.e. for the disconnection
                                          of an existing external CP instance
                                          addressed by cpInstanceId in the deleted
                                          map entry from a particular external
                                          virtual link, and deletion of that
                                          instance in case it represents a
                                          subport. Deleting the last key from the
                                          map removes the affected instance of the
                                          "VnfExtCpData" structure from its parent
                                          data structure.
                                        type: object
                                        additionalProperties:
                                          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.
                                          anyOf:
                                            - required:
                                                - linkPortId
                                            - required:
                                                - cpProtocolData
                                          type: object
                                          properties:
                                            parentCpConfigId:
                                              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": 1) Void 2) At least
                                                one of the "linkPortId" and
                                                "cpProtocolData" attributes 
                                                   shall be present for an external CP instance representing a subport 
                                                   that is to be created, or an external CP instance that is to be created 
                                                   by creating the corresponding VNFC or VNF instance during the current or 
                                                   a subsequent LCM operation, or for an existing external CP instance 
                                                   that is to be re-configured or added to a particular external virtual link.
                                                3) If the "linkPortId" attribute is
                                                absent, the VNFM shall create a
                                                   link port.
                                                4) 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.
                                                5) 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
                                                    anyOf:
                                                      - required:
                                                          - macAddress
                                                      - required:
                                                          - ipAddresses
                                                    oneOf:
                                                      - required:
                                                          - fixedAddresses
                                                      - required:
                                                          - numDynamicAddresses
                                                      - required:
                                                          - ipAddressRange
                                                    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
                                                      segmentationId:
                                                        description: >
                                                          Identification of the network segment to
                                                          which the Cp instance connects to. If
                                                          the Cp instance represents a subport in
                                                          a trunk, segmentationId shall be
                                                          present. Otherwise it shall not be
                                                          present. Depending on the NFVI
                                                          networking infrastructure, the
                                                          segmentationId may indicate the actual
                                                          network segment value (e.g. vlan Id,
                                                          Vxlan segmentation id, etc.) used in the
                                                          transport header of the packets or it
                                                          may be an identifier used between the
                                                          application and the NFVI networking
                                                          infrastructure to identify the network
                                                          sub-interface of the trunk port in
                                                          question. In the latter case the NFVI
                                                          infrastructure will map this local
                                                          segmentationId to whatever
                                                          segmentationId is actually used by the
                                                          NFVI’s transport technology.
                                                        type: string
                                                      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
                          extManagedVirtualLinkInfo:
                            description: >
                              Information about the externally-managed internal
                              VLs of the VNF instance.

                              NOTE: It is possible to have several
                              ExtManagedVirtualLinkInfo for the same VNF
                              internal VL in case of a multi-site VNF spanning
                              several VIMs. The set of ExtManagedVirtualLinkInfo
                              corresponding to the same VNF internal VL shall
                              indicate so by referencing to the same
                              VnfVirtualLinkDesc and externally-managed
                              multi-site VL instance (refer to clause 5.5.3.3).
                            type: array
                            items:
                              type: object
                              required:
                                - id
                                - vnfVirtualLinkDescId
                                - networkResource
                              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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                networkResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                      cpInstanceType:
                                        description: >
                                          Type of the CP instance that is
                                          identified by cpInstanceId. Shall be
                                          present if "cpInstanceId" is present,
                                          and shall be absent otherwise. Permitted
                                          values: VNFC_CP: The link port is
                                          connected to a VNFC CP EXT_CP: The link
                                          port is associated to an external CP.
                                        type: string
                                        enum:
                                          - VNFC_CP
                                          - EXT_CP
                                extManagedMultisiteVirtualLinkId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                          monitoringParameters:
                            description: |
                              Active monitoring parameters.
                            type: array
                            items:
                              type: object
                              required:
                                - id
                                - performanceMetric
                              properties:
                                id:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                name:
                                  description: >
                                    Human readable name of the monitoring
                                    parameter, as defined in the VNFD.
                                  type: string
                                performanceMetric:
                                  description: >
                                    Performance metric that is monitored. This
                                    attribute shall contain the related
                                    "Measurement Name" value as defined in
                                    clause 7.2 of ETSI GS NFV-IFA 027.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                computeResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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: >
                                    All the CPs of the VNFC instance. Shall be
                                    present when that particular CP of the VNFC
                                    instance is exposed as an external CP of the
                                    VNF instance or is connected to an external
                                    CP of the VNF instance. A VNFC CP is
                                    "connected to" an external CP if the VNFC CP
                                    is connected to an internal VL that exposes
                                    an external CP. A VNFC CP is "exposed as" an
                                    external CP if it is connected directly to
                                    an external VL. 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. May be omitted if the VNFC CP is
                                          exposed as an external CP. The
                                          information can be omitted because it is
                                          already available as part of the
                                          external CP information.
                                        type: array
                                        items:
                                          description: >
                                            This type describes the protocol
                                            layer(s) that a CP uses together with
                                            protocol-related information, like
                                            addresses.
                                          type: object
                                          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
                                              anyOf:
                                                - required:
                                                    - macAddress
                                                - required:
                                                    - ipAddresses
                                              oneOf:
                                                - required:
                                                    - addresses
                                                - required:
                                                    - addressRange
                                              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
                                                segmentationId:
                                                  description: >
                                                    Identification of the network segment to
                                                    which the Cp instance connects to. If
                                                    the Cp instance represents a subport in
                                                    a trunk, segmentationId shall be
                                                    present.  Otherwise it shall not be
                                                    present. Depending on the NFVI
                                                    networking infrastructure, the
                                                    segmentationId may indicate the actual
                                                    network segment value (e.g. vlan Id,
                                                    Vxlan segmentation id, etc.) used in the
                                                    transport header of the packets or it
                                                    may be an identifier used between the
                                                    application and the NFVI networking
                                                    infrastructure to identify the network
                                                    sub-interface of the trunk port in
                                                    question. In the latter case the NFVI
                                                    infrastructure will map this local
                                                    segmentationId to whatever
                                                    segmentationId is actually used by the
                                                    NFVI’s transport technology.
                                                  type: string
                                                ipAddresses:
                                                  description: >
                                                    Addresses assigned to the CP instance.
                                                    Each entry represents IP addresses
                                                    assigned by fixed or dynamic IP address
                                                    assignment per subnet. At least one of
                                                    "macAddress" or "ipAddresses" shall be
                                                    present.
                                                  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). Exactly one of "addresses" or
                                                          "addressRange" 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
                                                      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 identifier maintained by the VIM or
                                                          other resource provider. It is expected
                                                          to be unique within the VIM instance.
                                                        type: string
                                      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 keyvalue pairs is represented as an
                                          object. It shall comply with the
                                          provisions defined in clause 4 of IETF
                                          RFC 8259. In the following example, a
                                          list of key-value pairs with four keys
                                          ("aString", "aNumber", "anArray" and
                                          "anObject") is provided to illustrate
                                          that the values associated with
                                          different keys can be of different type.
                                        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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                networkResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                      cpInstanceType:
                                        description: >
                                          Type of the CP instance that is
                                          identified by cpInstanceId. Shall be
                                          present if "cpInstanceId" is present,
                                          and shall be absent otherwise. Permitted
                                          values: VNFC_CP: The link port is
                                          connected to a VNFC CP EXT_CP: The link
                                          port is associated to an external CP.
                                        type: string
                                        enum:
                                          - VNFC_CP
                                          - EXT_CP
                                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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                storageResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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 keyvalue pairs is represented as an
                          object. It shall comply with the provisions defined in
                          clause 4 of IETF RFC 8259. In the following example, a
                          list of key-value pairs with four keys ("aString",
                          "aNumber", "anArray" and "anObject") is provided to
                          illustrate that the values associated with different
                          keys can be of different type.
                        type: object
                      extensions:
                        description: >
                          Additional VNF-specific attributes that affect the
                          lifecycle management of this VNF instance. These
                          attributes represent values that are stored
                          persistently in the VnfInstance structure for
                          consumption by the VNFM or the lifecycle management
                          scripts during the execution of VNF lifecycle
                          management operations. All extensions that are allowed
                          for the VNF are declared in the VNFD. The declaration
                          of an extension in the VNFD contains information on
                          whether its presence is optional or required, and
                          optionally can specify an initial value. See note 2
                          and note 4. The VNFM shall reject requests to write
                          extension attributes that are not declared in the VNFD
                          with a "422 Unprocessable entity" error response as
                          defined in clause 6.4 of ETSI GS NFV-SOL 013.
                          Modifying the values of these attributes has no direct
                          effect on the VNF instance; however, the modified
                          attribute values can be considered during subsequent
                          VNF lifecycle management operations, which means that
                          the modified values can indirectly affect the
                          configuration of the VNF instance. These attributes
                          can be initialized with default values from the VNFD.
                          These attributes can be modified with values passed in
                          the request structures of certain LCM operations, such
                          as the InstantiateVnfRequest structure. Further, these
                          attributes can be created, modified or deleted with
                          the PATCH method.

                          NOTE: Upon creation of the VnfInstance structure, the
                          VNFM shall create and initialize all child attributes
                          of "vnfConfigurableProperties", "metadata" and
                          "extensions" that were declared in the VNFD with a
                          defined initial value. The defined initial values can
                          be declared in the VNFD, and/or, in case of
                          "metadata", obtained from the "CreateVnfRequest"
                          structure. Child attributes of
                          "vnfConfigurableProperties", "metadata" and
                          "extensions" that have no defineddeclared initial
                          value shall not be created, in order to be consistent
                          with the semantics of the JSON Merge Patch method (see
                          IETF RFC 7396) that interprets null values as deletion
                          request.
                      _links:
                        description: |
                          Links to resources related to this resource.
                        type: object
                        required:
                          - self
                        properties:
                          self:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          indicators:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          instantiate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          terminate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          scale:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          scaleToLevel:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          changeFlavour:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          heal:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          operate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          changeExtConn:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          createSnapshot:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          revertToSnapshot:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                  vnfcSnapshots:
                    description: >
                      Information about VNFC snapshots constituting this VNF
                      snapshot.
                    type: array
                    items:
                      description: |
                        This type represents a VNFC snapshot.
                      type: object
                      required:
                        - id
                        - vnfcInstanceId
                        - triggeredAt
                        - vnfcResourceId
                      properties:
                        id:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        vnfcInstanceId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        creationStartedAt:
                          description: >
                            Date-time stamp. Representation: String formatted
                            according to IETF RFC 3339.
                          type: string
                          format: date-time
                        creationFinishedAt:
                          description: >
                            Date-time stamp. Representation: String formatted
                            according to IETF RFC 3339.
                          type: string
                          format: date-time
                        vnfcResourceInfoId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        computeSnapshotResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        storageSnapshotResources:
                          description: >
                            Mapping of the storage resources associated to the
                            VNFC with the storage snapshot resources.
                          type: array
                          items:
                            type: object
                            required:
                              - storageResourceId
                            properties:
                              storageResourceId:
                                description: >
                                  An identifier that is unique for the
                                  respective type within a VNF instance, but may
                                  not be globally unique.
                                type: string
                              storageSnapshotResource:
                                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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                type: object
                        userDefinedData:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                  vnfStateSnapshotInfo:
                    description: >
                      This type represents information about VNF-specific state
                      snapshot data.
                    type: object
                    required:
                      - checksum
                      - isEncrypted
                    properties:
                      checksum:
                        description: >
                          Checksum of the VNF state snapshot file. Hash
                          algorithms applicable to VNF snapshot package
                          artifacts are defined in ETSI GS NFV-SOL 010. $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/Checksum"
                      isEncrypted:
                        description: >
                          Reflects whether the VNF state snapshot content is
                          encrypted (true) or not (false). $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/Boolean"
                      metadata:
                        description: >
                          The metadata with additional information such as
                          content type, size, creation date, etc. $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
                  userDefinedData:
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 using an
                          absolute URI.
                        type: object
                        required:
                          - href
                        properties:
                          href:
                            description: |
                              String formatted according to IETF RFC 3986.
                            type: string
                      vnfStateSnapshot:
                        description: >
                          This type represents a link to a resource using an
                          absolute URI.
                        type: object
                        required:
                          - href
                        properties:
                          href:
                            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 using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  takenFrom:
                    description: >
                      This type represents a link to a resource using an
                      absolute URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
    VnfSnapshots.Get.200:
      description: >
        200 OK


        Shall be returned when information about zero or more VNF snapshots was
        queried successfully.

        The response body shall contain in an array the representations of zero
        or more 

        "Individual VNF snapshot" resources, as defined in clause 5.5.2.22.

        If the VNFM supports alternative 2 (paging) according to clause 5.4.2.1
        of ETSI GS NFV-SOL 013

        for this resource, inclusion of the Link HTTP header in this response
        shall follow the provisions 

        in clause 5.4.2.3 of ETSI GS NFV-SOL 013.
      headers:
        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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
        Link:
          description: >
            Reference to other resources. Used for paging in the present
            document, see clause 4.7.2.1.
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            type: array
            items:
              description: >
                This type represents an "Individual VNF snapshot" resource. It
                shall comply with the provisions defined in table 5.5.2.22-1.
              type: object
              required:
                - id
                - _links
              properties:
                id:
                  description: |
                    An identifier with the intention of being globally unique.
                  type: string
                vnfSnapshotPkgId:
                  description: |
                    An identifier with the intention of being globally unique.
                  type: string
                vnfSnapshot:
                  description: >
                    This type represents a VNF snapshot. It shall comply with
                    the provisions defined in table 5.5.2.23-1.
                  type: object
                  required:
                    - id
                    - vnfInstanceId
                    - triggeredAt
                    - vnfdId
                    - vnfInfo
                    - vnfcSnapshots
                  properties:
                    id:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    vnfInstanceId:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    creationStartedAt:
                      description: >
                        Date-time stamp. Representation: String formatted
                        according to IETF RFC 3339.
                      type: string
                      format: date-time
                    creationFinishedAt:
                      description: >
                        Date-time stamp. Representation: String formatted
                        according to IETF RFC 3339.
                      type: string
                      format: date-time
                    vnfdId:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    vnfInstance:
                      description: |
                        This type represents a VNF instance.
                      type: object
                      required:
                        - id
                        - vnfdId
                        - vnfProvider
                        - vnfProductName
                        - vnfSoftwareVersion
                        - vnfdVersion
                        - 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
                        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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                        vimConnectionInfo:
                          description: >
                            Information about VIM connections to be used for
                            managing the resources for the VNF instance. The
                            keys of the map, each of which identifies
                            information about a particular VIM connection, are
                            managed by the NFVO and referenced from other data
                            structures via the "vimConnectionId" attribute. This
                            attribute shall only be supported and present if
                            VNF-related resource management in direct mode is
                            pplicable. This attribute can be modified with the
                            PATCH method.
                          type: object
                          additionalProperties:
                            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:
                              - vimType
                            properties:
                              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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                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:
                              description: >
                                STARTED: The VNF instance is up and running.
                                STOPPED: The VNF instance has been shut down.
                              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. This
                                attribute shall be present if the VNF supports
                                scaling. See clause B.2 for an explanation of
                                VNF scaling.
                              type: array
                              items:
                                required:
                                  - aspectId
                                  - scaleLevel
                                type: object
                                properties:
                                  aspectId:
                                    description: >
                                      An identifier that is unique within a VNF
                                      descriptor.
                                    type: string
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    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
                            maxScaleLevels:
                              description: >
                                Maximum allowed scale levels of the VNF, one
                                entry per aspect. This attribute shall be
                                present if the VNF supports scaling.
                              type: array
                              items:
                                required:
                                  - aspectId
                                  - scaleLevel
                                type: object
                                properties:
                                  aspectId:
                                    description: >
                                      An identifier that is unique within a VNF
                                      descriptor.
                                    type: string
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    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. When trunking is enabled, the
                                list of entries includes both, external CPs
                                corresponding to parent ports of a trunk, and
                                external CPs associated to sub-ports of a trunk.
                              type: array
                              minItems: 1
                              items:
                                description: >
                                  This type represents information about an
                                  external CP of a VNF. It shall comply with the
                                  provisions defined in table 5.5.3.25 1.
                                type: object
                                required:
                                  - id
                                  - cpdId
                                  - cpConfigId
                                  - cpProtocolInfo
                                oneOf:
                                  - required:
                                      - associatedVnfcCpId
                                  - required:
                                      - associatedVnfVirtualLinkId
                                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
                                  cpConfigId:
                                    description: >
                                      An identifier that is unique for the
                                      respective type within a VNF instance, but
                                      may not be globally unique.
                                    type: string
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      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.
                                      type: object
                                      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
                                          anyOf:
                                            - required:
                                                - macAddress
                                            - required:
                                                - ipAddresses
                                          oneOf:
                                            - required:
                                                - addresses
                                            - required:
                                                - addressRange
                                          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
                                            segmentationId:
                                              description: >
                                                Identification of the network segment to
                                                which the Cp instance connects to. If
                                                the Cp instance represents a subport in
                                                a trunk, segmentationId shall be
                                                present.  Otherwise it shall not be
                                                present. Depending on the NFVI
                                                networking infrastructure, the
                                                segmentationId may indicate the actual
                                                network segment value (e.g. vlan Id,
                                                Vxlan segmentation id, etc.) used in the
                                                transport header of the packets or it
                                                may be an identifier used between the
                                                application and the NFVI networking
                                                infrastructure to identify the network
                                                sub-interface of the trunk port in
                                                question. In the latter case the NFVI
                                                infrastructure will map this local
                                                segmentationId to whatever
                                                segmentationId is actually used by the
                                                NFVI’s transport technology.
                                              type: string
                                            ipAddresses:
                                              description: >
                                                Addresses assigned to the CP instance.
                                                Each entry represents IP addresses
                                                assigned by fixed or dynamic IP address
                                                assignment per subnet. At least one of
                                                "macAddress" or "ipAddresses" shall be
                                                present.
                                              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). Exactly one of "addresses" or
                                                      "addressRange" 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
                                                  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 identifier maintained by the VIM or
                                                      other resource provider. It is expected
                                                      to be unique within the VIM instance.
                                                    type: string
                                  extLinkPortId:
                                    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
                                      keyvalue pairs is represented as an
                                      object. It shall comply with the
                                      provisions defined in clause 4 of IETF RFC
                                      8259. In the following example, a list of
                                      key-value pairs with four keys ("aString",
                                      "aNumber", "anArray" and "anObject") is
                                      provided to illustrate that the values
                                      associated with different keys can be of
                                      different type.
                                    type: object
                                  associatedVnfcCpId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  associatedVnfVirtualLinkId:
                                    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
                                  - currentVnfExtCpData
                                properties:
                                  id:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  resourceHandle:
                                    required:
                                      - 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: >
                                          The value set of the
                                          "vimLevelResourceType" attribute is
                                          within the scope of the VIM or the
                                          resource provider and can be used as
                                          information that complements the
                                          ResourceHandle. This value set is
                                          different from the value set of the
                                          "type" attribute in the
                                          ResourceDefinition (refer to clause
                                          9.5.3.2 in SOL003).
                                        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:
                                            - 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: >
                                                The value set of the
                                                "vimLevelResourceType" attribute is
                                                within the scope of the VIM or the
                                                resource provider and can be used as
                                                information that complements the
                                                ResourceHandle. This value set is
                                                different from the value set of the
                                                "type" attribute in the
                                                ResourceDefinition (refer to clause
                                                9.5.3.2 in SOL003).
                                              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
                                  currentVnfExtCpData:
                                    description: >
                                      Allows the API consumer to read the
                                      current CP configuration information for
                                      the connection of external CPs to the
                                      external virtual link. This attribute
                                      reflects the current configuration
                                      information that has resulted from merging
                                      into this attribute the "VnfExtCpData"
                                      information which was passed as part of
                                      the "ExtVirtualLinkData" structure in the
                                      input of the most recent VNF LCM operation
                                      such as "InstantiateVnfRequest",
                                      "ChangeExtVnfConnectivityRequest",
                                      "ChangeVnfFlavourRequest" or
                                      "ChangeCurrentVnfPkgRequest", or has been
                                      provided by the NFVO during the granting
                                      procedure. If applying such change results
                                      in an empty list of "currentVnfExtCpData"
                                      structure instances, the affected instance
                                      of "ExtVirtualLinkInfo" shall be removed
                                      from its parent data structure.
                                    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: >
                                            Map of instance data that need to be
                                            configured on the CP instances created
                                            from the respective CPD. The key of the
                                            map which identifies the individual
                                            VnfExtCpConfig entries is managed by the
                                            API consumer. The entries shall be
                                            applied by the VNFM according to the
                                            rules of JSON Merge Patch (see IETF RFC
                                            7396). Within one VNF instance, all VNFC
                                            instances created from a particular VDU
                                            have the same external connectivity.
                                            Thus, given a particular value of the
                                            “cpdId” attribute, there shall be one
                                            “cpConfig” entry for each VNFC instance
                                            that has been or can be created from a
                                            VDU which includes a CPD identified by
                                            the “cpdId” attribute. If the cpConfig
                                            represents a subport in a trunk, all
                                            “cpConfig” entries in this list shall
                                            have the same segmentationId, which
                                            means they are connected to the same set
                                            of external VLs via the trunk. The map
                                            entry value shall be set to "null" in
                                            order to delete a "VnfExtCpConfig" entry
                                            identified by a particular key value
                                            from the map, i.e. for the disconnection
                                            of an existing external CP instance
                                            addressed by cpInstanceId in the deleted
                                            map entry from a particular external
                                            virtual link, and deletion of that
                                            instance in case it represents a
                                            subport. Deleting the last key from the
                                            map removes the affected instance of the
                                            "VnfExtCpData" structure from its parent
                                            data structure.
                                          type: object
                                          additionalProperties:
                                            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.
                                            anyOf:
                                              - required:
                                                  - linkPortId
                                              - required:
                                                  - cpProtocolData
                                            type: object
                                            properties:
                                              parentCpConfigId:
                                                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": 1) Void 2) At least
                                                  one of the "linkPortId" and
                                                  "cpProtocolData" attributes 
                                                     shall be present for an external CP instance representing a subport 
                                                     that is to be created, or an external CP instance that is to be created 
                                                     by creating the corresponding VNFC or VNF instance during the current or 
                                                     a subsequent LCM operation, or for an existing external CP instance 
                                                     that is to be re-configured or added to a particular external virtual link.
                                                  3) If the "linkPortId" attribute is
                                                  absent, the VNFM shall create a
                                                     link port.
                                                  4) 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.
                                                  5) 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
                                                      anyOf:
                                                        - required:
                                                            - macAddress
                                                        - required:
                                                            - ipAddresses
                                                      oneOf:
                                                        - required:
                                                            - fixedAddresses
                                                        - required:
                                                            - numDynamicAddresses
                                                        - required:
                                                            - ipAddressRange
                                                      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
                                                        segmentationId:
                                                          description: >
                                                            Identification of the network segment to
                                                            which the Cp instance connects to. If
                                                            the Cp instance represents a subport in
                                                            a trunk, segmentationId shall be
                                                            present. Otherwise it shall not be
                                                            present. Depending on the NFVI
                                                            networking infrastructure, the
                                                            segmentationId may indicate the actual
                                                            network segment value (e.g. vlan Id,
                                                            Vxlan segmentation id, etc.) used in the
                                                            transport header of the packets or it
                                                            may be an identifier used between the
                                                            application and the NFVI networking
                                                            infrastructure to identify the network
                                                            sub-interface of the trunk port in
                                                            question. In the latter case the NFVI
                                                            infrastructure will map this local
                                                            segmentationId to whatever
                                                            segmentationId is actually used by the
                                                            NFVI’s transport technology.
                                                          type: string
                                                        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
                            extManagedVirtualLinkInfo:
                              description: >
                                Information about the externally-managed
                                internal VLs of the VNF instance.

                                NOTE: It is possible to have several
                                ExtManagedVirtualLinkInfo for the same VNF
                                internal VL in case of a multi-site VNF spanning
                                several VIMs. The set of
                                ExtManagedVirtualLinkInfo corresponding to the
                                same VNF internal VL shall indicate so by
                                referencing to the same VnfVirtualLinkDesc and
                                externally-managed multi-site VL instance (refer
                                to clause 5.5.3.3).
                              type: array
                              items:
                                type: object
                                required:
                                  - id
                                  - vnfVirtualLinkDescId
                                  - networkResource
                                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
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  networkResource:
                                    required:
                                      - 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: >
                                          The value set of the
                                          "vimLevelResourceType" attribute is
                                          within the scope of the VIM or the
                                          resource provider and can be used as
                                          information that complements the
                                          ResourceHandle. This value set is
                                          different from the value set of the
                                          "type" attribute in the
                                          ResourceDefinition (refer to clause
                                          9.5.3.2 in SOL003).
                                        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:
                                            - 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: >
                                                The value set of the
                                                "vimLevelResourceType" attribute is
                                                within the scope of the VIM or the
                                                resource provider and can be used as
                                                information that complements the
                                                ResourceHandle. This value set is
                                                different from the value set of the
                                                "type" attribute in the
                                                ResourceDefinition (refer to clause
                                                9.5.3.2 in SOL003).
                                              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
                                        cpInstanceType:
                                          description: >
                                            Type of the CP instance that is
                                            identified by cpInstanceId. Shall be
                                            present if "cpInstanceId" is present,
                                            and shall be absent otherwise. Permitted
                                            values: VNFC_CP: The link port is
                                            connected to a VNFC CP EXT_CP: The link
                                            port is associated to an external CP.
                                          type: string
                                          enum:
                                            - VNFC_CP
                                            - EXT_CP
                                  extManagedMultisiteVirtualLinkId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                            monitoringParameters:
                              description: |
                                Active monitoring parameters.
                              type: array
                              items:
                                type: object
                                required:
                                  - id
                                  - performanceMetric
                                properties:
                                  id:
                                    description: >
                                      An identifier that is unique within a VNF
                                      descriptor.
                                    type: string
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  name:
                                    description: >
                                      Human readable name of the monitoring
                                      parameter, as defined in the VNFD.
                                    type: string
                                  performanceMetric:
                                    description: >
                                      Performance metric that is monitored. This
                                      attribute shall contain the related
                                      "Measurement Name" value as defined in
                                      clause 7.2 of ETSI GS NFV-IFA 027.
                                    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
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  computeResource:
                                    required:
                                      - 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: >
                                          The value set of the
                                          "vimLevelResourceType" attribute is
                                          within the scope of the VIM or the
                                          resource provider and can be used as
                                          information that complements the
                                          ResourceHandle. This value set is
                                          different from the value set of the
                                          "type" attribute in the
                                          ResourceDefinition (refer to clause
                                          9.5.3.2 in SOL003).
                                        type: string
                                  zoneId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    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: >
                                      All the CPs of the VNFC instance. Shall be
                                      present when that particular CP of the
                                      VNFC instance is exposed as an external CP
                                      of the VNF instance or is connected to an
                                      external CP of the VNF instance. A VNFC CP
                                      is "connected to" an external CP if the
                                      VNFC CP is connected to an internal VL
                                      that exposes an external CP. A VNFC CP is
                                      "exposed as" an external CP if it is
                                      connected directly to an external VL. 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. May be omitted if the VNFC CP is
                                            exposed as an external CP. The
                                            information can be omitted because it is
                                            already available as part of the
                                            external CP information.
                                          type: array
                                          items:
                                            description: >
                                              This type describes the protocol
                                              layer(s) that a CP uses together with
                                              protocol-related information, like
                                              addresses.
                                            type: object
                                            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
                                                anyOf:
                                                  - required:
                                                      - macAddress
                                                  - required:
                                                      - ipAddresses
                                                oneOf:
                                                  - required:
                                                      - addresses
                                                  - required:
                                                      - addressRange
                                                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
                                                  segmentationId:
                                                    description: >
                                                      Identification of the network segment to
                                                      which the Cp instance connects to. If
                                                      the Cp instance represents a subport in
                                                      a trunk, segmentationId shall be
                                                      present.  Otherwise it shall not be
                                                      present. Depending on the NFVI
                                                      networking infrastructure, the
                                                      segmentationId may indicate the actual
                                                      network segment value (e.g. vlan Id,
                                                      Vxlan segmentation id, etc.) used in the
                                                      transport header of the packets or it
                                                      may be an identifier used between the
                                                      application and the NFVI networking
                                                      infrastructure to identify the network
                                                      sub-interface of the trunk port in
                                                      question. In the latter case the NFVI
                                                      infrastructure will map this local
                                                      segmentationId to whatever
                                                      segmentationId is actually used by the
                                                      NFVI’s transport technology.
                                                    type: string
                                                  ipAddresses:
                                                    description: >
                                                      Addresses assigned to the CP instance.
                                                      Each entry represents IP addresses
                                                      assigned by fixed or dynamic IP address
                                                      assignment per subnet. At least one of
                                                      "macAddress" or "ipAddresses" shall be
                                                      present.
                                                    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). Exactly one of "addresses" or
                                                            "addressRange" 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
                                                        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 identifier maintained by the VIM or
                                                            other resource provider. It is expected
                                                            to be unique within the VIM instance.
                                                          type: string
                                        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 keyvalue pairs is represented as an
                                            object. It shall comply with the
                                            provisions defined in clause 4 of IETF
                                            RFC 8259. In the following example, a
                                            list of key-value pairs with four keys
                                            ("aString", "aNumber", "anArray" and
                                            "anObject") is provided to illustrate
                                            that the values associated with
                                            different keys can be of different type.
                                          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
                                      keyvalue pairs is represented as an
                                      object. It shall comply with the
                                      provisions defined in clause 4 of IETF RFC
                                      8259. In the following example, a list of
                                      key-value pairs with four keys ("aString",
                                      "aNumber", "anArray" and "anObject") is
                                      provided to illustrate that the values
                                      associated with different keys can be of
                                      different type.
                                    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
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  networkResource:
                                    required:
                                      - 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: >
                                          The value set of the
                                          "vimLevelResourceType" attribute is
                                          within the scope of the VIM or the
                                          resource provider and can be used as
                                          information that complements the
                                          ResourceHandle. This value set is
                                          different from the value set of the
                                          "type" attribute in the
                                          ResourceDefinition (refer to clause
                                          9.5.3.2 in SOL003).
                                        type: string
                                  zoneId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    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:
                                            - 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: >
                                                The value set of the
                                                "vimLevelResourceType" attribute is
                                                within the scope of the VIM or the
                                                resource provider and can be used as
                                                information that complements the
                                                ResourceHandle. This value set is
                                                different from the value set of the
                                                "type" attribute in the
                                                ResourceDefinition (refer to clause
                                                9.5.3.2 in SOL003).
                                              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
                                        cpInstanceType:
                                          description: >
                                            Type of the CP instance that is
                                            identified by cpInstanceId. Shall be
                                            present if "cpInstanceId" is present,
                                            and shall be absent otherwise. Permitted
                                            values: VNFC_CP: The link port is
                                            connected to a VNFC CP EXT_CP: The link
                                            port is associated to an external CP.
                                          type: string
                                          enum:
                                            - VNFC_CP
                                            - EXT_CP
                                  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
                                      keyvalue pairs is represented as an
                                      object. It shall comply with the
                                      provisions defined in clause 4 of IETF RFC
                                      8259. In the following example, a list of
                                      key-value pairs with four keys ("aString",
                                      "aNumber", "anArray" and "anObject") is
                                      provided to illustrate that the values
                                      associated with different keys can be of
                                      different type.
                                    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
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  storageResource:
                                    required:
                                      - 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: >
                                          The value set of the
                                          "vimLevelResourceType" attribute is
                                          within the scope of the VIM or the
                                          resource provider and can be used as
                                          information that complements the
                                          ResourceHandle. This value set is
                                          different from the value set of the
                                          "type" attribute in the
                                          ResourceDefinition (refer to clause
                                          9.5.3.2 in SOL003).
                                        type: string
                                  zoneId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    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
                                      keyvalue pairs is represented as an
                                      object. It shall comply with the
                                      provisions defined in clause 4 of IETF RFC
                                      8259. In the following example, a list of
                                      key-value pairs with four keys ("aString",
                                      "aNumber", "anArray" and "anObject") is
                                      provided to illustrate that the values
                                      associated with different keys can be of
                                      different type.
                                    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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                        extensions:
                          description: >
                            Additional VNF-specific attributes that affect the
                            lifecycle management of this VNF instance. These
                            attributes represent values that are stored
                            persistently in the VnfInstance structure for
                            consumption by the VNFM or the lifecycle management
                            scripts during the execution of VNF lifecycle
                            management operations. All extensions that are
                            allowed for the VNF are declared in the VNFD. The
                            declaration of an extension in the VNFD contains
                            information on whether its presence is optional or
                            required, and optionally can specify an initial
                            value. See note 2 and note 4. The VNFM shall reject
                            requests to write extension attributes that are not
                            declared in the VNFD with a "422 Unprocessable
                            entity" error response as defined in clause 6.4 of
                            ETSI GS NFV-SOL 013. Modifying the values of these
                            attributes has no direct effect on the VNF instance;
                            however, the modified attribute values can be
                            considered during subsequent VNF lifecycle
                            management operations, which means that the modified
                            values can indirectly affect the configuration of
                            the VNF instance. These attributes can be
                            initialized with default values from the VNFD. These
                            attributes can be modified with values passed in the
                            request structures of certain LCM operations, such
                            as the InstantiateVnfRequest structure. Further,
                            these attributes can be created, modified or deleted
                            with the PATCH method.

                            NOTE: Upon creation of the VnfInstance structure,
                            the VNFM shall create and initialize all child
                            attributes of "vnfConfigurableProperties",
                            "metadata" and "extensions" that were declared in
                            the VNFD with a defined initial value. The defined
                            initial values can be declared in the VNFD, and/or,
                            in case of "metadata", obtained from the
                            "CreateVnfRequest" structure. Child attributes of
                            "vnfConfigurableProperties", "metadata" and
                            "extensions" that have no defineddeclared initial
                            value shall not be created, in order to be
                            consistent with the semantics of the JSON Merge
                            Patch method (see IETF RFC 7396) that interprets
                            null values as deletion request.
                        _links:
                          description: |
                            Links to resources related to this resource.
                          type: object
                          required:
                            - self
                          properties:
                            self:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            indicators:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            instantiate:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            terminate:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            scale:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            scaleToLevel:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            changeFlavour:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            heal:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            operate:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            changeExtConn:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            createSnapshot:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            revertToSnapshot:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                    vnfcSnapshots:
                      description: >
                        Information about VNFC snapshots constituting this VNF
                        snapshot.
                      type: array
                      items:
                        description: |
                          This type represents a VNFC snapshot.
                        type: object
                        required:
                          - id
                          - vnfcInstanceId
                          - triggeredAt
                          - vnfcResourceId
                        properties:
                          id:
                            description: >
                              An identifier that is unique within a limited
                              local scope other than above listed identifiers,
                              such as within a complex data structure or within
                              a request-response pair. Representation: string of
                              variable length.
                            type: string
                          vnfcInstanceId:
                            description: >
                              An identifier that is unique for the respective
                              type within a VNF instance, but may not be
                              globally unique.
                            type: string
                          creationStartedAt:
                            description: >
                              Date-time stamp. Representation: String formatted
                              according to IETF RFC 3339.
                            type: string
                            format: date-time
                          creationFinishedAt:
                            description: >
                              Date-time stamp. Representation: String formatted
                              according to IETF RFC 3339.
                            type: string
                            format: date-time
                          vnfcResourceInfoId:
                            description: >
                              An identifier that is unique for the respective
                              type within a VNF instance, but may not be
                              globally unique.
                            type: string
                          computeSnapshotResource:
                            required:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                type: string
                          storageSnapshotResources:
                            description: >
                              Mapping of the storage resources associated to the
                              VNFC with the storage snapshot resources.
                            type: array
                            items:
                              type: object
                              required:
                                - storageResourceId
                              properties:
                                storageResourceId:
                                  description: >
                                    An identifier that is unique for the
                                    respective type within a VNF instance, but
                                    may not be globally unique.
                                  type: string
                                storageSnapshotResource:
                                  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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  type: object
                          userDefinedData:
                            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 keyvalue pairs is
                              represented as an object. It shall comply with the
                              provisions defined in clause 4 of IETF RFC 8259.
                              In the following example, a list of key-value
                              pairs with four keys ("aString", "aNumber",
                              "anArray" and "anObject") is provided to
                              illustrate that the values associated with
                              different keys can be of different type.
                            type: object
                    vnfStateSnapshotInfo:
                      description: >
                        This type represents information about VNF-specific
                        state snapshot data.
                      type: object
                      required:
                        - checksum
                        - isEncrypted
                      properties:
                        checksum:
                          description: >
                            Checksum of the VNF state snapshot file. Hash
                            algorithms applicable to VNF snapshot package
                            artifacts are defined in ETSI GS NFV-SOL 010. $ref:
                            "../definitions/SOL002SOL003_def.yaml#/definitions/Checksum"
                        isEncrypted:
                          description: >
                            Reflects whether the VNF state snapshot content is
                            encrypted (true) or not (false). $ref:
                            "../definitions/SOL002SOL003_def.yaml#/definitions/Boolean"
                        metadata:
                          description: >
                            The metadata with additional information such as
                            content type, size, creation date, etc. $ref:
                            "../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
                    userDefinedData:
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 using an
                            absolute URI.
                          type: object
                          required:
                            - href
                          properties:
                            href:
                              description: |
                                String formatted according to IETF RFC 3986.
                              type: string
                        vnfStateSnapshot:
                          description: >
                            This type represents a link to a resource using an
                            absolute URI.
                          type: object
                          required:
                            - href
                          properties:
                            href:
                              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 using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    takenFrom:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
    IndividualVnfSnapshot.Get.200:
      description: >
        200 OK


        Shall be returned when information about an individual VNF snapshot was
        read successfully.

        The response body shall contain a representation of the "Individual VNF
        snapshot" resource, 

        as defined in clause 5.5.2.22.
      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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            type: array
            items:
              description: >
                This type represents an "Individual VNF snapshot" resource. It
                shall comply with the provisions defined in table 5.5.2.22-1.
              type: object
              required:
                - id
                - _links
              properties:
                id:
                  description: |
                    An identifier with the intention of being globally unique.
                  type: string
                vnfSnapshotPkgId:
                  description: |
                    An identifier with the intention of being globally unique.
                  type: string
                vnfSnapshot:
                  description: >
                    This type represents a VNF snapshot. It shall comply with
                    the provisions defined in table 5.5.2.23-1.
                  type: object
                  required:
                    - id
                    - vnfInstanceId
                    - triggeredAt
                    - vnfdId
                    - vnfInfo
                    - vnfcSnapshots
                  properties:
                    id:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    vnfInstanceId:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    creationStartedAt:
                      description: >
                        Date-time stamp. Representation: String formatted
                        according to IETF RFC 3339.
                      type: string
                      format: date-time
                    creationFinishedAt:
                      description: >
                        Date-time stamp. Representation: String formatted
                        according to IETF RFC 3339.
                      type: string
                      format: date-time
                    vnfdId:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    vnfInstance:
                      description: |
                        This type represents a VNF instance.
                      type: object
                      required:
                        - id
                        - vnfdId
                        - vnfProvider
                        - vnfProductName
                        - vnfSoftwareVersion
                        - vnfdVersion
                        - 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
                        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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                        vimConnectionInfo:
                          description: >
                            Information about VIM connections to be used for
                            managing the resources for the VNF instance. The
                            keys of the map, each of which identifies
                            information about a particular VIM connection, are
                            managed by the NFVO and referenced from other data
                            structures via the "vimConnectionId" attribute. This
                            attribute shall only be supported and present if
                            VNF-related resource management in direct mode is
                            pplicable. This attribute can be modified with the
                            PATCH method.
                          type: object
                          additionalProperties:
                            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:
                              - vimType
                            properties:
                              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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                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:
                              description: >
                                STARTED: The VNF instance is up and running.
                                STOPPED: The VNF instance has been shut down.
                              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. This
                                attribute shall be present if the VNF supports
                                scaling. See clause B.2 for an explanation of
                                VNF scaling.
                              type: array
                              items:
                                required:
                                  - aspectId
                                  - scaleLevel
                                type: object
                                properties:
                                  aspectId:
                                    description: >
                                      An identifier that is unique within a VNF
                                      descriptor.
                                    type: string
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    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
                            maxScaleLevels:
                              description: >
                                Maximum allowed scale levels of the VNF, one
                                entry per aspect. This attribute shall be
                                present if the VNF supports scaling.
                              type: array
                              items:
                                required:
                                  - aspectId
                                  - scaleLevel
                                type: object
                                properties:
                                  aspectId:
                                    description: >
                                      An identifier that is unique within a VNF
                                      descriptor.
                                    type: string
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    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. When trunking is enabled, the
                                list of entries includes both, external CPs
                                corresponding to parent ports of a trunk, and
                                external CPs associated to sub-ports of a trunk.
                              type: array
                              minItems: 1
                              items:
                                description: >
                                  This type represents information about an
                                  external CP of a VNF. It shall comply with the
                                  provisions defined in table 5.5.3.25 1.
                                type: object
                                required:
                                  - id
                                  - cpdId
                                  - cpConfigId
                                  - cpProtocolInfo
                                oneOf:
                                  - required:
                                      - associatedVnfcCpId
                                  - required:
                                      - associatedVnfVirtualLinkId
                                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
                                  cpConfigId:
                                    description: >
                                      An identifier that is unique for the
                                      respective type within a VNF instance, but
                                      may not be globally unique.
                                    type: string
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      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.
                                      type: object
                                      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
                                          anyOf:
                                            - required:
                                                - macAddress
                                            - required:
                                                - ipAddresses
                                          oneOf:
                                            - required:
                                                - addresses
                                            - required:
                                                - addressRange
                                          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
                                            segmentationId:
                                              description: >
                                                Identification of the network segment to
                                                which the Cp instance connects to. If
                                                the Cp instance represents a subport in
                                                a trunk, segmentationId shall be
                                                present.  Otherwise it shall not be
                                                present. Depending on the NFVI
                                                networking infrastructure, the
                                                segmentationId may indicate the actual
                                                network segment value (e.g. vlan Id,
                                                Vxlan segmentation id, etc.) used in the
                                                transport header of the packets or it
                                                may be an identifier used between the
                                                application and the NFVI networking
                                                infrastructure to identify the network
                                                sub-interface of the trunk port in
                                                question. In the latter case the NFVI
                                                infrastructure will map this local
                                                segmentationId to whatever
                                                segmentationId is actually used by the
                                                NFVI’s transport technology.
                                              type: string
                                            ipAddresses:
                                              description: >
                                                Addresses assigned to the CP instance.
                                                Each entry represents IP addresses
                                                assigned by fixed or dynamic IP address
                                                assignment per subnet. At least one of
                                                "macAddress" or "ipAddresses" shall be
                                                present.
                                              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). Exactly one of "addresses" or
                                                      "addressRange" 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
                                                  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 identifier maintained by the VIM or
                                                      other resource provider. It is expected
                                                      to be unique within the VIM instance.
                                                    type: string
                                  extLinkPortId:
                                    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
                                      keyvalue pairs is represented as an
                                      object. It shall comply with the
                                      provisions defined in clause 4 of IETF RFC
                                      8259. In the following example, a list of
                                      key-value pairs with four keys ("aString",
                                      "aNumber", "anArray" and "anObject") is
                                      provided to illustrate that the values
                                      associated with different keys can be of
                                      different type.
                                    type: object
                                  associatedVnfcCpId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  associatedVnfVirtualLinkId:
                                    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
                                  - currentVnfExtCpData
                                properties:
                                  id:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  resourceHandle:
                                    required:
                                      - 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: >
                                          The value set of the
                                          "vimLevelResourceType" attribute is
                                          within the scope of the VIM or the
                                          resource provider and can be used as
                                          information that complements the
                                          ResourceHandle. This value set is
                                          different from the value set of the
                                          "type" attribute in the
                                          ResourceDefinition (refer to clause
                                          9.5.3.2 in SOL003).
                                        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:
                                            - 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: >
                                                The value set of the
                                                "vimLevelResourceType" attribute is
                                                within the scope of the VIM or the
                                                resource provider and can be used as
                                                information that complements the
                                                ResourceHandle. This value set is
                                                different from the value set of the
                                                "type" attribute in the
                                                ResourceDefinition (refer to clause
                                                9.5.3.2 in SOL003).
                                              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
                                  currentVnfExtCpData:
                                    description: >
                                      Allows the API consumer to read the
                                      current CP configuration information for
                                      the connection of external CPs to the
                                      external virtual link. This attribute
                                      reflects the current configuration
                                      information that has resulted from merging
                                      into this attribute the "VnfExtCpData"
                                      information which was passed as part of
                                      the "ExtVirtualLinkData" structure in the
                                      input of the most recent VNF LCM operation
                                      such as "InstantiateVnfRequest",
                                      "ChangeExtVnfConnectivityRequest",
                                      "ChangeVnfFlavourRequest" or
                                      "ChangeCurrentVnfPkgRequest", or has been
                                      provided by the NFVO during the granting
                                      procedure. If applying such change results
                                      in an empty list of "currentVnfExtCpData"
                                      structure instances, the affected instance
                                      of "ExtVirtualLinkInfo" shall be removed
                                      from its parent data structure.
                                    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: >
                                            Map of instance data that need to be
                                            configured on the CP instances created
                                            from the respective CPD. The key of the
                                            map which identifies the individual
                                            VnfExtCpConfig entries is managed by the
                                            API consumer. The entries shall be
                                            applied by the VNFM according to the
                                            rules of JSON Merge Patch (see IETF RFC
                                            7396). Within one VNF instance, all VNFC
                                            instances created from a particular VDU
                                            have the same external connectivity.
                                            Thus, given a particular value of the
                                            “cpdId” attribute, there shall be one
                                            “cpConfig” entry for each VNFC instance
                                            that has been or can be created from a
                                            VDU which includes a CPD identified by
                                            the “cpdId” attribute. If the cpConfig
                                            represents a subport in a trunk, all
                                            “cpConfig” entries in this list shall
                                            have the same segmentationId, which
                                            means they are connected to the same set
                                            of external VLs via the trunk. The map
                                            entry value shall be set to "null" in
                                            order to delete a "VnfExtCpConfig" entry
                                            identified by a particular key value
                                            from the map, i.e. for the disconnection
                                            of an existing external CP instance
                                            addressed by cpInstanceId in the deleted
                                            map entry from a particular external
                                            virtual link, and deletion of that
                                            instance in case it represents a
                                            subport. Deleting the last key from the
                                            map removes the affected instance of the
                                            "VnfExtCpData" structure from its parent
                                            data structure.
                                          type: object
                                          additionalProperties:
                                            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.
                                            anyOf:
                                              - required:
                                                  - linkPortId
                                              - required:
                                                  - cpProtocolData
                                            type: object
                                            properties:
                                              parentCpConfigId:
                                                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": 1) Void 2) At least
                                                  one of the "linkPortId" and
                                                  "cpProtocolData" attributes 
                                                     shall be present for an external CP instance representing a subport 
                                                     that is to be created, or an external CP instance that is to be created 
                                                     by creating the corresponding VNFC or VNF instance during the current or 
                                                     a subsequent LCM operation, or for an existing external CP instance 
                                                     that is to be re-configured or added to a particular external virtual link.
                                                  3) If the "linkPortId" attribute is
                                                  absent, the VNFM shall create a
                                                     link port.
                                                  4) 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.
                                                  5) 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
                                                      anyOf:
                                                        - required:
                                                            - macAddress
                                                        - required:
                                                            - ipAddresses
                                                      oneOf:
                                                        - required:
                                                            - fixedAddresses
                                                        - required:
                                                            - numDynamicAddresses
                                                        - required:
                                                            - ipAddressRange
                                                      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
                                                        segmentationId:
                                                          description: >
                                                            Identification of the network segment to
                                                            which the Cp instance connects to. If
                                                            the Cp instance represents a subport in
                                                            a trunk, segmentationId shall be
                                                            present. Otherwise it shall not be
                                                            present. Depending on the NFVI
                                                            networking infrastructure, the
                                                            segmentationId may indicate the actual
                                                            network segment value (e.g. vlan Id,
                                                            Vxlan segmentation id, etc.) used in the
                                                            transport header of the packets or it
                                                            may be an identifier used between the
                                                            application and the NFVI networking
                                                            infrastructure to identify the network
                                                            sub-interface of the trunk port in
                                                            question. In the latter case the NFVI
                                                            infrastructure will map this local
                                                            segmentationId to whatever
                                                            segmentationId is actually used by the
                                                            NFVI’s transport technology.
                                                          type: string
                                                        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
                            extManagedVirtualLinkInfo:
                              description: >
                                Information about the externally-managed
                                internal VLs of the VNF instance.

                                NOTE: It is possible to have several
                                ExtManagedVirtualLinkInfo for the same VNF
                                internal VL in case of a multi-site VNF spanning
                                several VIMs. The set of
                                ExtManagedVirtualLinkInfo corresponding to the
                                same VNF internal VL shall indicate so by
                                referencing to the same VnfVirtualLinkDesc and
                                externally-managed multi-site VL instance (refer
                                to clause 5.5.3.3).
                              type: array
                              items:
                                type: object
                                required:
                                  - id
                                  - vnfVirtualLinkDescId
                                  - networkResource
                                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
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  networkResource:
                                    required:
                                      - 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: >
                                          The value set of the
                                          "vimLevelResourceType" attribute is
                                          within the scope of the VIM or the
                                          resource provider and can be used as
                                          information that complements the
                                          ResourceHandle. This value set is
                                          different from the value set of the
                                          "type" attribute in the
                                          ResourceDefinition (refer to clause
                                          9.5.3.2 in SOL003).
                                        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:
                                            - 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: >
                                                The value set of the
                                                "vimLevelResourceType" attribute is
                                                within the scope of the VIM or the
                                                resource provider and can be used as
                                                information that complements the
                                                ResourceHandle. This value set is
                                                different from the value set of the
                                                "type" attribute in the
                                                ResourceDefinition (refer to clause
                                                9.5.3.2 in SOL003).
                                              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
                                        cpInstanceType:
                                          description: >
                                            Type of the CP instance that is
                                            identified by cpInstanceId. Shall be
                                            present if "cpInstanceId" is present,
                                            and shall be absent otherwise. Permitted
                                            values: VNFC_CP: The link port is
                                            connected to a VNFC CP EXT_CP: The link
                                            port is associated to an external CP.
                                          type: string
                                          enum:
                                            - VNFC_CP
                                            - EXT_CP
                                  extManagedMultisiteVirtualLinkId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                            monitoringParameters:
                              description: |
                                Active monitoring parameters.
                              type: array
                              items:
                                type: object
                                required:
                                  - id
                                  - performanceMetric
                                properties:
                                  id:
                                    description: >
                                      An identifier that is unique within a VNF
                                      descriptor.
                                    type: string
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  name:
                                    description: >
                                      Human readable name of the monitoring
                                      parameter, as defined in the VNFD.
                                    type: string
                                  performanceMetric:
                                    description: >
                                      Performance metric that is monitored. This
                                      attribute shall contain the related
                                      "Measurement Name" value as defined in
                                      clause 7.2 of ETSI GS NFV-IFA 027.
                                    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
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  computeResource:
                                    required:
                                      - 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: >
                                          The value set of the
                                          "vimLevelResourceType" attribute is
                                          within the scope of the VIM or the
                                          resource provider and can be used as
                                          information that complements the
                                          ResourceHandle. This value set is
                                          different from the value set of the
                                          "type" attribute in the
                                          ResourceDefinition (refer to clause
                                          9.5.3.2 in SOL003).
                                        type: string
                                  zoneId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    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: >
                                      All the CPs of the VNFC instance. Shall be
                                      present when that particular CP of the
                                      VNFC instance is exposed as an external CP
                                      of the VNF instance or is connected to an
                                      external CP of the VNF instance. A VNFC CP
                                      is "connected to" an external CP if the
                                      VNFC CP is connected to an internal VL
                                      that exposes an external CP. A VNFC CP is
                                      "exposed as" an external CP if it is
                                      connected directly to an external VL. 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. May be omitted if the VNFC CP is
                                            exposed as an external CP. The
                                            information can be omitted because it is
                                            already available as part of the
                                            external CP information.
                                          type: array
                                          items:
                                            description: >
                                              This type describes the protocol
                                              layer(s) that a CP uses together with
                                              protocol-related information, like
                                              addresses.
                                            type: object
                                            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
                                                anyOf:
                                                  - required:
                                                      - macAddress
                                                  - required:
                                                      - ipAddresses
                                                oneOf:
                                                  - required:
                                                      - addresses
                                                  - required:
                                                      - addressRange
                                                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
                                                  segmentationId:
                                                    description: >
                                                      Identification of the network segment to
                                                      which the Cp instance connects to. If
                                                      the Cp instance represents a subport in
                                                      a trunk, segmentationId shall be
                                                      present.  Otherwise it shall not be
                                                      present. Depending on the NFVI
                                                      networking infrastructure, the
                                                      segmentationId may indicate the actual
                                                      network segment value (e.g. vlan Id,
                                                      Vxlan segmentation id, etc.) used in the
                                                      transport header of the packets or it
                                                      may be an identifier used between the
                                                      application and the NFVI networking
                                                      infrastructure to identify the network
                                                      sub-interface of the trunk port in
                                                      question. In the latter case the NFVI
                                                      infrastructure will map this local
                                                      segmentationId to whatever
                                                      segmentationId is actually used by the
                                                      NFVI’s transport technology.
                                                    type: string
                                                  ipAddresses:
                                                    description: >
                                                      Addresses assigned to the CP instance.
                                                      Each entry represents IP addresses
                                                      assigned by fixed or dynamic IP address
                                                      assignment per subnet. At least one of
                                                      "macAddress" or "ipAddresses" shall be
                                                      present.
                                                    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). Exactly one of "addresses" or
                                                            "addressRange" 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
                                                        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 identifier maintained by the VIM or
                                                            other resource provider. It is expected
                                                            to be unique within the VIM instance.
                                                          type: string
                                        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 keyvalue pairs is represented as an
                                            object. It shall comply with the
                                            provisions defined in clause 4 of IETF
                                            RFC 8259. In the following example, a
                                            list of key-value pairs with four keys
                                            ("aString", "aNumber", "anArray" and
                                            "anObject") is provided to illustrate
                                            that the values associated with
                                            different keys can be of different type.
                                          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
                                      keyvalue pairs is represented as an
                                      object. It shall comply with the
                                      provisions defined in clause 4 of IETF RFC
                                      8259. In the following example, a list of
                                      key-value pairs with four keys ("aString",
                                      "aNumber", "anArray" and "anObject") is
                                      provided to illustrate that the values
                                      associated with different keys can be of
                                      different type.
                                    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
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  networkResource:
                                    required:
                                      - 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: >
                                          The value set of the
                                          "vimLevelResourceType" attribute is
                                          within the scope of the VIM or the
                                          resource provider and can be used as
                                          information that complements the
                                          ResourceHandle. This value set is
                                          different from the value set of the
                                          "type" attribute in the
                                          ResourceDefinition (refer to clause
                                          9.5.3.2 in SOL003).
                                        type: string
                                  zoneId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    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:
                                            - 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: >
                                                The value set of the
                                                "vimLevelResourceType" attribute is
                                                within the scope of the VIM or the
                                                resource provider and can be used as
                                                information that complements the
                                                ResourceHandle. This value set is
                                                different from the value set of the
                                                "type" attribute in the
                                                ResourceDefinition (refer to clause
                                                9.5.3.2 in SOL003).
                                              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
                                        cpInstanceType:
                                          description: >
                                            Type of the CP instance that is
                                            identified by cpInstanceId. Shall be
                                            present if "cpInstanceId" is present,
                                            and shall be absent otherwise. Permitted
                                            values: VNFC_CP: The link port is
                                            connected to a VNFC CP EXT_CP: The link
                                            port is associated to an external CP.
                                          type: string
                                          enum:
                                            - VNFC_CP
                                            - EXT_CP
                                  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
                                      keyvalue pairs is represented as an
                                      object. It shall comply with the
                                      provisions defined in clause 4 of IETF RFC
                                      8259. In the following example, a list of
                                      key-value pairs with four keys ("aString",
                                      "aNumber", "anArray" and "anObject") is
                                      provided to illustrate that the values
                                      associated with different keys can be of
                                      different type.
                                    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
                                  vnfdId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  storageResource:
                                    required:
                                      - 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: >
                                          The value set of the
                                          "vimLevelResourceType" attribute is
                                          within the scope of the VIM or the
                                          resource provider and can be used as
                                          information that complements the
                                          ResourceHandle. This value set is
                                          different from the value set of the
                                          "type" attribute in the
                                          ResourceDefinition (refer to clause
                                          9.5.3.2 in SOL003).
                                        type: string
                                  zoneId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    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
                                      keyvalue pairs is represented as an
                                      object. It shall comply with the
                                      provisions defined in clause 4 of IETF RFC
                                      8259. In the following example, a list of
                                      key-value pairs with four keys ("aString",
                                      "aNumber", "anArray" and "anObject") is
                                      provided to illustrate that the values
                                      associated with different keys can be of
                                      different type.
                                    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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                        extensions:
                          description: >
                            Additional VNF-specific attributes that affect the
                            lifecycle management of this VNF instance. These
                            attributes represent values that are stored
                            persistently in the VnfInstance structure for
                            consumption by the VNFM or the lifecycle management
                            scripts during the execution of VNF lifecycle
                            management operations. All extensions that are
                            allowed for the VNF are declared in the VNFD. The
                            declaration of an extension in the VNFD contains
                            information on whether its presence is optional or
                            required, and optionally can specify an initial
                            value. See note 2 and note 4. The VNFM shall reject
                            requests to write extension attributes that are not
                            declared in the VNFD with a "422 Unprocessable
                            entity" error response as defined in clause 6.4 of
                            ETSI GS NFV-SOL 013. Modifying the values of these
                            attributes has no direct effect on the VNF instance;
                            however, the modified attribute values can be
                            considered during subsequent VNF lifecycle
                            management operations, which means that the modified
                            values can indirectly affect the configuration of
                            the VNF instance. These attributes can be
                            initialized with default values from the VNFD. These
                            attributes can be modified with values passed in the
                            request structures of certain LCM operations, such
                            as the InstantiateVnfRequest structure. Further,
                            these attributes can be created, modified or deleted
                            with the PATCH method.

                            NOTE: Upon creation of the VnfInstance structure,
                            the VNFM shall create and initialize all child
                            attributes of "vnfConfigurableProperties",
                            "metadata" and "extensions" that were declared in
                            the VNFD with a defined initial value. The defined
                            initial values can be declared in the VNFD, and/or,
                            in case of "metadata", obtained from the
                            "CreateVnfRequest" structure. Child attributes of
                            "vnfConfigurableProperties", "metadata" and
                            "extensions" that have no defineddeclared initial
                            value shall not be created, in order to be
                            consistent with the semantics of the JSON Merge
                            Patch method (see IETF RFC 7396) that interprets
                            null values as deletion request.
                        _links:
                          description: |
                            Links to resources related to this resource.
                          type: object
                          required:
                            - self
                          properties:
                            self:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            indicators:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            instantiate:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            terminate:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            scale:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            scaleToLevel:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            changeFlavour:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            heal:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            operate:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            changeExtConn:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            createSnapshot:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                            revertToSnapshot:
                              description: >
                                This type represents a link to a resource using
                                an absolute URI.
                              type: object
                              required:
                                - href
                              properties:
                                href:
                                  description: |
                                    String formatted according to IETF RFC 3986.
                                  type: string
                    vnfcSnapshots:
                      description: >
                        Information about VNFC snapshots constituting this VNF
                        snapshot.
                      type: array
                      items:
                        description: |
                          This type represents a VNFC snapshot.
                        type: object
                        required:
                          - id
                          - vnfcInstanceId
                          - triggeredAt
                          - vnfcResourceId
                        properties:
                          id:
                            description: >
                              An identifier that is unique within a limited
                              local scope other than above listed identifiers,
                              such as within a complex data structure or within
                              a request-response pair. Representation: string of
                              variable length.
                            type: string
                          vnfcInstanceId:
                            description: >
                              An identifier that is unique for the respective
                              type within a VNF instance, but may not be
                              globally unique.
                            type: string
                          creationStartedAt:
                            description: >
                              Date-time stamp. Representation: String formatted
                              according to IETF RFC 3339.
                            type: string
                            format: date-time
                          creationFinishedAt:
                            description: >
                              Date-time stamp. Representation: String formatted
                              according to IETF RFC 3339.
                            type: string
                            format: date-time
                          vnfcResourceInfoId:
                            description: >
                              An identifier that is unique for the respective
                              type within a VNF instance, but may not be
                              globally unique.
                            type: string
                          computeSnapshotResource:
                            required:
                              - 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: >
                                  The value set of the "vimLevelResourceType"
                                  attribute is within the scope of the VIM or
                                  the resource provider and can be used as
                                  information that complements the
                                  ResourceHandle. This value set is different
                                  from the value set of the "type" attribute in
                                  the ResourceDefinition (refer to clause
                                  9.5.3.2 in SOL003).
                                type: string
                          storageSnapshotResources:
                            description: >
                              Mapping of the storage resources associated to the
                              VNFC with the storage snapshot resources.
                            type: array
                            items:
                              type: object
                              required:
                                - storageResourceId
                              properties:
                                storageResourceId:
                                  description: >
                                    An identifier that is unique for the
                                    respective type within a VNF instance, but
                                    may not be globally unique.
                                  type: string
                                storageSnapshotResource:
                                  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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  type: object
                          userDefinedData:
                            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 keyvalue pairs is
                              represented as an object. It shall comply with the
                              provisions defined in clause 4 of IETF RFC 8259.
                              In the following example, a list of key-value
                              pairs with four keys ("aString", "aNumber",
                              "anArray" and "anObject") is provided to
                              illustrate that the values associated with
                              different keys can be of different type.
                            type: object
                    vnfStateSnapshotInfo:
                      description: >
                        This type represents information about VNF-specific
                        state snapshot data.
                      type: object
                      required:
                        - checksum
                        - isEncrypted
                      properties:
                        checksum:
                          description: >
                            Checksum of the VNF state snapshot file. Hash
                            algorithms applicable to VNF snapshot package
                            artifacts are defined in ETSI GS NFV-SOL 010. $ref:
                            "../definitions/SOL002SOL003_def.yaml#/definitions/Checksum"
                        isEncrypted:
                          description: >
                            Reflects whether the VNF state snapshot content is
                            encrypted (true) or not (false). $ref:
                            "../definitions/SOL002SOL003_def.yaml#/definitions/Boolean"
                        metadata:
                          description: >
                            The metadata with additional information such as
                            content type, size, creation date, etc. $ref:
                            "../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
                    userDefinedData:
                      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 keyvalue pairs is represented as an
                        object. It shall comply with the provisions defined in
                        clause 4 of IETF RFC 8259. In the following example, a
                        list of key-value pairs with four keys ("aString",
                        "aNumber", "anArray" and "anObject") is provided to
                        illustrate that the values associated with different
                        keys can be of different type.
                      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 using an
                            absolute URI.
                          type: object
                          required:
                            - href
                          properties:
                            href:
                              description: |
                                String formatted according to IETF RFC 3986.
                              type: string
                        vnfStateSnapshot:
                          description: >
                            This type represents a link to a resource using an
                            absolute URI.
                          type: object
                          required:
                            - href
                          properties:
                            href:
                              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 using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
                    takenFrom:
                      description: >
                        This type represents a link to a resource using an
                        absolute URI.
                      type: object
                      required:
                        - href
                      properties:
                        href:
                          description: |
                            String formatted according to IETF RFC 3986.
                          type: string
    IndividualVnfSnapshot.Patch.200:
      description: >
        200 OK


        Shall be returned when the modification of VNF snapshot information has
        been accepted and completed.
      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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/json:
          schema:
            description: >
              This type represents attribute modifications that were performed
              on an "Individual VNF snapshot" 

              resource. The attributes that can be included consist of those
              requested to be modified explicitly 

              in the "VnfSnapshotInfoModificationRequest" data structure, and
              additional attributes of the 

              "VnfSnapshotInfo" data structure that were modified implicitly.
              The "VnfSnapshotInfoModifications" 

              data type shall comply with the provisions defined in table
              5.5.2.25-1.
            type: object
            properties:
              vnfSnapshotPkgId:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              vnfSnapshot:
                description: >
                  This type represents a VNF snapshot. It shall comply with the
                  provisions defined in table 5.5.2.23-1.
                type: object
                required:
                  - id
                  - vnfInstanceId
                  - triggeredAt
                  - vnfdId
                  - vnfInfo
                  - vnfcSnapshots
                properties:
                  id:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfInstanceId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  creationStartedAt:
                    description: >
                      Date-time stamp. Representation: String formatted
                      according to IETF RFC 3339.
                    type: string
                    format: date-time
                  creationFinishedAt:
                    description: >
                      Date-time stamp. Representation: String formatted
                      according to IETF RFC 3339.
                    type: string
                    format: date-time
                  vnfdId:
                    description: |
                      An identifier with the intention of being globally unique.
                    type: string
                  vnfInstance:
                    description: |
                      This type represents a VNF instance.
                    type: object
                    required:
                      - id
                      - vnfdId
                      - vnfProvider
                      - vnfProductName
                      - vnfSoftwareVersion
                      - vnfdVersion
                      - 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
                      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 keyvalue pairs is represented as an
                          object. It shall comply with the provisions defined in
                          clause 4 of IETF RFC 8259. In the following example, a
                          list of key-value pairs with four keys ("aString",
                          "aNumber", "anArray" and "anObject") is provided to
                          illustrate that the values associated with different
                          keys can be of different type.
                        type: object
                      vimConnectionInfo:
                        description: >
                          Information about VIM connections to be used for
                          managing the resources for the VNF instance. The keys
                          of the map, each of which identifies information about
                          a particular VIM connection, are managed by the NFVO
                          and referenced from other data structures via the
                          "vimConnectionId" attribute. This attribute shall only
                          be supported and present if VNF-related resource
                          management in direct mode is pplicable. This attribute
                          can be modified with the PATCH method.
                        type: object
                        additionalProperties:
                          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:
                            - vimType
                          properties:
                            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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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 keyvalue pairs is
                                represented as an object. It shall comply with
                                the provisions defined in clause 4 of IETF RFC
                                8259. In the following example, a list of
                                key-value pairs with four keys ("aString",
                                "aNumber", "anArray" and "anObject") is provided
                                to illustrate that the values associated with
                                different keys can be of different type.
                              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:
                            description: >
                              STARTED: The VNF instance is up and running.
                              STOPPED: The VNF instance has been shut down.
                            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. This
                              attribute shall be present if the VNF supports
                              scaling. See clause B.2 for an explanation of VNF
                              scaling.
                            type: array
                            items:
                              required:
                                - aspectId
                                - scaleLevel
                              type: object
                              properties:
                                aspectId:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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
                          maxScaleLevels:
                            description: >
                              Maximum allowed scale levels of the VNF, one entry
                              per aspect. This attribute shall be present if the
                              VNF supports scaling.
                            type: array
                            items:
                              required:
                                - aspectId
                                - scaleLevel
                              type: object
                              properties:
                                aspectId:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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. When trunking is enabled, the list
                              of entries includes both, external CPs
                              corresponding to parent ports of a trunk, and
                              external CPs associated to sub-ports of a trunk.
                            type: array
                            minItems: 1
                            items:
                              description: >
                                This type represents information about an
                                external CP of a VNF. It shall comply with the
                                provisions defined in table 5.5.3.25 1.
                              type: object
                              required:
                                - id
                                - cpdId
                                - cpConfigId
                                - cpProtocolInfo
                              oneOf:
                                - required:
                                    - associatedVnfcCpId
                                - required:
                                    - associatedVnfVirtualLinkId
                              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
                                cpConfigId:
                                  description: >
                                    An identifier that is unique for the
                                    respective type within a VNF instance, but
                                    may not be globally unique.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    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.
                                    type: object
                                    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
                                        anyOf:
                                          - required:
                                              - macAddress
                                          - required:
                                              - ipAddresses
                                        oneOf:
                                          - required:
                                              - addresses
                                          - required:
                                              - addressRange
                                        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
                                          segmentationId:
                                            description: >
                                              Identification of the network segment to
                                              which the Cp instance connects to. If
                                              the Cp instance represents a subport in
                                              a trunk, segmentationId shall be
                                              present.  Otherwise it shall not be
                                              present. Depending on the NFVI
                                              networking infrastructure, the
                                              segmentationId may indicate the actual
                                              network segment value (e.g. vlan Id,
                                              Vxlan segmentation id, etc.) used in the
                                              transport header of the packets or it
                                              may be an identifier used between the
                                              application and the NFVI networking
                                              infrastructure to identify the network
                                              sub-interface of the trunk port in
                                              question. In the latter case the NFVI
                                              infrastructure will map this local
                                              segmentationId to whatever
                                              segmentationId is actually used by the
                                              NFVI’s transport technology.
                                            type: string
                                          ipAddresses:
                                            description: >
                                              Addresses assigned to the CP instance.
                                              Each entry represents IP addresses
                                              assigned by fixed or dynamic IP address
                                              assignment per subnet. At least one of
                                              "macAddress" or "ipAddresses" shall be
                                              present.
                                            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). Exactly one of "addresses" or
                                                    "addressRange" 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
                                                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 identifier maintained by the VIM or
                                                    other resource provider. It is expected
                                                    to be unique within the VIM instance.
                                                  type: string
                                extLinkPortId:
                                  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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  type: object
                                associatedVnfcCpId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                associatedVnfVirtualLinkId:
                                  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
                                - currentVnfExtCpData
                              properties:
                                id:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                resourceHandle:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                currentVnfExtCpData:
                                  description: >
                                    Allows the API consumer to read the current
                                    CP configuration information for the
                                    connection of external CPs to the external
                                    virtual link. This attribute reflects the
                                    current configuration information that has
                                    resulted from merging into this attribute
                                    the "VnfExtCpData" information which was
                                    passed as part of the "ExtVirtualLinkData"
                                    structure in the input of the most recent
                                    VNF LCM operation such as
                                    "InstantiateVnfRequest",
                                    "ChangeExtVnfConnectivityRequest",
                                    "ChangeVnfFlavourRequest" or
                                    "ChangeCurrentVnfPkgRequest", or has been
                                    provided by the NFVO during the granting
                                    procedure. If applying such change results
                                    in an empty list of "currentVnfExtCpData"
                                    structure instances, the affected instance
                                    of "ExtVirtualLinkInfo" shall be removed
                                    from its parent data structure.
                                  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: >
                                          Map of instance data that need to be
                                          configured on the CP instances created
                                          from the respective CPD. The key of the
                                          map which identifies the individual
                                          VnfExtCpConfig entries is managed by the
                                          API consumer. The entries shall be
                                          applied by the VNFM according to the
                                          rules of JSON Merge Patch (see IETF RFC
                                          7396). Within one VNF instance, all VNFC
                                          instances created from a particular VDU
                                          have the same external connectivity.
                                          Thus, given a particular value of the
                                          “cpdId” attribute, there shall be one
                                          “cpConfig” entry for each VNFC instance
                                          that has been or can be created from a
                                          VDU which includes a CPD identified by
                                          the “cpdId” attribute. If the cpConfig
                                          represents a subport in a trunk, all
                                          “cpConfig” entries in this list shall
                                          have the same segmentationId, which
                                          means they are connected to the same set
                                          of external VLs via the trunk. The map
                                          entry value shall be set to "null" in
                                          order to delete a "VnfExtCpConfig" entry
                                          identified by a particular key value
                                          from the map, i.e. for the disconnection
                                          of an existing external CP instance
                                          addressed by cpInstanceId in the deleted
                                          map entry from a particular external
                                          virtual link, and deletion of that
                                          instance in case it represents a
                                          subport. Deleting the last key from the
                                          map removes the affected instance of the
                                          "VnfExtCpData" structure from its parent
                                          data structure.
                                        type: object
                                        additionalProperties:
                                          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.
                                          anyOf:
                                            - required:
                                                - linkPortId
                                            - required:
                                                - cpProtocolData
                                          type: object
                                          properties:
                                            parentCpConfigId:
                                              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": 1) Void 2) At least
                                                one of the "linkPortId" and
                                                "cpProtocolData" attributes 
                                                   shall be present for an external CP instance representing a subport 
                                                   that is to be created, or an external CP instance that is to be created 
                                                   by creating the corresponding VNFC or VNF instance during the current or 
                                                   a subsequent LCM operation, or for an existing external CP instance 
                                                   that is to be re-configured or added to a particular external virtual link.
                                                3) If the "linkPortId" attribute is
                                                absent, the VNFM shall create a
                                                   link port.
                                                4) 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.
                                                5) 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
                                                    anyOf:
                                                      - required:
                                                          - macAddress
                                                      - required:
                                                          - ipAddresses
                                                    oneOf:
                                                      - required:
                                                          - fixedAddresses
                                                      - required:
                                                          - numDynamicAddresses
                                                      - required:
                                                          - ipAddressRange
                                                    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
                                                      segmentationId:
                                                        description: >
                                                          Identification of the network segment to
                                                          which the Cp instance connects to. If
                                                          the Cp instance represents a subport in
                                                          a trunk, segmentationId shall be
                                                          present. Otherwise it shall not be
                                                          present. Depending on the NFVI
                                                          networking infrastructure, the
                                                          segmentationId may indicate the actual
                                                          network segment value (e.g. vlan Id,
                                                          Vxlan segmentation id, etc.) used in the
                                                          transport header of the packets or it
                                                          may be an identifier used between the
                                                          application and the NFVI networking
                                                          infrastructure to identify the network
                                                          sub-interface of the trunk port in
                                                          question. In the latter case the NFVI
                                                          infrastructure will map this local
                                                          segmentationId to whatever
                                                          segmentationId is actually used by the
                                                          NFVI’s transport technology.
                                                        type: string
                                                      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
                          extManagedVirtualLinkInfo:
                            description: >
                              Information about the externally-managed internal
                              VLs of the VNF instance.

                              NOTE: It is possible to have several
                              ExtManagedVirtualLinkInfo for the same VNF
                              internal VL in case of a multi-site VNF spanning
                              several VIMs. The set of ExtManagedVirtualLinkInfo
                              corresponding to the same VNF internal VL shall
                              indicate so by referencing to the same
                              VnfVirtualLinkDesc and externally-managed
                              multi-site VL instance (refer to clause 5.5.3.3).
                            type: array
                            items:
                              type: object
                              required:
                                - id
                                - vnfVirtualLinkDescId
                                - networkResource
                              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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                networkResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                      cpInstanceType:
                                        description: >
                                          Type of the CP instance that is
                                          identified by cpInstanceId. Shall be
                                          present if "cpInstanceId" is present,
                                          and shall be absent otherwise. Permitted
                                          values: VNFC_CP: The link port is
                                          connected to a VNFC CP EXT_CP: The link
                                          port is associated to an external CP.
                                        type: string
                                        enum:
                                          - VNFC_CP
                                          - EXT_CP
                                extManagedMultisiteVirtualLinkId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                          monitoringParameters:
                            description: |
                              Active monitoring parameters.
                            type: array
                            items:
                              type: object
                              required:
                                - id
                                - performanceMetric
                              properties:
                                id:
                                  description: >
                                    An identifier that is unique within a VNF
                                    descriptor.
                                  type: string
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                name:
                                  description: >
                                    Human readable name of the monitoring
                                    parameter, as defined in the VNFD.
                                  type: string
                                performanceMetric:
                                  description: >
                                    Performance metric that is monitored. This
                                    attribute shall contain the related
                                    "Measurement Name" value as defined in
                                    clause 7.2 of ETSI GS NFV-IFA 027.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                computeResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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: >
                                    All the CPs of the VNFC instance. Shall be
                                    present when that particular CP of the VNFC
                                    instance is exposed as an external CP of the
                                    VNF instance or is connected to an external
                                    CP of the VNF instance. A VNFC CP is
                                    "connected to" an external CP if the VNFC CP
                                    is connected to an internal VL that exposes
                                    an external CP. A VNFC CP is "exposed as" an
                                    external CP if it is connected directly to
                                    an external VL. 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. May be omitted if the VNFC CP is
                                          exposed as an external CP. The
                                          information can be omitted because it is
                                          already available as part of the
                                          external CP information.
                                        type: array
                                        items:
                                          description: >
                                            This type describes the protocol
                                            layer(s) that a CP uses together with
                                            protocol-related information, like
                                            addresses.
                                          type: object
                                          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
                                              anyOf:
                                                - required:
                                                    - macAddress
                                                - required:
                                                    - ipAddresses
                                              oneOf:
                                                - required:
                                                    - addresses
                                                - required:
                                                    - addressRange
                                              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
                                                segmentationId:
                                                  description: >
                                                    Identification of the network segment to
                                                    which the Cp instance connects to. If
                                                    the Cp instance represents a subport in
                                                    a trunk, segmentationId shall be
                                                    present.  Otherwise it shall not be
                                                    present. Depending on the NFVI
                                                    networking infrastructure, the
                                                    segmentationId may indicate the actual
                                                    network segment value (e.g. vlan Id,
                                                    Vxlan segmentation id, etc.) used in the
                                                    transport header of the packets or it
                                                    may be an identifier used between the
                                                    application and the NFVI networking
                                                    infrastructure to identify the network
                                                    sub-interface of the trunk port in
                                                    question. In the latter case the NFVI
                                                    infrastructure will map this local
                                                    segmentationId to whatever
                                                    segmentationId is actually used by the
                                                    NFVI’s transport technology.
                                                  type: string
                                                ipAddresses:
                                                  description: >
                                                    Addresses assigned to the CP instance.
                                                    Each entry represents IP addresses
                                                    assigned by fixed or dynamic IP address
                                                    assignment per subnet. At least one of
                                                    "macAddress" or "ipAddresses" shall be
                                                    present.
                                                  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). Exactly one of "addresses" or
                                                          "addressRange" 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
                                                      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 identifier maintained by the VIM or
                                                          other resource provider. It is expected
                                                          to be unique within the VIM instance.
                                                        type: string
                                      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 keyvalue pairs is represented as an
                                          object. It shall comply with the
                                          provisions defined in clause 4 of IETF
                                          RFC 8259. In the following example, a
                                          list of key-value pairs with four keys
                                          ("aString", "aNumber", "anArray" and
                                          "anObject") is provided to illustrate
                                          that the values associated with
                                          different keys can be of different type.
                                        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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                networkResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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:
                                          - 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: >
                                              The value set of the
                                              "vimLevelResourceType" attribute is
                                              within the scope of the VIM or the
                                              resource provider and can be used as
                                              information that complements the
                                              ResourceHandle. This value set is
                                              different from the value set of the
                                              "type" attribute in the
                                              ResourceDefinition (refer to clause
                                              9.5.3.2 in SOL003).
                                            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
                                      cpInstanceType:
                                        description: >
                                          Type of the CP instance that is
                                          identified by cpInstanceId. Shall be
                                          present if "cpInstanceId" is present,
                                          and shall be absent otherwise. Permitted
                                          values: VNFC_CP: The link port is
                                          connected to a VNFC CP EXT_CP: The link
                                          port is associated to an external CP.
                                        type: string
                                        enum:
                                          - VNFC_CP
                                          - EXT_CP
                                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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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
                                vnfdId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                storageResource:
                                  required:
                                    - 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: >
                                        The value set of the
                                        "vimLevelResourceType" attribute is
                                        within the scope of the VIM or the
                                        resource provider and can be used as
                                        information that complements the
                                        ResourceHandle. This value set is
                                        different from the value set of the
                                        "type" attribute in the
                                        ResourceDefinition (refer to clause
                                        9.5.3.2 in SOL003).
                                      type: string
                                zoneId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  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 keyvalue
                                    pairs is represented as an object. It shall
                                    comply with the provisions defined in clause
                                    4 of IETF RFC 8259. In the following
                                    example, a list of key-value pairs with four
                                    keys ("aString", "aNumber", "anArray" and
                                    "anObject") is provided to illustrate that
                                    the values associated with different keys
                                    can be of different type.
                                  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 keyvalue pairs is represented as an
                          object. It shall comply with the provisions defined in
                          clause 4 of IETF RFC 8259. In the following example, a
                          list of key-value pairs with four keys ("aString",
                          "aNumber", "anArray" and "anObject") is provided to
                          illustrate that the values associated with different
                          keys can be of different type.
                        type: object
                      extensions:
                        description: >
                          Additional VNF-specific attributes that affect the
                          lifecycle management of this VNF instance. These
                          attributes represent values that are stored
                          persistently in the VnfInstance structure for
                          consumption by the VNFM or the lifecycle management
                          scripts during the execution of VNF lifecycle
                          management operations. All extensions that are allowed
                          for the VNF are declared in the VNFD. The declaration
                          of an extension in the VNFD contains information on
                          whether its presence is optional or required, and
                          optionally can specify an initial value. See note 2
                          and note 4. The VNFM shall reject requests to write
                          extension attributes that are not declared in the VNFD
                          with a "422 Unprocessable entity" error response as
                          defined in clause 6.4 of ETSI GS NFV-SOL 013.
                          Modifying the values of these attributes has no direct
                          effect on the VNF instance; however, the modified
                          attribute values can be considered during subsequent
                          VNF lifecycle management operations, which means that
                          the modified values can indirectly affect the
                          configuration of the VNF instance. These attributes
                          can be initialized with default values from the VNFD.
                          These attributes can be modified with values passed in
                          the request structures of certain LCM operations, such
                          as the InstantiateVnfRequest structure. Further, these
                          attributes can be created, modified or deleted with
                          the PATCH method.

                          NOTE: Upon creation of the VnfInstance structure, the
                          VNFM shall create and initialize all child attributes
                          of "vnfConfigurableProperties", "metadata" and
                          "extensions" that were declared in the VNFD with a
                          defined initial value. The defined initial values can
                          be declared in the VNFD, and/or, in case of
                          "metadata", obtained from the "CreateVnfRequest"
                          structure. Child attributes of
                          "vnfConfigurableProperties", "metadata" and
                          "extensions" that have no defineddeclared initial
                          value shall not be created, in order to be consistent
                          with the semantics of the JSON Merge Patch method (see
                          IETF RFC 7396) that interprets null values as deletion
                          request.
                      _links:
                        description: |
                          Links to resources related to this resource.
                        type: object
                        required:
                          - self
                        properties:
                          self:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          indicators:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          instantiate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          terminate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          scale:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          scaleToLevel:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          changeFlavour:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          heal:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          operate:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          changeExtConn:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          createSnapshot:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                          revertToSnapshot:
                            description: >
                              This type represents a link to a resource using an
                              absolute URI.
                            type: object
                            required:
                              - href
                            properties:
                              href:
                                description: |
                                  String formatted according to IETF RFC 3986.
                                type: string
                  vnfcSnapshots:
                    description: >
                      Information about VNFC snapshots constituting this VNF
                      snapshot.
                    type: array
                    items:
                      description: |
                        This type represents a VNFC snapshot.
                      type: object
                      required:
                        - id
                        - vnfcInstanceId
                        - triggeredAt
                        - vnfcResourceId
                      properties:
                        id:
                          description: >
                            An identifier that is unique within a limited local
                            scope other than above listed identifiers, such as
                            within a complex data structure or within a
                            request-response pair. Representation: string of
                            variable length.
                          type: string
                        vnfcInstanceId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        creationStartedAt:
                          description: >
                            Date-time stamp. Representation: String formatted
                            according to IETF RFC 3339.
                          type: string
                          format: date-time
                        creationFinishedAt:
                          description: >
                            Date-time stamp. Representation: String formatted
                            according to IETF RFC 3339.
                          type: string
                          format: date-time
                        vnfcResourceInfoId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        computeSnapshotResource:
                          required:
                            - 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: >
                                The value set of the "vimLevelResourceType"
                                attribute is within the scope of the VIM or the
                                resource provider and can be used as information
                                that complements the ResourceHandle. This value
                                set is different from the value set of the
                                "type" attribute in the ResourceDefinition
                                (refer to clause 9.5.3.2 in SOL003).
                              type: string
                        storageSnapshotResources:
                          description: >
                            Mapping of the storage resources associated to the
                            VNFC with the storage snapshot resources.
                          type: array
                          items:
                            type: object
                            required:
                              - storageResourceId
                            properties:
                              storageResourceId:
                                description: >
                                  An identifier that is unique for the
                                  respective type within a VNF instance, but may
                                  not be globally unique.
                                type: string
                              storageSnapshotResource:
                                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 keyvalue
                                  pairs is represented as an object. It shall
                                  comply with the provisions defined in clause 4
                                  of IETF RFC 8259. In the following example, a
                                  list of key-value pairs with four keys
                                  ("aString", "aNumber", "anArray" and
                                  "anObject") is provided to illustrate that the
                                  values associated with different keys can be
                                  of different type.
                                type: object
                        userDefinedData:
                          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 keyvalue pairs is represented as
                            an object. It shall comply with the provisions
                            defined in clause 4 of IETF RFC 8259. In the
                            following example, a list of key-value pairs with
                            four keys ("aString", "aNumber", "anArray" and
                            "anObject") is provided to illustrate that the
                            values associated with different keys can be of
                            different type.
                          type: object
                  vnfStateSnapshotInfo:
                    description: >
                      This type represents information about VNF-specific state
                      snapshot data.
                    type: object
                    required:
                      - checksum
                      - isEncrypted
                    properties:
                      checksum:
                        description: >
                          Checksum of the VNF state snapshot file. Hash
                          algorithms applicable to VNF snapshot package
                          artifacts are defined in ETSI GS NFV-SOL 010. $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/Checksum"
                      isEncrypted:
                        description: >
                          Reflects whether the VNF state snapshot content is
                          encrypted (true) or not (false). $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/Boolean"
                      metadata:
                        description: >
                          The metadata with additional information such as
                          content type, size, creation date, etc. $ref:
                          "../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
                  userDefinedData:
                    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 keyvalue pairs is represented as an object. It
                      shall comply with the provisions defined in clause 4 of
                      IETF RFC 8259. In the following example, a list of
                      key-value pairs with four keys ("aString", "aNumber",
                      "anArray" and "anObject") is provided to illustrate that
                      the values associated with different keys can be of
                      different type.
                    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 using an
                          absolute URI.
                        type: object
                        required:
                          - href
                        properties:
                          href:
                            description: |
                              String formatted according to IETF RFC 3986.
                            type: string
                      vnfStateSnapshot:
                        description: >
                          This type represents a link to a resource using an
                          absolute URI.
                        type: object
                        required:
                          - href
                        properties:
                          href:
                            description: |
                              String formatted according to IETF RFC 3986.
                            type: string
    IndividualVnfSnapshot.Delete.204:
      description: >
        204 NO CONTENT


        Shall be returned when the VNF snapshot resource and the associated VNF
        snapshot 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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
    IndividualVnfSnapshotState.Get.200:
      description: >
        200 OK


        Shall be returned when the whole content of the VNF state snapshot file
        has been read successfully.


        The payload body shall contain a copy of the VNF state snapshot file and
        the "Content-Type" HTTP

        header shall be set according to the content type of the VNF state
        snapshot file. If the VNF state 

        snapshot content is encrypted, the header shall be set to the value
        "application/cms" (IETF RFC 7193). 


        If the content type cannot be determined, the header shall be set to the
        value "application/octet-stream".
      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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Type:
          description: |
            The MIME type of the body of the response. Reference: IETF RFC 7231
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/*:
          schema:
            type: string
            format: binary
    IndividualVnfSnapshotState.Get.206:
      description: >
        206 PARTIAL CONTENT


        If the VNFM supports range requests, this response shall be returned
        when a single consecutive byte

        range from the content of the VNF state snapshot file has been read
        successfully according to the request.


        The response body shall contain the requested part of the VNF state
        snapshot file. The "Content-Type" HTTP 

        header shall be set according to the content type of the VNF state
        snapshot file. If the content type cannot 

        be determined, the header shall be set to the value
        "application/octet-stream".


        The "Content-Range" HTTP header shall be provided according to IETF RFC
        7233.
      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.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: The used API version.
          style: simple
          explode: false
          schema:
            type: string
        Content-Range:
          required: true
          style: simple
          explode: false
          schema:
            type: string
      content:
        application/*:
          schema:
            type: string
            format: binary

