NFVManoConfigurationAndInformationManagement.yaml 154 KB
Newer Older
            API version, in compliance with the version identifiers and parameters 
            format specified in clause 9.1 of ETSI GS NFV-SOL 013.
          $ref: "../components/SOL009_schemas.yaml#/components/schemas/Version"
        apiEndpoint:
          description: >
            Consumable API endpoint of the interface.
            It provides the information relevant about the protocol, host and port, 
            and path where the interface API can be accessed.
          type: object
          properties:
            apiRoot:
              description: >
                Indicates the scheme ("http" or "https"), the host name and optional 
                port, and an optional sequence of path segments that together 
                represent a prefix path. Shall be present for ETSI NFV specified 
                RESTful NFV-MANO APIs (see also clause 4.1 of ETSI GS NFV-SOL 013). 
                May be present otherwise.
              $ref: "../components/SOL009_schemas.yaml#/components/schemas/Uri" 
            apiName:
              description: >
                Indicates the interface name in an abbreviated form. Shall be present 
                for ETSI NFV specified RESTful NFV-MANO APIs. The {apiName} of each 
                interface is defined in the standard the interface is compliant to 
                (see also clause 4.1 of ETSI GS NFV-SOL 013). May be present otherwise.
              type: string
            apiMajorVersion:
              description: >
                Indicates the current major version of the API. Shall be present for 
                ETSI NFV specified RESTful NFV-MANO APIs. The major version is defined 
                in the standard the interface is compliant to (see also clause 4.1 
                of ETSI GS NFV-SOL 013). May be present otherwise.
              type: string 
            apiUri:
              description: >
                URL of the API endpoint. For ETSI NFV specified RESTful NFV-MANO APIs, 
                the following prefix structure is used (see also clause 4.1 of ETSI 
                GS NFV-SOL 013): {apiRoot}/{apiName}/{apiMajorVersion}
              $ref: "../components/SOL009_schemas.yaml#/components/schemas/Uri" 
          required:
            - apiUri
        securityInfo:
          description: >
            Security related information including credentials information if needed 
            for consuming the API.

            NOTE: Due to the security sensitive information associated to the attribute, 
            based on access control policies, the API consumer might have read only, 
            write only, read/write, or no access at all to the attribute’s value. 
            In case the API consumer is not allowed to read the value of the security 
            sensitive attribute, the attribute shall be omitted when the information 
            is to be provided in a response message, and shall be provided otherwise. 
            In case the API consumer is not allowed to modify the value of the security 
            sensitive attribute, and the modification request includes new attribute values, 
            the whole modification request shall be rejected, and proper error information 
            returned.
          $ref: "#/components/schemas/ClientInterfaceSecurityInfo"
      required:
        - id
        - name
        - type
        - standardVersion
        - apiVersion
        - apiEndpoint
        
    CimNotificationsFilter:
      description: >
        This type represents a subscription filter related to notifications 
        about NFV-MANO configuration and information management. 
      type: object
      properties:
        manoEntitySubscriptionFilter:
          description: >
            Filter criteria to select the NFV-MANO functional entity and its 
            associated managed objects.
          $ref: "../components/SOL009_schemas.yaml#/components/schemas/ManoEntitySubscriptionFilter"
        notificationTypes:
          description: >
            Match particular notification types. 
            Permitted values:
              - InformationChangedNotification
              - ChangeStateNotification

            NOTE:	The permitted values of the "notificationTypes" attribute are 
            spelled exactly as the names of the notification types to facilitate 
            automated code generation systems.
          type: array
          items:
            type: string
            enum:
              - InformationChangedNotification
              - ChangeStateNotification

    ClockSyncInfo:
      description: >
        This type represents parameters for connecting to an NTP server. 
      type: object
      properties:
        type:
          description: >
            Type of clock synchronization.
            Permitted values:
              - NTP: For Network Time Protocol (NTP) based clock synchronization.
              - OTHER: For other types of clock synchronization.
          type: string
          enum:
            - NTP
            - OTHER
        ntpServerInfo:
          description: >
            Information for the NTP based clock synchronization. 
            Shall be present if type = "NTP".
          type: object
          properties:
            ipAddress:
              description: >
                0..1	IP address of the NTP server. 
                
                NOTE:	Either ipAddress or hostname shall be set, but not both 
                at the same time.
              $ref: "../components/SOL009_schemas.yaml#/components/schemas/IpAddress"
            hostname:
              description: >
                Indicates the hostname of the NTP server. 
                
                NOTE:	Either ipAddress or hostname shall be set, but not both 
                at the same time.
              type: string
        otherClockSyncParams:
          description: >
            Information for the other types of clock synchronization. 
            May be present if type = "OTHER".
          $ref: "../components/SOL009_schemas.yaml#/components/schemas/KeyValuePairs"
        
    ServerInterfaceSecurityInfo:
      description: >
        This type represents security related information of an NFV-MANO 
        service interface produced by an NFV-MANO functional entity. 
      type: object
      properties:
        authType:
          description: >
            Type of API request authorization to be used by the API producer.
            The support of authorization methods for the API producer is specified 
            in clause 8.3.6 of ETSI GS NFV-SOL 013.
            Permitted values:
              - TLS_TUNNEL: Using TLS tunnel, as defined by TLS 1.2 in IETF RFC 5246.
              - OAUTH2: Using access token, as defined by the OAuth 2.0 specification 
              in IETF RFC 6749. 
          type: array
          items:
            type: string
            enum:
              - TLS_TUNNEL
              - OAUTH2
          minItems: 1
        oauthServerInfo:
          description: >
            OAuth 2.0 authorization server information and configuration.
          type: object
          properties:
            dynamicDiscovery:
              description: >
                Configuration data used when performing dynamic discovery of 
                the authorization server identifier. 
                
                NOTE:	Provided configuration of the OAuth 2.0 authorization 
                server information and configuration shall be supported, and 
                dynamic configuration may be supported.
              type: object
              properties:
                webFingerHost:
                  description: >
                    Server where the WebFinger service is hosted. When used, 
                    the request to the WebFinger resource shall conform as specified 
                    in clause 5.1.3 of ETSI GS NFV-SEC 022.
                  $ref: "../components/SOL009_schemas.yaml#/components/schemas/Uri"
              required:
                - webFingerHost
            providedConfiguration:
              description: >
                Configuration data used to setup the authorization server identifier. 
                
                NOTE:	Provided configuration of the OAuth 2.0 authorization 
                server information and configuration shall be supported, and 
                dynamic configuration may be supported.
              type: object
              properties:
                authServerId:
                  description: >
                    Authorization server identifier as defined in ETSI GS NFV-SEC 022.
                  $ref: "../components/SOL009_schemas.yaml#/components/schemas/Uri"
              required:
                - authServerId
            tlsCipherSuites:
              description: >
                List of cipher suites that shall be declared as supported by the 
                API producer when performing the SSL or TLS negotiation with the 
                authorization server. Valid values of cipher suites are defined 
                in IETF RFC 8447.
              type: array
              items:
                type: string
              minItems: 1
          required:
            - providedConfiguration
            - tlsCipherSuites
        tlsTunnelInfo:
          description: >
            Information and configuration related to the use of TLS tunnel. 
            Shall be present if authType contains "TLS_TUNNEL".
          type: object
          properties:
            tlsTunnelCipherSuites:
              description: 
                List of cipher suites that shall be declared as supported by the API 
                producer when performing the SSL or TLS negotiation with the API client. 
                Valid values of cipher suites are defined in IETF RFC 8447.
              type: array
              items:
                type: string
              minItems: 1
          required:
            - tlsTunnelCipherSuites
      required:
        - authType
        - oauthServerInfo
        
    ClientInterfaceSecurityInfo:
      description: >
        This type represents security related information for accessing an NFV-MANO 
        service interface produced by an NFV-MANO functional entity.
      type: object
      required:
        - authType
        - oauthServerInfo
      properties:
        authType: 
          description: >
            Type of API request authorization to be used by the API consumer accessing 
            the API.

            The support of authorization methods for the API consumer is specified in 
            clause 8.3.6 of ETSI GS NFV-SOL 013.

            Permitted values:
            - TLS_TUNNEL: Using TLS tunnel, as defined by TLS 1.2 in IETF RFC 5246.
            - OAUTH2: Using access token, as defined by the OAuth 2.0 specification 
            in IETF RFC 6749. 
          type: array
          items:
            type: string
            enum:
              - TLS_TUNNEL
              - OAUTH2
          minItems: 1
        oauthServerInfo:
          description: >
            OAuth 2.0 authorization server information and configuration.
          type: object
          properties:
            dynamicDiscovery:
              description: >
                Configuration data used when performing dynamic discovery of the authorization 
                server identifier. 

                NOTE:	Provided configuration of the OAuth 2.0 authorization server information 
                and configuration shall be supported, and dynamic configuration may be supported.
              type: object
              required:
                - webFingerHost
              properties:
                webFingerHost:
                  description: >
                    Server where the WebFinger service is hosted. When used, the request to 
                    the WebFinger resource shall conform as specified in clause 5.1.3 of 
                    ETSI GS NFV-SEC 022.
                  type: string
                  format: uri
            providedConfiguration:
              description: >
                Configuration data used to setup the authorization server identifier. 

                NOTE:	Provided configuration of the OAuth 2.0 authorization server information 
                and configuration shall be supported, and dynamic configuration may be supported.
              type: object
              required:
                - authServerId
              properties:
                authServerId:
                  description: >
                    Authorization server identifier as defined in ETSI GS NFV-SEC 022.
                  type: string
                  format: uri
            tlsCipherSuites:
              description: >
                List of cipher suites that shall be declared as supported by the API consumer when 
                performing the SSL or TLS negotiation with the authorization server. Valid values 
                of cipher suites are defined in IETF RFC 8447.
              type: array
              items:
                type: string
                minItems: 1
        tlsTunnelInfo:
          description: >
            Information and configuration related to the use of TLS tunnel. Shall be 
            present if authType contains "TLS_TUNNEL".
          type: object
          properties:
            tlsTunnelCipherSuites:
              description: >
                List of cipher suites that shall be declared as supported by the API 
                consumer when performing the SSL or TLS negotiation with the API producer. 
                Valid values of cipher suites are defined in IETF RFC 8447.
              type: array
              items:
                type: string
                minItems: 1

    #referenced simple data types
    ManoServiceInterfaceTypeShortName:
      description: >
        For the RESTful NFV-MANO APIs, valid values are all values for "apiName" as defined 
        in ETSI GS NFV-SOL 002, ETSI GS NFV-SOL 003, and ETSI GS NFV-SOL 005.
        
        For the NFV-MANO service interfaces for which no API is specified by ETSI NFV, valid 
        values are defined in table 5.6.4.3-1.

        NOTE:	The table is expected to be updated, by removing the corresponding listed entries, 
        once the interfaces are specified as a RESTful NFV-MANO API. 
      type: string

    UsageStateEnumType:
      description: >
        The enumeration UsageStateEnumType defines values representing the usage 
        state of a managed entity. 
        The UsageStateEnumType shall comply with the provisions:
          - IN_USE	The managed entity is currently being used.
          - NOT_IN_USE	The managed entity is currently not being used.
      type: string
      enum:
        - IN_USE
        - NOT_IN_USE

    ChangeOperationalStateEnumType:
      description: >
        The enumeration ChangeOperationalStateEnumType defines permitted values 
        for the change state operation. 
        The ChangeOperationalStateEnumType shall comply with the provisions:
          - START	To start the managed entity.
          - STOP	To stop the managed entity.
          - RESTART	To stop and start again the managed entity.
      type: string
      enum:
        - START 
        - STOP
        - RESTART

    ChangeAdministrativeStateEnumType:
      description: >
        The enumeration ChangeAdministrativeStateEnumType defines permitted values 
        for the change of administrative state operation. 
        The ChangeAdministrativeStateEnumType shall comply with the provisions:
          - LOCK	To lock the managed entity.
          - UNLOCK	To unlock the managed entity.
      type: string
      enum:
        - LOCK
        - UNLOCK

    InterfaceOperationalStateEnumType:
      description: >
        The enumeration InterfaceOperationalStateEnumType defines values representing 
        the operational state of an NFV-MANO service interface type of managed entity. 
        The InterfaceOperationalStateEnumType shall comply with the provisions :
           - STARTED	The managed entity is operational.
           - STOPPED	The managed entity is not operational.
           - STOPPING	The managed entity is in the transition to stop.
           - STARTING	The managed entity is in the transition to start and become operational.
      type: string
      enum:
        - STARTED
        - STOPPED
        - STOPPING
        - STARTING

    StopEnumType:
      description: >
        The enumeration ChangeStateOpOccStateEnumType defines permitted values 
        for the change state operation. It shall comply with the provisions:
          - GRACEFUL	To stop the managed entity immediately after accepting the request.
          - FORCEFUL	To stop the managed entity attempting to gracefully discharge the entity from service.
      type: string
      enum:
        - GRACEFUL
        - FORCEFUL

    ManoEntityEnumType:
        The enumeration ManoEntityEnumType defines the permitted values to 
        represent NFV-MANO functional entities. It shall comply with 
        the provisions :
          - NFVO	The NFV-MANO functional entity is an NFVO.
          - VNFM	The NFV-MANO functional entity is a VNFM.
          - VIM	The NFV-MANO functional entity is a VIM.
      type: string
      enum:
        - NFVO
        - VNFM
        - VIM

    PeerEntityEnumType:
      description: >
        The enumeration PeerEntityEnumType defines the permitted values 
        to represent peer functional entities. it shall complains with 
        the provisions : 
        - NFVO	The peer functional entity is an NFVO.
        - VNFM	The peer functional entity is a VNFM.
        - VIM	  The peer functional entity is a VIM.
        - WIM	  The peer functional entity is a WIM.
        - EM	  The peer functional entity is an EM.
        - OSS	  The peer functional entity is an OSS/BSS.
      type: string
      enum:
        - NFVO
        - VNFM
        - VIM
        - WIM
        - EM
        - OSS

  parameters:
    filter.ManoServiceInterface:
      name: filter
      description: >
        Attribute-based filtering expression according to clause 5.2 of 
        ETSI GS NFV-SOL 013. 

        The NFV-MANO functional entity shall support receiving this parameter 
        as part of the URI query string. The API consumer may supply this 
        parameter. 

        All attribute names that appear in the ManoServiceInterface and in data 
        types referenced from it shall be supported by the NFV-MANO functional 
        entity in the expression. 
      in: query
      required: false
      schema:
        type: string
    filter.CimSubscription:
      name: filter
      description: >
        Attribute-based filtering expression according to clause 5.2 of 
        ETSI GS NFV-SOL 013. 

        The NFV-MANO functional entity shall support receiving this parameter 
        as part of the URI query string. The API consumer may supply this 
        parameter. 

        All attribute names that appear in the CimSubscription and in data 
        types referenced from it shall be supported by the NFV-MANO functional 
        entity in the expression. 
      in: query
      required: false
      schema:
        type: string
    filter.ChangeStateOpOcc:
      name: filter
      description: >
        Attribute-based filtering expression according to clause 5.2 of 
        ETSI GS NFV-SOL 013. 

        The NFV-MANO functional entity shall support receiving this parameter 
        as part of the URI query string. The API consumer may supply this 
        parameter. 

        All attribute names that appear in the ChangeStateOpOcc and in data 
        types referenced from it shall be supported by the NFV-MANO functional 
        entity in the expression. 
      in: query
      required: false
      schema:
        type: string
    filter.PeerEntity:
      name: filter
      description: >
        Attribute-based filtering expression according to clause 5.2 of 
        ETSI GS NFV-SOL 013. 

        The NFV-MANO functional entity shall support receiving this parameter 
        as part of the URI query string. The API consumer may supply this 
        parameter. 

        All attribute names that appear in the PeerEntity and in data 
        types referenced from it shall be supported by the NFV-MANO functional 
        entity in the expression. 
      in: query
      required: false
      schema:
        type: string

    exclude_default.ManoServiceInterface:
      name: exclude_default
      description: >
        Indicates to exclude the following complex attributes from the 
        response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. 
        The NFV-MANO functional entity shall support this parameter.

        The following attributes shall be excluded from the ManoServiceInterface 
        structure in the response body if this parameter is provided, or none of 
        the parameters "all_fields," "fields", "exclude_fields", "exclude_default" 
        are provided:
        - none
      in: query
      required: false
      schema:
        type: string
    exclude_default.CimSubscription:
      name: exclude_default
      description: >
        Indicates to exclude the following complex attributes from the 
        response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. 
        The NFV-MANO functional entity shall support this parameter.

        The following attributes shall be excluded from the CimSubscription 
        structure in the response body if this parameter is provided, or none of 
        the parameters "all_fields," "fields", "exclude_fields", "exclude_default" 
        are provided:
        - none
      in: query
      required: false
      schema:
        type: string
    exclude_default.ChangeStateOpOcc:
      name: exclude_default
      description: >
        Indicates to exclude the following complex attributes from the 
        response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. 
        The NFV-MANO functional entity shall support this parameter.

        The following attributes shall be excluded from the ChangeStateOpOcc 
        structure in the response body if this parameter is provided, or none of 
        the parameters "all_fields," "fields", "exclude_fields", "exclude_default" 
        are provided:
        - none
      in: query
      required: false
      schema:
        type: string
    exclude_default.PeerEntity:
      name: exclude_default
      description: >
        Indicates to exclude the following complex attributes from the 
        response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. 
        The NFV-MANO functional entity shall support this parameter.

        The following attributes shall be excluded from the PeerEntity 
        structure in the response body if this parameter is provided, or none of 
        the parameters "all_fields," "fields", "exclude_fields", "exclude_default" 
        are provided:
        - none
      in: query
      required: false
      schema:
        type: string

    manoServiceInterfaceId:
      name: manoServiceInterfaceId
      in: path
      description: >-
        Identifier of the MANO service interface.
      required: true
      schema:
        $ref: '../components/SOL009_schemas.yaml#/components/schemas/Identifier'

    subscriptionId:
      name: subscriptionId
      in: path
      description: >-
        Identifier of the subscription
      required: true
      schema:
        $ref: '../components/SOL009_schemas.yaml#/components/schemas/Identifier'

    changeStateOpOccId:
      name: changeStateOpOccId
      in: path
      description: >-
        Identifier of the change state operation occurrence
      required: true
      schema:
        $ref: '../components/SOL009_schemas.yaml#/components/schemas/Identifier'

    peerEntityId:
      name: peerEntityId
      in: path
      description: >-
        Identifier of the peer entity
      required: true
      schema:
        $ref: '../components/SOL009_schemas.yaml#/components/schemas/Identifier'

  requestBodies:
    ModifyManoEntityRequest:
      description: >
        Parameters for the NFV-MANO configuration and information 
        modification, as defined in clause 5.6.2.3.
        The Content-Type header shall be set to "application/merge-patch+json" 
        according to IETF RFC 7396.
      content:
        application/merge-patch+json:
          schema:
            $ref: "#/components/schemas/ManoConfigModificationRequest"
      required: true
    
    ChangeManoEntityStateRequest:
      description: >
        Parameters for the change state operation, as defined in clause 5.6.2.8.
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ChangeStateRequest"
      required: true
    
    ModifyManoEnityInterfaceRequest:
      description: >
        Parameters for the modification of configuration parameters of 
        the NFV-MANO service interface, as defined in clause 5.6.2.12.

        The Content-Type header shall be set to "application/merge-patch+json"
        according to IETF RFC 7396.
      content:
        application/merge-patch+json:
          schema:
            $ref: "#/components/schemas/ManoServiceInterfaceModificationRequest" 
      required: true
    
    ChangeManoEntityInterfaceStateRequest:
      description: >
        Parameters for the change state operation, as defined in 
        clause 5.6.2.8.
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ChangeStateRequest"
      required: true
      description: >
        Details of the subscription to be created, as defined in 
        clause 5.6.2.5-1.
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CimSubscriptionRequest"
      required: true
    
    CreatePeerEntityRequest:
      description: >
        The peer entity creation parameters, as defined in clause 5.6.2.14.
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CreatePeerEntityRequest"
      required: true
    
    ModifyPeerEntityRequest:
      description: >
        Parameters for the modification of configuration parameters of 
        the peer functional entity, as defined in clause 5.6.2.16

        The Content-Type header shall be set to "application/merge-patch+json" 
        according to IETF RFC 7396.
      content:
        application/merge-patch+json:
          schema:
            $ref: "#/components/schemas/PeerEntityConfigModificationRequest"
      required: true

  responses:
    mano_entity.get.200:
      description: >
        200 OK

        Shall be returned when configuration and information about 
        the NFV-MANO functional entity has been read successfully.
        The response body shall contain a representation of the NFV-MANO
        functional entity, as defined in clause 5.6.2.2.
      headers:
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ManoEntity"

    mano_entity.patch.200:
      description: >
        200 OK

        Shall be returned when the modification of configuration on the 
        NFV-MANO functional entity has been accepted and completed.
      headers:
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ManoConfigModifications"
    mano_entity.patch.409:
      description: >
        409 CONFLICT

        Shall be returned upon the following error: The operation cannot 
        be executed currently, due to a conflict with the state of the 
        "NFV-MANO entity" resource.

        Typically, this is due to the fact that another configuration and 
        information modification is ongoing.

        The response body shall contain a ProblemDetails structure, in which 
        the "detail" attribute should convey more information about the error.
      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.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "../components/SOL009_schemas.yaml#/components/schemas/ProblemDetails"
    mano_entity.patch.412:
      description: >
        412 PRECONDITION FAILED

        Shall be returned upon the following error: A precondition given in 
        an HTTP request header is not fulfilled.

        Typically, this is due to an ETag mismatch, indicating that the resource 
        was modified by another entity.

        The response body should contain a ProblemDetails structure, in which 
        the "detail" attribute should convey more information about the error
      headers:
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "../components/SOL009_schemas.yaml#/components/schemas/ProblemDetails"

    mano_entity-change_state.post.202:
      description: >
        202 ACCEPTED

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

        The response body shall be empty.

        The HTTP response shall include a "Location" HTTP header that contains 
        the URI of the newly-created "Individual change state operation occurrence"
        resource corresponding to the operation.
      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.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
        Location:
          description: >
            The resource URI of the created "Individual change state operation occurence" resource.
          schema:
            type: string
            format: url
            minimum: 1
            maximum: 1
    mano_entity-change_state.post.409:
      description: >
        409 CONFLICT

        Shall be returned upon the following error: The operation cannot be 
        executed currently, due to a conflict with the state of the resource.

        Typically, this is due to the fact that the resource is in an incompatible 
        state, or that another change state operation is ongoing.

        The response body shall contain a ProblemDetails structure, in which the 
        "detail" attribute shall convey more information about the error.
      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.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "../components/SOL009_schemas.yaml#/components/schemas/ProblemDetails"
        
    mano_entity-mano_interfaces.get.200:
      description: >
        200 OK

        Shall be returned when information about zero or more NFV-MANO 
        service interfaces has been queried successfully.

        The response body shall contain in an array the representations 
        of zero or more NFV-MANO service interfaces, as defined in 
        clause 5.6.2.11.

        If the “filter" URI parameter or one of the "all_fields", "fields" 
        (if supported), "exclude_fields" (if supported) or "exclude_default" 
        URI parameters was supplied in the request, the data in the response 
        body shall have been transformed according to the rules specified in 
        clauses 5.2.2 and 5.3.2 of ETSI GS NFV-SOL 013, respectively.

        If the NFV-MANO functional entity supports alternative N°2 (paging) 
        according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource, 
        inclusion of the Link HTTP header in this response shall follow the 
        provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013.
      headers:
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
        Link:
          description: >
            Reference to other resources. Link HTTP header in this response 
            shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013.
          schema:
            type: string
            minimum: 0
            maximum: 1
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: "#/components/schemas/ManoServiceInterface"
    mano_entity-mano_interfaces.get.400:
      description: >
        400 BAD REQUEST

        Shall be returned upon the following errors: 
          - Invalid attribute-based filtering expression.
            The response body shall contain a ProblemDetails structure, in which 
            the "detail" attribute should convey more information about the error.
          - Invalid attribute selector.
            The response body shall contain a ProblemDetails structure, in which 
            the "detail" attribute should convey more information about the error.
          - Response too big.
            If the NFV-MANO functional entity supports alternative N°1 (error) 
            according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource, 
            this error response shall follow the provisions in clause 5.4.2.2 of 
            ETSI GS NFV-SOL 013.
      headers:
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "../components/SOL009_schemas.yaml#/components/schemas/ProblemDetails"
    
    mano_entity-mano_interface.get.200:
      description: >
        200 OK

        Shall be returned when information about an individual NFV-MANO 
        service interface has been read successfully.

        The response body shall contain a representation of the NFV-MANO 
        service interface, as defined in clause 5.6.2.11.
      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.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ManoServiceInterface"
    mano_entity-mano_interface.patch.200:
      description: >
        200 OK

        Shall be returned when the request has been accepted and completed.

        The response body shall contain a representation of the attribute 
        modifications for the "Individual NFV-MANO service interface" resource,
        as defined in clause 5.6.2.13.
      headers:
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ManoServiceInterfaceModifications"
    mano_entity-mano_interface.patch.409:
      description: >
        409 CONFLICT

        Shall be returned upon the following error: The operation cannot 
        be executed currently, due to a conflict with the state of the 
        "Individual NFV-MANO service interface" resource.

        Typically, this is due to the fact that another operation is