summaryrefslogtreecommitdiffstats
path: root/docs/sections/offeredapis.rst
diff options
context:
space:
mode:
authorFrank Sandoval <f.sandoval-contractor@cablelabs.com>2018-09-06 15:48:37 -0600
committerFrank Sandoval <frank.sandoval@oamtechnologies.com>2018-09-06 16:27:23 -0600
commita3a7de12007c0f004cb0e2e49e5831ae99ac1b41 (patch)
tree1655241c1ef23a95f3398eaf394ddad65347a3dd /docs/sections/offeredapis.rst
parentb92510795fb7b15c3e046d0bf96b8c57b32d8565 (diff)
add swagger doc
Issue-ID: OPTFRA-282 Change-Id: I50a760e85f3df9c5861ed1f9aa7275bbb9b231a6 Signed-off-by: Frank Sandoval <f.sandoval-contractor@cablelabs.com>
Diffstat (limited to 'docs/sections/offeredapis.rst')
-rw-r--r--docs/sections/offeredapis.rst312
1 files changed, 6 insertions, 306 deletions
diff --git a/docs/sections/offeredapis.rst b/docs/sections/offeredapis.rst
index 5c0f5e6..5151431 100644
--- a/docs/sections/offeredapis.rst
+++ b/docs/sections/offeredapis.rst
@@ -1,317 +1,17 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-******************
Offered APIs
-******************
+=============================================
-OOF-HAS Create/Update API
-#########################
+This document describes the OSDF HAS (Homing and Allocation Service) API
-+--------------------+-------------------------------------+
-|Interface Definition|Description |
-+====================+=====================================+
-|URI |{serverRoot}/oof-osdf/v2/placement |
-+--------------------+-------------------------------------+
-|Operation Type |POST |
-+--------------------+-------------------------------------+
-|Content-Type |application/json |
-+--------------------+-------------------------------------+
+To view API documentation in the interactive swagger UI download the following and
+paste into the swagger tool here: https://editor.swagger.io
-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. |
-+-----------+-----------------------+---------------------------------------------------------------+
+:download:`oof-osdf-has-api.json <./swaggerdoc/oof-osdf-has-api.json>`
+.. swaggerv2doc:: ./swaggerdoc/oof-osdf-has-api.json