swagger: '2.0'
info:
  version: '2.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1'
  title: SOL002 - VNF Performance Management Notification interface
  description: >
    SOL002 - VNF Performance Management Notification interface IMPORTANT: Please
    note that this file might be not aligned to the current version of the ETSI
    Group Specification it refers to and has not been approved by the ETSI NFV
    ISG. In case of discrepancies the published ETSI Group Specification takes
    precedence. Please report bugs to
    https://forge.etsi.org/rep/nfv/SOL002-SOL003/issues
  license:
    name: ETSI Forge copyright notice
    url: 'https://forge.etsi.org/etsi-forge-copyright-notice.txt'
  contact:
    name: NFV-SOL WG
externalDocs:
  description: ETSI GS NFV-SOL 002 V2.8.1
  url: >-
    https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.08.01_60/gs_NFV-SOL002v020801p.pdf
basePath: /callback/v1
schemes:
  - http
  - https
consumes:
  - application/json
produces:
  - application/json
paths:
  /URI-is-provided-by-the-client-when-creating-the-subscription_PerformanceInformationAvailableNotification:
    post:
      description: >
        Notify

        The POST method delivers a notification regarding a performance
        management event from API producer to an API consumer. The API consumer 
        shall have previously created an "Individual subscription" resource
        with  a matching filter.
      parameters:
        - name: PerformanceInformationAvailableNotification
          description: |
            Notification about performance information availability.
          in: body
          required: true
          schema:
            description: >
              This notification informs the receiver that performance
              information is available. The notification shall be triggered by
              the VNFM when new performance information collected by a PM job is
              available. The periodicity of triggering this notification is
              influenced by the  "reportingPeriod" attribute in the
              "PmJobCriteria" data structure.
            type: object
            required:
              - id
              - notificationType
              - timeStamp
              - pmJobId
              - objectType
              - objectInstanceId
              - _links
            properties:
              id:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              notificationType:
                description: >
                  Discriminator for the different notification types. Shall be
                  set to "PerformanceInformationAvailableNotification" for this
                  notification type.
                type: string
                enum:
                  - PerformanceInformationAvailableNotification
              timeStamp:
                description: >
                  Date-time stamp. Representation: String formatted according to
                  IETF RFC 3339.
                type: string
                format: date-time
              pmJobId:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              objectType:
                description: >
                  Type of the measured object. The applicable measured object
                  type for a measurement is defined in clause 7.2 of ETSI GS
                  NFV-IFA 027.
                type: string
              objectInstanceId:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              subObjectInstanceIds:
                description: >
                  Identifiers of the sub-object instances of the measured object
                  instance for which the measurements have been taken. Shall be
                  present if the related PM job has been set up to measure only
                  a subset of all sub-object instances of the measured object
                  instance and a sub-object is defined in clause
                   6.2 of ETSI GS NFV-IFA 027 for the related measured object type.
                  Shall be absent otherwise.
                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
              _links:
                description: |
                  Links to resources related to this notification.
                type: object
                required:
                  - pmJob
                  - performanceReport
                properties:
                  objectInstance:
                    description: >
                      This type represents a link to a resource in a
                      notification, using an absolute or relative URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  pmJob:
                    description: >
                      This type represents a link to a resource in a
                      notification, using an absolute or relative URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  performanceReport:
                    description: >
                      This type represents a link to a resource in a
                      notification, using an absolute or relative URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: |
            The MIME type of the body of the request. Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
      responses:
        '204':
          description: >
            No Content

            Shall be returned when the notification has been delivered
            successfully.
          headers:
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '405':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '406':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '500':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '503':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
    get:
      description: >
        The GET method allows the API producer to test the notification endpoint
        that is provided by the API consumer, e.g. during subscription.
      parameters:
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
      responses:
        '204':
          description: >
            No Content

            Shall be returned to indicate that the notification endpoint has
            been  tested successfully. The response body shall be empty.
          headers:
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '405':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '406':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '500':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '503':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
  /URI-is-provided-by-the-client-when-creating-the-subscription_ThresholdCrossedNotification:
    post:
      description: >
        Notify

        The POST method delivers a notification regarding a performance
        management event from API producer to an API consumer. The API consumer 
        shall have previously created an "Individual subscription" resource
        with  a matching filter.
      parameters:
        - name: ThresholdCrossedNotification
          description: |
            Notification about performance information availability.
          in: body
          required: true
          schema:
            description: >
              This type represents a notification that is sent when a threshold
              has been crossed. The timing of sending this notification is
              determined by the capability of the producing entity to evaluate
              the threshold crossing condition. The notification shall be
              triggered by the VNFM when a threshold has been crossed.
            type: object
            required:
              - id
              - notificationType
              - timeStamp
              - thresholdId
              - crossingDirection
              - objectType
              - objectInstanceId
              - performanceMetric
              - performanceValue
              - _links
            properties:
              id:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              notificationType:
                description: >
                  Discriminator for the different notification types. Shall be
                  set to "ThresholdCrossedNotification" for this notification
                  type.
                type: string
                enum:
                  - ThresholdCrossedNotification
              timeStamp:
                description: >
                  Date-time stamp. Representation: String formatted according to
                  IETF RFC 3339.
                type: string
                format: date-time
              thresholdId:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              crossingDirection:
                type: string
                enum:
                  - UP
                  - DOWN
              objectType:
                description: >
                  Type of the measured object. The applicable measured object
                  type for a measurement is defined in clause 7.2 of ETSI GS
                  NFV-IFA 027.
                type: string
              objectInstanceId:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              subObjectInstanceId:
                description: >
                  An identifier that is unique for the respective type within a
                  VNF instance, but may not be globally unique.
                type: string
              performanceMetric:
                description: >
                  Performance metric associated with the threshold. This
                  attribute shall contain the related "Measurement Name" value
                  as defined in clause 7.2 of ETSI GS NFV-IFA 027.
                type: string
              performanceValue:
                description: >
                  Value of the metric that resulted in threshold crossing. The
                  type of this attribute shall correspond to the related
                  "Measurement Unit" as defined in clause 7.2 of ETSI GS NFV-IFA
                  027.
                type: object
              context:
                description: >
                  This 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 notification.
                type: object
                required:
                  - threshold
                properties:
                  objectInstance:
                    description: >
                      This type represents a link to a resource in a
                      notification, using an absolute or relative URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
                  threshold:
                    description: >
                      This type represents a link to a resource in a
                      notification, using an absolute or relative URI.
                    type: object
                    required:
                      - href
                    properties:
                      href:
                        description: |
                          String formatted according to IETF RFC 3986.
                        type: string
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: |
            The MIME type of the body of the request. Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
      responses:
        '204':
          description: >
            204 NO CONTENT

            Shall be returned when the notification has been delivered
            successfully.
          headers:
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '405':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '406':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '500':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '503':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
    get:
      description: >
        The GET method allows the API producer to test the notification endpoint
        that is provided by the API consumer, e.g. during subscription.
      parameters:
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
      responses:
        '204':
          description: >
            204 NO CONTENT

            Shall be returned to indicate that the notification endpoint has
            been  tested successfully. The response body shall be empty.
          headers:
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '405':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '406':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '500':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI
        '503':
          description: >
            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.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
            Version:
              description: |
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
          schema:
            description: >
              The definition of the general "ProblemDetails" data structure from
              IETF RFC 7807 [19] is reproduced inthis structure. Compared to the
              general framework defined in IETF RFC 7807 [19], the "status" and
              "detail" attributes are mandated to be included by the present
              document, to ensure that the response contains additional textual
              information about an error. IETF RFC 7807 [19] foresees
              extensibility of the "ProblemDetails" type. It is possible that
              particular APIs in the present document, or particular
              implementations, define extensions to define additional attributes
              that provide more information about the error. The description
              column only provides some explanation of the meaning to Facilitate
              understanding of the design. For a full description, see IETF RFC
              7807 [19].
            type: object
            required:
              - status
              - detail
            properties:
              type:
                description: >
                  A URI reference according to IETF RFC 3986 [5] that identifies
                  the problem type. It is encouraged that the URI provides
                  human-readable documentation for the problem (e.g. using HTML)
                  when dereferenced. When this member is not present, its value
                  is assumed to be "about:blank".
                type: string
                format: URI
              title:
                description: >
                  A short, human-readable summary of the problem type. It should
                  not change from occurrence to occurrence of the problem,
                  except for purposes of localization. If type is given and
                  other than "about:blank", this attribute shall also be
                  provided. A short, human-readable summary of the problem
                  type.  It SHOULD NOT change from occurrence to occurrence of
                  the problem, except for purposes of localization (e.g., using
                  proactive content negotiation; see [RFC7231], Section 3.4).
                type: string
              status:
                description: >
                  The HTTP status code for this occurrence of the problem. The
                  HTTP status code ([RFC7231], Section 6) generated by the
                  origin server for this occurrence of the problem.
                type: integer
              detail:
                description: >
                  A human-readable explanation specific to this occurrence of
                  the problem.
                type: string
              instance:
                description: >
                  A URI reference that identifies the specific occurrence of the
                  problem. It may yield further information if dereferenced.
                type: string
                format: URI

