-.. This work is licensed under a Creative Commons Attribution 4.0 International License.\r
-.. http://creativecommons.org/licenses/by/4.0\r
-\r
-******************\r
-OOF-HAS Interfaces\r
-******************\r
-\r
-OOF-HAS Create/Update API\r
-#########################\r
-\r
-+--------------------+-------------------------------------+\r
-|Interface Definition|Description |\r
-+====================+=====================================+\r
-|URI |{serverRoot}/oof/has/v2 |\r
-+--------------------+-------------------------------------+\r
-|Operation Type |POST |\r
-+--------------------+-------------------------------------+\r
-|Content-Type |application/json |\r
-+--------------------+-------------------------------------+\r
-\r
-\r
-Request Header\r
-**************\r
-\r
-+----------------+-----------+-------------------------------------------------------------------------------------------+\r
-| Header Name | Qualifier | Description |\r
-+================+===========+===========================================================================================+\r
-| Accept | N | Determines the format of the body of the response. Valid value is “application/json” |\r
-+----------------+-----------+-------------------------------------------------------------------------------------------+\r
-| Authorization | Y | Supplies Basic Authentication credentials for the request. If the Authorization header is |\r
-| | | missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is |\r
-| | | invalid, then an HTTP 401 Unauthorized response is returned. |\r
-+----------------+-----------+-------------------------------------------------------------------------------------------+\r
-| Content-Type | Y | Determines the format of the request content. Only application/json is supported. |\r
-+----------------+-----------+-------------------------------------------------------------------------------------------+\r
-| Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |\r
-+----------------+-----------+-------------------------------------------------------------------------------------------+\r
-\r
-\r
-Request Body\r
-************\r
-\r
-+---------------+-----------+-------------+----------------------+---------------+------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+===============+===========+=============+======================+===============+==========================================+\r
-| requestInfo | M | 1 | RequestInfo Object | - | The content of the RequestInfo object. |\r
-+---------------+-----------+-------------+----------------------+---------------+------------------------------------------+\r
-| placementInfo | M | 1 | PlacementInfo Object | - | The Content of the PlacementInfo object. |\r
-+---------------+-----------+-------------+----------------------+---------------+------------------------------------------+\r
-| licenseInfo | M | 1 | LicenseInfo Object | - | The Content of the LicenseInfo object. |\r
-+---------------+-----------+-------------+----------------------+---------------+------------------------------------------+\r
-| serviceInfo | M | 1 | ServiceInfo Object | - | The Content of the ServiceInfo object. |\r
-+---------------+-----------+-------------+----------------------+---------------+------------------------------------------+\r
-\r
-\r
-RequestInfo Object:\r
-\r
-+---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+===============+===========+=============+=================+===============+=======================================================================+\r
-| transactionId | M | 1 | UUID/String | - | A unique ID to track an ONAP transaction. |\r
-+---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+\r
-| requestId | M | 1 | UUID/String | - | A unique ID to track multiple requests associated with a transaction. |\r
-+---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+\r
-| callbackUrl | M | 1 | URL | - | The end point of a callback service where recommendations are posted. |\r
-+---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+\r
-| sourceId | M | 1 | String | - | The unique ID of a client making an optimization call. |\r
-+---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+\r
-| requestType | M | 1 | String | create, | The type of a request |\r
-| | | | | update, | |\r
-| | | | | delete | |\r
-+---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+\r
-| numSolutions | O | 1 | Integer | - | Expected number of solutions. |\r
-+---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+\r
-| optimizers | M | 1..N | List of Strings | placement | A list of optimization services. |\r
-+---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+\r
-| timeout | M | 1 | Integer | - | A tolerance window (in min) for expecting solutions. |\r
-+---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+\r
-\r
-\r
-PlacementInfo Object:\r
-\r
-+-------------------+-----------+-------------+--------------------------------+---------------+---------------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+===================+===========+=============+================================+===============+===================================================+\r
-| requestParameters | M | 1 | JSON BLOB | - | A service ordering information. |\r
-+-------------------+-----------+-------------+--------------------------------+---------------+---------------------------------------------------+\r
-| placementDemands | M | 1..N | List of PlacementDemand Object | - | The resource information for a placement service. |\r
-+-------------------+-----------+-------------+--------------------------------+---------------+---------------------------------------------------+\r
-\r
-\r
-PlacementDemand Object:\r
-\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+====================+===========+=============+======================+===============+=================================================================+\r
-| resourceModuleName | M | 1 | String | - | A resource name as defined in a service model. |\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-| serviceResourceId | M | 1 | String | - | A unique resource Id with a local scope between client and OOF. |\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-| tenantId | O | 1 | String | - | A tenant Id as defined in the ordering system. |\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-| resourceModelInfo | M | 1 | ModelMetaData Object | - | Resource model information as defined in SDC. |\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-| existingCandidates | O | 1 | Candidates Object | - | The existing placement information of a resource. |\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-| excludedCandidates | O | 1 | Candidates Object | - | Candidates that need to be excluded from solutions. |\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-| requiredCandidates | O | 1 | Candidates Object | - | Candidates that must be included in solutions. |\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-\r
-\r
-ModelMetaData Object:\r
-\r
-+------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+========================+===========+=============+=========+===============+===========================================================+\r
-| modelInvariantId | M | 1 | String | - | A model invariant Id as defined in a service model. |\r
-+------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+\r
-| modelVersionId | M | 1 | String | - | A unique model Id as defined in a service model. |\r
-+------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+\r
-| modelName | O | 1 | String | - | A model name as defined in a service model. |\r
-+------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+\r
-| modelType | O | 1 | String | - | A model type as defined in a service model. |\r
-+------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+\r
-| modelVersion | O | 1 | String | - | A model version as defined in a service model. |\r
-+------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+\r
-| modelCustomizationName | O | 1 | String | - | A model customization name as defined in a service model. |\r
-+------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+\r
-\r
-\r
-Candidates Object:\r
-\r
-+----------------+-----------+-------------+-----------------+----------------------+--------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+================+===========+=============+=================+======================+==========================+\r
-| identifierType | M | 1 | String | service_instance_id, | The type of a candidate. |\r
-| | | | | vnf_name, | |\r
-| | | | | cloud_region_id | |\r
-+----------------+-----------+-------------+-----------------+----------------------+--------------------------+\r
-| identifiers | M | 1..N | List of Strings | - | A list of identifiers. |\r
-+----------------+-----------+-------------+-----------------+----------------------+--------------------------+\r
-\r
-\r
-ServiceInfo Object:\r
-\r
-+-------------------+-----------+-------------+----------------------+---------------+--------------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+===================+===========+=============+======================+===============+==================================================+\r
-| serviceInstanceId | M | 1 | String | - | A service instance id associated with a request. |\r
-+-------------------+-----------+-------------+----------------------+---------------+--------------------------------------------------+\r
-| serviceModelInfo | M | 1 | ModelMetaData Object | - | A list of identifiers. |\r
-+-------------------+-----------+-------------+----------------------+---------------+--------------------------------------------------+\r
-\r
-\r
-LicenseInfo Object:\r
-\r
-+----------------+-----------+-------------+-------------------------------+---------------+--------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+================+===========+=============+===============================+===============+============================================+\r
-| licenseDemands | M | 1 | List of LicenseDemands Object | - | A list of resources for license selection. |\r
-+----------------+-----------+-------------+-------------------------------+---------------+--------------------------------------------+\r
-\r
-\r
-LicenseDemands Object:\r
-\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+====================+===========+=============+======================+===============+=================================================================+\r
-| resourceModuleName | M | 1 | String | - | A resource name as defined in a service model. |\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-| serviceResourceId | M | 1 | String | - | A unique resource Id with a local scope between client and OOF. |\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-| resourceModelInfo | M | 1 | ModelMetaData Object | - | Resource model information as defined in a service model. |\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-| existingLicenses | O | 1 | LicenseModel Object | - | Existing license information assigned to a resource. |\r
-+--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+\r
-\r
-\r
-LicenseModel Object:\r
-\r
-+---------------------+-----------+-------------+-----------------+---------------+----------------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+=====================+===========+=============+=================+===============+====================================================+\r
-| entitlementPoolUUID | M | 1..N | List of Strings | - | Entitlement pool UUIDs associated with a resource. |\r
-+---------------------+-----------+-------------+-----------------+---------------+----------------------------------------------------+\r
-| licenseKeyGroupUUID | M | 1..N | List of Strings | - | License key groups associated with a resource |\r
-+---------------------+-----------+-------------+-----------------+---------------+----------------------------------------------------+\r
-\r
-\r
-Synchronous Response Body:\r
-\r
-+---------------+-----------+-------------+-------------+------------------+------------------------------------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+===============+===========+=============+=============+==================+========================================================================+\r
-| requestId | M | 1 | UUID/String | - | A unique Id for an ONAP transaction. |\r
-+---------------+-----------+-------------+-------------+------------------+------------------------------------------------------------------------+\r
-| transactionId | M | 1 | UUID/String | - | A unique ID to track multiple requests associated with a transaction. |\r
-+---------------+-----------+-------------+-------------+------------------+------------------------------------------------------------------------+\r
-| statusMessage | O | 1 | String | - | Reasoning if a requestStatus is failure. |\r
-+---------------+-----------+-------------+-------------+------------------+------------------------------------------------------------------------+\r
-| requestStatus | M | 1 | String | success, failure | The status of a request. |\r
-+---------------+-----------+-------------+-------------+------------------+------------------------------------------------------------------------+\r
-\r
-\r
-Asynchronous Response Body:\r
-\r
-+---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+===============+===========+=============+=================+===============+========================================================================+\r
-| requestId | M | 1 | UUID/String | - | A unique Id for an ONAP transaction. |\r
-+---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+\r
-| transactionId | M | 1 | UUID/String | - | A unique ID to track multiple requests associated with a transaction. |\r
-+---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+\r
-| statusMessage | O | 1 | String | - | Reasoning if requestStatus is failure. |\r
-+---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+\r
-| requestStatus | M | 1 | String | success, | The status of a request. |\r
-| | | | | failure, | |\r
-| | | | | pending | |\r
-+---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+\r
-| solutions | M | 1 | Solution Object | - | Solutions related to a request. |\r
-+---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+\r
-\r
-\r
-Solutions Object:\r
-\r
-+--------------------+-----------+-------------+--------------------------------------+---------------+--------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+====================+===========+=============+======================================+===============+================================+\r
-| placementSolutions | M | 1..N | List of ComprehensiveSolution Object | - | A list of placement solutions. |\r
-+--------------------+-----------+-------------+--------------------------------------+---------------+--------------------------------+\r
-| licenseSolutions | M | 1 | List of LicenseSolution Object | - | A list of license solutions |\r
-+--------------------+-----------+-------------+--------------------------------------+---------------+--------------------------------+\r
-\r
-\r
-\r
-ComprehensiveSolution Object:\r
-\r
-+-----------+-----------+-------------+----------------------------------+---------------+--------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+===========+===========+=============+==================================+===============+================================+\r
-| - | M | 1..N | List of PlacementSolution Object | - | A list of placement solutions. |\r
-+-----------+-----------+-------------+----------------------------------+---------------+--------------------------------+\r
-\r
-\r
-PlacementSolution Object:\r
-\r
-+--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+====================+===========+=============+========================+=====================+=========================================================+\r
-| resourceModuleName | M | 1 | String | - | The name of a resource as defined in the service model. |\r
-+--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+\r
-| serviceResourceId | M | 1 | String | - | A resource Id as defined in a service model. |\r
-+--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+\r
-| identifierType | M | 1 | String | service_instance_id | The type of a candidate. |\r
-+--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+\r
-| identifier | M | 1 | String | - | The id of a candidate. |\r
-+--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+\r
-| assignmentInfo | O | 1..N | List of AssignmentInfo | - | Additional information related to a candidate. |\r
-| | | | object | | |\r
-+--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+\r
-\r
-\r
-AssignmentInfo Object:\r
-\r
-+-----------+-----------+-------------+---------+---------------+---------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+===========+===========+=============+=========+===============+=====================+\r
-| key | M | 1 | String | - | An attribute name. |\r
-+-----------+-----------+-------------+---------+---------------+---------------------+\r
-| value | M | 1 | String | - | An attribute value. |\r
-+-----------+-----------+-------------+---------+---------------+---------------------+\r
-\r
-\r
-LicenseSolutions Object:\r
-\r
-+------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+\r
-| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |\r
-+==============================+===========+=============+================+===============+==========================================+\r
-| resourceModuleName | M | 1 | String | - | A resource name as defined in a service. |\r
-+------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+\r
-| serviceResourceId | M | 1 | String | - | A resource Id as defined in a service. |\r
-+------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+\r
-| entitlementPoolUUID | M | 1..N | List of String | - | A list of entitlementPoolUUIDs. |\r
-+------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+\r
-| licenseKeyGroupUUID | M | 1..N | List of String | - | A list of licenseKeyGroupUUID. |\r
-+------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+\r
-| entitlementPoolInvariantUUID | M | 1..N | List of String | - | A list of entitlementPoolInvariantUUID . |\r
-+------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+\r
-| licenseKeyGroupInvariantUUID | M | 1..N | List of String | - | A list of licenseKeyGroupInvariantUUID . |\r
-+------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+\r
-\r
-\r
-HTTP Response Code\r
-++++++++++++++++++\r
-\r
-+-----------+-----------------------+---------------------------------------------------------------+\r
-| HTTP Code | Response Phrase | Description |\r
-+===========+=======================+===============================================================+\r
-| 201 | Created | An optimization solution is found. |\r
-+-----------+-----------------------+---------------------------------------------------------------+\r
-| 202 | Accepted | An optimization request is accepted. |\r
-+-----------+-----------------------+---------------------------------------------------------------+\r
-| 400 | Bad request | Bad request. |\r
-+-----------+-----------------------+---------------------------------------------------------------+\r
-| 401 | Unauthorized | Request body is not compliant with the API definition. |\r
-+-----------+-----------------------+---------------------------------------------------------------+\r
-| 404 | Not found | The server cannot find the requested URI. |\r
-+-----------+-----------------------+---------------------------------------------------------------+\r
-| 405 | Method not found | The requested method is not supported by a server. |\r
-+-----------+-----------------------+---------------------------------------------------------------+\r
-| 500 | Internal server error | The server encountered an internal server error or timed out. |\r
-+-----------+-----------------------+---------------------------------------------------------------+\r
-\r
-\r
-\r
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+******************
+OOF-HAS Interfaces
+******************
+
+OOF-HAS Create/Update API
+#########################
+
++--------------------+-------------------------------------+
+|Interface Definition|Description |
++====================+=====================================+
+|URI |{serverRoot}/oof-osdf/v2/placement |
++--------------------+-------------------------------------+
+|Operation Type |POST |
++--------------------+-------------------------------------+
+|Content-Type |application/json |
++--------------------+-------------------------------------+
+
+
+Request Header
+**************
+
++----------------+-----------+-------------------------------------------------------------------------------------------+
+| Header Name | Required | Description |
++================+===========+===========================================================================================+
+| Accept | N | Determines the format of the body of the response. Valid value is “application/json” |
++----------------+-----------+-------------------------------------------------------------------------------------------+
+| Authorization | Y | Supplies Basic Authentication credentials for the request. If the Authorization header is |
+| | | missing, then an HTTP 400 Invalid Request response is returned. If the string supplied is |
+| | | invalid, then an HTTP 401 Unauthorized response is returned. |
++----------------+-----------+-------------------------------------------------------------------------------------------+
+| Content-Type | Y | Determines the format of the request content. Only application/json is supported. |
++----------------+-----------+-------------------------------------------------------------------------------------------+
+| Content-Length | N | Number of bytes in the body of the request. Note that content length is limited to 1 MB. |
++----------------+-----------+-------------------------------------------------------------------------------------------+
+
+
+Request Body
+************
+
++---------------+-----------+-------------+----------------------+---------------+------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++===============+===========+=============+======================+===============+==========================================+
+| requestInfo | M | 1 | RequestInfo Object | - | The content of the RequestInfo object. |
++---------------+-----------+-------------+----------------------+---------------+------------------------------------------+
+| placementInfo | M | 1 | PlacementInfo Object | - | The Content of the PlacementInfo object. |
++---------------+-----------+-------------+----------------------+---------------+------------------------------------------+
+| licenseInfo | M | 1 | LicenseInfo Object | - | The Content of the LicenseInfo object. |
++---------------+-----------+-------------+----------------------+---------------+------------------------------------------+
+| serviceInfo | M | 1 | ServiceInfo Object | - | The Content of the ServiceInfo object. |
++---------------+-----------+-------------+----------------------+---------------+------------------------------------------+
+
+
+RequestInfo Object:
+
++---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++===============+===========+=============+=================+===============+=======================================================================+
+| transactionId | M | 1 | UUID/String | - | A unique ID to track an ONAP transaction. |
++---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+
+| requestId | M | 1 | UUID/String | - | A unique ID to track multiple requests associated with a transaction. |
++---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+
+| callbackUrl | M | 1 | URL | - | The end point of a callback service where recommendations are posted. |
++---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+
+| sourceId | M | 1 | String | - | The unique ID of a client making an optimization call. |
++---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+
+| requestType | M | 1 | String | create, | The type of a request |
+| | | | | update, | |
+| | | | | delete | |
++---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+
+| numSolutions | O | 1 | Integer | - | Expected number of solutions. |
++---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+
+| optimizers | M | 1..N | List of Strings | placement | A list of optimization services. |
++---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+
+| timeout | M | 1 | Integer | - | A tolerance window (in second) for expecting solutions. |
++---------------+-----------+-------------+-----------------+---------------+-----------------------------------------------------------------------+
+
+
+PlacementInfo Object:
+
++-------------------+-----------+-------------+--------------------------------+---------------+---------------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++===================+===========+=============+================================+===============+===================================================+
+| requestParameters | M | 1 | JSON BLOB | - | A service ordering information. |
++-------------------+-----------+-------------+--------------------------------+---------------+---------------------------------------------------+
+| placementDemands | M | 1..N | List of PlacementDemand Object | - | The resource information for a placement service. |
++-------------------+-----------+-------------+--------------------------------+---------------+---------------------------------------------------+
+
+
+PlacementDemand Object:
+
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++====================+===========+=============+======================+===============+=================================================================+
+| resourceModuleName | M | 1 | String | - | A resource name as defined in a service model. |
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+| serviceResourceId | M | 1 | String | - | A unique resource Id with a local scope between client and OOF. |
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+| givenPlacement | O | 1 | KeyValuePairs | - | placement parameters defined in the ordering system, |
+| | | | | | keyname include tenantId. |
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+| resourceModelInfo | M | 1 | ModelMetaData Object | - | Resource model information as defined in SDC. |
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+| existingCandidates | O | 1 | Candidates Object | - | The existing placement information of a resource. |
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+| excludedCandidates | O | 1 | Candidates Object | - | Candidates that need to be excluded from solutions. |
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+| requiredCandidates | O | 1 | Candidates Object | - | Candidates that must be included in solutions. |
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+
+
+ModelMetaData Object:
+
++------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++========================+===========+=============+=========+===============+===========================================================+
+| modelInvariantId | M | 1 | String | - | A model invariant Id as defined in a service model. |
++------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+
+| modelVersionId | M | 1 | String | - | A unique model Id as defined in a service model. |
++------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+
+| modelName | O | 1 | String | - | A model name as defined in a service model. |
++------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+
+| modelType | O | 1 | String | - | A model type as defined in a service model. |
++------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+
+| modelVersion | O | 1 | String | - | A model version as defined in a service model. |
++------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+
+| modelCustomizationName | O | 1 | String | - | A model customization name as defined in a service model. |
++------------------------+-----------+-------------+---------+---------------+-----------------------------------------------------------+
+
+
+Candidates Object:
+
++----------------+-----------+-------------+-----------------+----------------------+--------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++================+===========+=============+=================+======================+==========================+
+| identifierType | M | 1 | String | service_instance_id, | The type of a candidate. |
+| | | | | vnf_name, | |
+| | | | | cloud_region_id | |
++----------------+-----------+-------------+-----------------+----------------------+--------------------------+
+| identifiers | M | 1..N | List of Strings | - | A list of identifiers. |
++----------------+-----------+-------------+-----------------+----------------------+--------------------------+
+
+
+ServiceInfo Object:
+
++-------------------+-----------+-------------+----------------------+---------------+--------------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++===================+===========+=============+======================+===============+==================================================+
+| serviceInstanceId | M | 1 | String | - | A service instance id associated with a request. |
++-------------------+-----------+-------------+----------------------+---------------+--------------------------------------------------+
+| serviceModelInfo | M | 1 | ModelMetaData Object | - | A list of identifiers. |
++-------------------+-----------+-------------+----------------------+---------------+--------------------------------------------------+
+
+
+LicenseInfo Object:
+
++----------------+-----------+-------------+-------------------------------+---------------+--------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++================+===========+=============+===============================+===============+============================================+
+| licenseDemands | M | 1..N | List of LicenseDemands Object | - | A list of resources for license selection. |
++----------------+-----------+-------------+-------------------------------+---------------+--------------------------------------------+
+
+
+LicenseDemands Object:
+
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++====================+===========+=============+======================+===============+=================================================================+
+| resourceModuleName | M | 1 | String | - | A resource name as defined in a service model. |
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+| serviceResourceId | M | 1 | String | - | A unique resource Id with a local scope between client and OOF. |
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+| resourceModelInfo | M | 1 | ModelMetaData Object | - | Resource model information as defined in a service model. |
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+| existingLicenses | O | 1 | LicenseModel Object | - | Existing license information assigned to a resource. |
++--------------------+-----------+-------------+----------------------+---------------+-----------------------------------------------------------------+
+
+
+LicenseModel Object:
+
++---------------------+-----------+-------------+-----------------+---------------+----------------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++=====================+===========+=============+=================+===============+====================================================+
+| entitlementPoolUUID | M | 1..N | List of Strings | - | Entitlement pool UUIDs associated with a resource. |
++---------------------+-----------+-------------+-----------------+---------------+----------------------------------------------------+
+| licenseKeyGroupUUID | M | 1..N | List of Strings | - | License key groups associated with a resource |
++---------------------+-----------+-------------+-----------------+---------------+----------------------------------------------------+
+
+
+Synchronous Response Body:
+
++---------------+-----------+-------------+-------------+------------------+------------------------------------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++===============+===========+=============+=============+==================+========================================================================+
+| requestId | M | 1 | UUID/String | - | A unique Id for an ONAP transaction. |
++---------------+-----------+-------------+-------------+------------------+------------------------------------------------------------------------+
+| transactionId | M | 1 | UUID/String | - | A unique ID to track multiple requests associated with a transaction. |
++---------------+-----------+-------------+-------------+------------------+------------------------------------------------------------------------+
+| statusMessage | O | 1 | String | - | Reasoning if a requestStatus is failure. |
++---------------+-----------+-------------+-------------+------------------+------------------------------------------------------------------------+
+| requestStatus | M | 1 | String | success, failure | The status of a request. |
++---------------+-----------+-------------+-------------+------------------+------------------------------------------------------------------------+
+
+
+Asynchronous Response Body:
+
++---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++===============+===========+=============+=================+===============+========================================================================+
+| requestId | M | 1 | UUID/String | - | A unique Id for an ONAP transaction. |
++---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+
+| transactionId | M | 1 | UUID/String | - | A unique ID to track multiple requests associated with a transaction. |
++---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+
+| statusMessage | O | 1 | String | - | Reasoning if requestStatus is failure. |
++---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+
+| requestStatus | M | 1 | String | success, | The status of a request. |
+| | | | | failure, | |
+| | | | | pending | |
++---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+
+| solutions | M | 1 | Solutions Object| - | Solutions related to a request. |
++---------------+-----------+-------------+-----------------+---------------+------------------------------------------------------------------------+
+
+
+Solutions Object:
+
++--------------------+-----------+-------------+--------------------------------------+---------------+--------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++====================+===========+=============+======================================+===============+================================+
+| placementSolutions | M | 1..N | List of ComprehensiveSolution Object | - | A list of placement solutions. |
++--------------------+-----------+-------------+--------------------------------------+---------------+--------------------------------+
+| licenseSolutions | M | 1..N | List of LicenseSolution Object | - | A list of license solutions |
++--------------------+-----------+-------------+--------------------------------------+---------------+--------------------------------+
+
+
+
+ComprehensiveSolution Object:
+
++-----------+-----------+-------------+----------------------------------+---------------+--------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++===========+===========+=============+==================================+===============+================================+
+| - | M | 1..N | List of PlacementSolution Object | - | A list of placement solutions. |
++-----------+-----------+-------------+----------------------------------+---------------+--------------------------------+
+
+
+PlacementSolution Object:
+
++--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++====================+===========+=============+========================+=====================+=========================================================+
+| resourceModuleName | M | 1 | String | - | The name of a resource as defined in the service model. |
++--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+
+| serviceResourceId | M | 1 | String | - | A resource Id as defined in a service model. |
++--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+
+| identifierType | M | 1 | String | service_instance_id | The type of a candidate. |
++--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+
+| identifier | M | 1 | String | - | The id of a candidate. |
++--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+
+| assignmentInfo | O | 1..N | List of AssignmentInfo | - | Additional information related to a candidate. |
+| | | | object | | |
++--------------------+-----------+-------------+------------------------+---------------------+---------------------------------------------------------+
+
+
+AssignmentInfo Object:
+
++-----------+-----------+-------------+---------+---------------+---------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++===========+===========+=============+=========+===============+=====================+
+| key | M | 1 | String | - | An attribute name. |
++-----------+-----------+-------------+---------+---------------+---------------------+
+| value | M | 1 | String | - | An attribute value. |
++-----------+-----------+-------------+---------+---------------+---------------------+
+
+
+LicenseSolutions Object:
+
++------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+
+| Attribute | Qualifier | Cardinality | Content | Domain Values | Description |
++==============================+===========+=============+================+===============+==========================================+
+| resourceModuleName | M | 1 | String | - | A resource name as defined in a service. |
++------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+
+| serviceResourceId | M | 1 | String | - | A resource Id as defined in a service. |
++------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+
+| entitlementPoolUUID | M | 1..N | List of String | - | A list of entitlementPoolUUIDs. |
++------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+
+| licenseKeyGroupUUID | M | 1..N | List of String | - | A list of licenseKeyGroupUUID. |
++------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+
+| entitlementPoolInvariantUUID | M | 1..N | List of String | - | A list of entitlementPoolInvariantUUID . |
++------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+
+| licenseKeyGroupInvariantUUID | M | 1..N | List of String | - | A list of licenseKeyGroupInvariantUUID . |
++------------------------------+-----------+-------------+----------------+---------------+------------------------------------------+
+
+
+HTTP Response Code
+++++++++++++++++++
+
++-----------+-----------------------+---------------------------------------------------------------+
+| HTTP Code | Response Phrase | Description |
++===========+=======================+===============================================================+
+| 201 | Created | An optimization solution is found. |
++-----------+-----------------------+---------------------------------------------------------------+
+| 202 | Accepted | An optimization request is accepted. |
++-----------+-----------------------+---------------------------------------------------------------+
+| 400 | Bad request | Bad request. |
++-----------+-----------------------+---------------------------------------------------------------+
+| 401 | Unauthorized | Request body is not compliant with the API definition. |
++-----------+-----------------------+---------------------------------------------------------------+
+| 404 | Not found | The server cannot find the requested URI. |
++-----------+-----------------------+---------------------------------------------------------------+
+| 405 | Method not found | The requested method is not supported by a server. |
++-----------+-----------------------+---------------------------------------------------------------+
+| 500 | Internal server error | The server encountered an internal server error or timed out. |
++-----------+-----------------------+---------------------------------------------------------------+
+
+
+