OnboardingAPI doc update 54/100354/2
authorVijay VK <vv770d@att.com>
Wed, 15 Jan 2020 21:59:05 +0000 (21:59 +0000)
committerVENKATESH KUMAR <vv770d@att.com>
Fri, 24 Jan 2020 18:12:48 +0000 (13:12 -0500)
Change-Id: I314f1e1f0cf55366a6d7074d8bc7215aa8f9e8ee
Signed-off-by: VENKATESH KUMAR <vv770d@att.com>
Issue-ID: DCAEGEN2-1871

docs/sections/apis/mod-onboardingapi.json [new file with mode: 0644]
docs/sections/apis/mod-onboardingapi.rst [new file with mode: 0644]
docs/sections/offeredapis.rst

diff --git a/docs/sections/apis/mod-onboardingapi.json b/docs/sections/apis/mod-onboardingapi.json
new file mode 100644 (file)
index 0000000..8e8ce9a
--- /dev/null
@@ -0,0 +1,597 @@
+{
+       "swagger": "2.0",
+       "basePath": "/onboarding",
+       "paths": {
+               "/components": {
+                       "post": {
+                               "responses": {
+                                       "500": {
+                                               "description": "Internal Server Error"
+                                       },
+                                       "409": {
+                                               "description": "Component already exists",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "400": {
+                                               "description": "Bad Request",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "200": {
+                                               "description": "Success",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Component post"
+                                               }
+                                       }
+                               },
+                               "description": "Add a Component to the Catalog",
+                               "operationId": "post_component",
+                               "parameters": [{
+                                       "name": "payload",
+                                       "required": true,
+                                       "in": "body",
+                                       "schema": {
+                                               "$ref": "#/definitions/Component Spec"
+                                       }
+                               }, {
+                                       "name": "X-Fields",
+                                       "in": "header",
+                                       "type": "string",
+                                       "format": "mask",
+                                       "description": "An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html"
+                               }],
+                               "tags": ["onboarding"]
+                       },
+                       "get": {
+                               "responses": {
+                                       "500": {
+                                               "description": "Internal Server Error"
+                                       },
+                                       "200": {
+                                               "description": "Success",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Component List"
+                                               }
+                                       }
+                               },
+                               "description": "Get list of Components in the catalog",
+                               "operationId": "get_components",
+                               "parameters": [{
+                                       "name": "name",
+                                       "in": "query",
+                                       "type": "string",
+                                       "description": "Name of component to filter for"
+                               }, {
+                                       "name": "version",
+                                       "in": "query",
+                                       "type": "string",
+                                       "description": "Version of component to filter for"
+                               }, {
+                                       "name": "X-Fields",
+                                       "in": "header",
+                                       "type": "string",
+                                       "format": "mask",
+                                       "description": "An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html"
+                               }],
+                               "tags": ["onboarding"]
+                       }
+               },
+               "/components/{component_id}": {
+                       "parameters": [{
+                               "name": "component_id",
+                               "in": "path",
+                               "required": true,
+                               "type": "string"
+                       }],
+                       "put": {
+                               "responses": {
+                                       "500": {
+                                               "description": "Internal Server Error"
+                                       },
+                                       "404": {
+                                               "description": "Component not found in Catalog",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "400": {
+                                               "description": "Bad Request",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "200": {
+                                               "description": "Success, Component replaced"
+                                       }
+                               },
+                               "description": "Replace a Component Spec in the Catalog",
+                               "operationId": "put_component",
+                               "parameters": [{
+                                       "name": "payload",
+                                       "required": true,
+                                       "in": "body",
+                                       "schema": {
+                                               "$ref": "#/definitions/Component Spec"
+                                       }
+                               }],
+                               "tags": ["onboarding"]
+                       },
+                       "get": {
+                               "responses": {
+                                       "500": {
+                                               "description": "Internal Server Error"
+                                       },
+                                       "404": {
+                                               "description": "Component not found in Catalog",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "200": {
+                                               "description": "Success",
+                                               "schema": {
+                                                       "$ref": "#/definitions/component fields by id"
+                                               }
+                                       }
+                               },
+                               "description": "Get a Component",
+                               "operationId": "get_component",
+                               "parameters": [{
+                                       "name": "X-Fields",
+                                       "in": "header",
+                                       "type": "string",
+                                       "format": "mask",
+                                       "description": "An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html"
+                               }],
+                               "tags": ["onboarding"]
+                       },
+                       "patch": {
+                               "responses": {
+                                       "500": {
+                                               "description": "Internal Server Error"
+                                       },
+                                       "404": {
+                                               "description": "Component not found in Catalog",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "403": {
+                                               "description": "Forbidden Request",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "400": {
+                                               "description": "Bad Request",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "200": {
+                                               "description": "Success, Component status updated"
+                                       }
+                               },
+                               "description": "Update a Component's status in the Catalog",
+                               "operationId": "patch_component",
+                               "parameters": [{
+                                       "name": "payload",
+                                       "required": true,
+                                       "in": "body",
+                                       "schema": {
+                                               "$ref": "#/definitions/Patch Spec"
+                                       }
+                               }],
+                               "tags": ["onboarding"]
+                       }
+               },
+               "/dataformats": {
+                       "post": {
+                               "responses": {
+                                       "500": {
+                                               "description": "Internal Server Error"
+                                       },
+                                       "409": {
+                                               "description": "Data Format already exists",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "400": {
+                                               "description": "Bad Request",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "200": {
+                                               "description": "Success",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Data Format post"
+                                               }
+                                       }
+                               },
+                               "description": "Add a Data Format to the Catalog",
+                               "operationId": "post_dataformat",
+                               "parameters": [{
+                                       "name": "payload",
+                                       "required": true,
+                                       "in": "body",
+                                       "schema": {
+                                               "$ref": "#/definitions/Data Format Spec"
+                                       }
+                               }, {
+                                       "name": "X-Fields",
+                                       "in": "header",
+                                       "type": "string",
+                                       "format": "mask",
+                                       "description": "An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html"
+                               }],
+                               "tags": ["onboarding"]
+                       },
+                       "get": {
+                               "responses": {
+                                       "500": {
+                                               "description": "Internal Server Error"
+                                       },
+                                       "200": {
+                                               "description": "Success",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Data Format List"
+                                               }
+                                       }
+                               },
+                               "description": "Get list of Data Formats in the catalog",
+                               "operationId": "get_dataformats",
+                               "parameters": [{
+                                       "name": "X-Fields",
+                                       "in": "header",
+                                       "type": "string",
+                                       "format": "mask",
+                                       "description": "An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html"
+                               }],
+                               "tags": ["onboarding"]
+                       }
+               },
+               "/dataformats/{dataformat_id}": {
+                       "parameters": [{
+                               "name": "dataformat_id",
+                               "in": "path",
+                               "required": true,
+                               "type": "string"
+                       }],
+                       "put": {
+                               "responses": {
+                                       "500": {
+                                               "description": "Internal Server Error"
+                                       },
+                                       "404": {
+                                               "description": "Data Format not found in Catalog",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "400": {
+                                               "description": "Bad Request",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "200": {
+                                               "description": "Success, Data Format added"
+                                       }
+                               },
+                               "description": "Replace a Data Format Spec in the Catalog",
+                               "operationId": "put_dataformat",
+                               "parameters": [{
+                                       "name": "payload",
+                                       "required": true,
+                                       "in": "body",
+                                       "schema": {
+                                               "$ref": "#/definitions/Data Format Spec"
+                                       }
+                               }],
+                               "tags": ["onboarding"]
+                       },
+                       "get": {
+                               "responses": {
+                                       "500": {
+                                               "description": "Internal Server Error"
+                                       },
+                                       "404": {
+                                               "description": "Data Format not found in Catalog",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "200": {
+                                               "description": "Success",
+                                               "schema": {
+                                                       "$ref": "#/definitions/dataformat fields by id"
+                                               }
+                                       }
+                               },
+                               "description": "Get a Data Format",
+                               "operationId": "get_dataformat",
+                               "parameters": [{
+                                       "name": "X-Fields",
+                                       "in": "header",
+                                       "type": "string",
+                                       "format": "mask",
+                                       "description": "An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html"
+                               }],
+                               "tags": ["onboarding"]
+                       },
+                       "patch": {
+                               "responses": {
+                                       "500": {
+                                               "description": "Internal Server Error"
+                                       },
+                                       "404": {
+                                               "description": "Data Format not found in Catalog",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "403": {
+                                               "description": "Forbidden Request",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "400": {
+                                               "description": "Bad Request",
+                                               "schema": {
+                                                       "$ref": "#/definitions/Error message"
+                                               }
+                                       },
+                                       "200": {
+                                               "description": "Success, Data Format status updated"
+                                       }
+                               },
+                               "description": "Update a Data Format's status in the Catalog",
+                               "operationId": "patch_dataformat",
+                               "parameters": [{
+                                       "name": "payload",
+                                       "required": true,
+                                       "in": "body",
+                                       "schema": {
+                                               "$ref": "#/definitions/Patch Spec"
+                                       }
+                               }],
+                               "tags": ["onboarding"]
+                       }
+               }
+       },
+       "info": {
+               "title": "DCAE Onboarding HTTP API",
+               "version": "2.12.0"
+       },
+       "produces": ["application/json"],
+       "consumes": ["application/json"],
+       "tags": [{
+               "name": "onboarding",
+               "description": "Default namespace"
+       }],
+       "definitions": {
+               "Component Spec": {
+                       "properties": {
+                               "owner": {
+                                       "type": "string"
+                               },
+                               "spec": {
+                                       "type": "object",
+                                       "description": "The Component Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/component-specification/dcae-cli-v2/component-spec-schema.json"
+                               }
+                       }
+               },
+               "Error message": {
+                       "properties": {
+                               "message": {
+                                       "type": "string",
+                                       "description": ". . . . .Details about the unsuccessful API request"
+                               }
+                       },
+                       "type": "object"
+               },
+               "Component post": {
+                       "required": ["componentUrl"],
+                       "properties": {
+                               "componentUrl": {
+                                       "type": "string",
+                                       "description": ". . . . Url to the Component Specification"
+                               }
+                       },
+                       "type": "object"
+               },
+               "Component List": {
+                       "properties": {
+                               "components": {
+                                       "type": "array",
+                                       "items": {
+                                               "$ref": "#/definitions/component fields"
+                                       }
+                               }
+                       },
+                       "type": "object"
+               },
+               "component fields": {
+                       "required": ["componentType", "componentUrl", "description", "id", "modified", "name", "owner", "status", "version", "whenAdded"],
+                       "properties": {
+                               "id": {
+                                       "type": "string",
+                                       "description": ". . . . ID of the component"
+                               },
+                               "name": {
+                                       "type": "string",
+                                       "description": ". . . . Name of the component"
+                               },
+                               "version": {
+                                       "type": "string",
+                                       "description": ". . . . Version of the component"
+                               },
+                               "owner": {
+                                       "type": "string",
+                                       "description": ". . . . ID of who added the component"
+                               },
+                               "whenAdded": {
+                                       "type": "string",
+                                       "format": "date-time",
+                                       "description": ". . . . When component was added to the Catalog"
+                               },
+                               "modified": {
+                                       "type": "string",
+                                       "format": "date-time",
+                                       "description": ". . . . When component was last modified"
+                               },
+                               "status": {
+                                       "type": "string",
+                                       "description": ". . . . Status of the component"
+                               },
+                               "description": {
+                                       "type": "string",
+                                       "description": ". . . . Description of the component"
+                               },
+                               "componentType": {
+                                       "type": "string",
+                                       "description": ". . . . only \"docker\""
+                               },
+                               "componentUrl": {
+                                       "type": "string",
+                                       "description": ". . . . Url to the Component Specification"
+                               }
+                       },
+                       "type": "object"
+               },
+               "Patch Spec": {
+                       "required": ["owner", "status"],
+                       "properties": {
+                               "owner": {
+                                       "type": "string",
+                                       "description": "User ID"
+                               },
+                               "status": {
+                                       "type": "string",
+                                       "description": ". . . . .[published] is the only status change supported right now",
+                                       "example": "published",
+                                       "enum": ["published", "revoked"]
+                               }
+                       },
+                       "type": "object"
+               },
+               "component fields by id": {
+                       "allOf": [{
+                               "$ref": "#/definitions/component fields"
+                       }, {
+                               "required": ["spec"],
+                               "properties": {
+                                       "spec": {
+                                               "type": "object",
+                                               "description": "The Component Specification (json)"
+                                       }
+                               },
+                               "type": "object"
+                       }]
+               },
+               "Data Format Spec": {
+                       "properties": {
+                               "owner": {
+                                       "type": "string"
+                               },
+                               "spec": {
+                                       "type": "object",
+                                       "description": "The Data Format Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/data-format/dcae-cli-v1/data-format-schema.json"
+                               }
+                       }
+               },
+               "Data Format post": {
+                       "required": ["dataFormatUrl"],
+                       "properties": {
+                               "dataFormatUrl": {
+                                       "type": "string",
+                                       "description": ". . . . Url to the Data Format Specification"
+                               }
+                       },
+                       "type": "object"
+               },
+               "Data Format List": {
+                       "properties": {
+                               "dataFormats": {
+                                       "type": "array",
+                                       "items": {
+                                               "$ref": "#/definitions/dataformat fields"
+                                       }
+                               }
+                       },
+                       "type": "object"
+               },
+               "dataformat fields": {
+                       "required": ["dataFormatUrl", "description", "id", "modified", "name", "owner", "status", "version", "whenAdded"],
+                       "properties": {
+                               "id": {
+                                       "type": "string",
+                                       "description": ". . . . ID of the data format"
+                               },
+                               "name": {
+                                       "type": "string",
+                                       "description": ". . . . Name of the data format"
+                               },
+                               "version": {
+                                       "type": "string",
+                                       "description": ". . . . Version of the data format"
+                               },
+                               "owner": {
+                                       "type": "string",
+                                       "description": ". . . . ID of who added the data format"
+                               },
+                               "whenAdded": {
+                                       "type": "string",
+                                       "format": "date-time",
+                                       "description": ". . . . When data format was added to the Catalog"
+                               },
+                               "modified": {
+                                       "type": "string",
+                                       "format": "date-time",
+                                       "description": ". . . . When data format was last modified"
+                               },
+                               "status": {
+                                       "type": "string",
+                                       "description": ". . . . Status of the data format"
+                               },
+                               "description": {
+                                       "type": "string",
+                                       "description": ". . . . Description of the data format"
+                               },
+                               "dataFormatUrl": {
+                                       "type": "string",
+                                       "description": ". . . . Url to the Data Format Specification"
+                               }
+                       },
+                       "type": "object"
+               },
+               "dataformat fields by id": {
+                       "allOf": [{
+                               "$ref": "#/definitions/dataformat fields"
+                       }, {
+                               "required": ["spec"],
+                               "properties": {
+                                       "spec": {
+                                               "type": "object",
+                                               "description": "The Data Format Specification (json)"
+                                       }
+                               },
+                               "type": "object"
+                       }]
+               }
+       },
+       "responses": {
+               "ParseError": {
+                       "description": "When a mask can't be parsed"
+               },
+               "MaskError": {
+                       "description": "When any error occurs on mask"
+               }
+       }
+}
\ No newline at end of file
diff --git a/docs/sections/apis/mod-onboardingapi.rst b/docs/sections/apis/mod-onboardingapi.rst
new file mode 100644 (file)
index 0000000..25fa709
--- /dev/null
@@ -0,0 +1,1297 @@
+.. This work is licensed under a
+   Creative Commons Attribution 4.0 International License.
+
+Onboarding HTTP API (MOD)
+=========================
+
+.. toctree::
+    :maxdepth: 3
+
+
+Description
+~~~~~~~~~~~
+
+Onboarding API is sub-component under MOD provides following function:
+
+1. API to add/update data-formats
+2. API to add/update components (component_Spec)
+
+These API can be invoked by MS owners or by Acumos adapter to upload artifact into MOD catalog
+
+.. csv-table::
+   :header: "API name", "Swagger"
+   :widths: 10,5
+
+   "Inventory", ":download:`link <mod-onboardingapi.json>`"
+
+Base URL
+~~~~~~~~
+
+http:///onboarding
+
+ONBOARDING
+~~~~~~~~~~
+
+
+Default namespace
+
+
+
+
+
+GET ``/components/{component_id}``
+----------------------------------
+
+
+
+Description
++++++++++++
+
+.. raw:: html
+
+    Get a Component
+
+Parameters
+++++++++++
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Located in", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 15, 10, 10, 10, 20, 30
+
+        component_id | path | Yes | string |  |  |
+
+
+Request
++++++++
+
+
+Headers
+^^^^^^^
+
+.. code-block:: javascript
+
+    X-Fields: An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html
+
+
+Responses
++++++++++
+
+**200**
+^^^^^^^
+
+Success
+
+
+Type: :ref:`component fields <d_41cf5e14516a536474c8079d332e86c7>` extended :ref:`inline <i_34dba329148d5512a1350568d728c028>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "componentType": "somestring",
+        "componentUrl": "somestring",
+        "description": "somestring",
+        "id": "somestring",
+        "modified": "2015-01-01T15:00:00.000Z",
+        "name": "somestring",
+        "owner": "somestring",
+        "spec": {},
+        "status": "somestring",
+        "version": "somestring",
+        "whenAdded": "2015-01-01T15:00:00.000Z"
+    }
+
+**404**
+^^^^^^^
+
+Component not found in Catalog
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**500**
+^^^^^^^
+
+Internal Server Error
+
+
+
+
+
+
+GET ``/components``
+-------------------
+
+
+
+Description
++++++++++++
+
+.. raw:: html
+
+    Get list of Components in the catalog
+
+Parameters
+++++++++++
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Located in", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 15, 10, 10, 10, 20, 30
+
+        name | query | No | string |  |  | Name of component to filter for
+        version | query | No | string |  |  | Version of component to filter for
+
+
+Request
++++++++
+
+
+Headers
+^^^^^^^
+
+.. code-block:: javascript
+
+    X-Fields: An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html
+
+
+Responses
++++++++++
+
+**200**
+^^^^^^^
+
+Success
+
+
+Type: :ref:`Component List <d_53b82f243acb3fd79572e5a8e909c801>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "components": [
+            {
+                "componentType": "somestring",
+                "componentUrl": "somestring",
+                "description": "somestring",
+                "id": "somestring",
+                "modified": "2015-01-01T15:00:00.000Z",
+                "name": "somestring",
+                "owner": "somestring",
+                "status": "somestring",
+                "version": "somestring",
+                "whenAdded": "2015-01-01T15:00:00.000Z"
+            },
+            {
+                "componentType": "somestring",
+                "componentUrl": "somestring",
+                "description": "somestring",
+                "id": "somestring",
+                "modified": "2015-01-01T15:00:00.000Z",
+                "name": "somestring",
+                "owner": "somestring",
+                "status": "somestring",
+                "version": "somestring",
+                "whenAdded": "2015-01-01T15:00:00.000Z"
+            }
+        ]
+    }
+
+**500**
+^^^^^^^
+
+Internal Server Error
+
+
+
+
+
+
+GET ``/dataformats/{dataformat_id}``
+------------------------------------
+
+
+
+Description
++++++++++++
+
+.. raw:: html
+
+    Get a Data Format
+
+Parameters
+++++++++++
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Located in", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 15, 10, 10, 10, 20, 30
+
+        dataformat_id | path | Yes | string |  |  |
+
+
+Request
++++++++
+
+
+Headers
+^^^^^^^
+
+.. code-block:: javascript
+
+    X-Fields: An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html
+
+
+Responses
++++++++++
+
+**200**
+^^^^^^^
+
+Success
+
+
+Type: :ref:`dataformat fields <d_68ab1278c950fd214a4077565fd97922>` extended :ref:`inline <i_19c008f5124504e9d9c719d157dab70f>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "dataFormatUrl": "somestring",
+        "description": "somestring",
+        "id": "somestring",
+        "modified": "2015-01-01T15:00:00.000Z",
+        "name": "somestring",
+        "owner": "somestring",
+        "spec": {},
+        "status": "somestring",
+        "version": "somestring",
+        "whenAdded": "2015-01-01T15:00:00.000Z"
+    }
+
+**404**
+^^^^^^^
+
+Data Format not found in Catalog
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**500**
+^^^^^^^
+
+Internal Server Error
+
+
+
+
+
+
+GET ``/dataformats``
+--------------------
+
+
+
+Description
++++++++++++
+
+.. raw:: html
+
+    Get list of Data Formats in the catalog
+
+
+Request
++++++++
+
+
+Headers
+^^^^^^^
+
+.. code-block:: javascript
+
+    X-Fields: An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html
+
+
+Responses
++++++++++
+
+**200**
+^^^^^^^
+
+Success
+
+
+Type: :ref:`Data Format List <d_9479fe3b8fa2fcaeb723c198da99e791>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "dataFormats": [
+            {
+                "dataFormatUrl": "somestring",
+                "description": "somestring",
+                "id": "somestring",
+                "modified": "2015-01-01T15:00:00.000Z",
+                "name": "somestring",
+                "owner": "somestring",
+                "status": "somestring",
+                "version": "somestring",
+                "whenAdded": "2015-01-01T15:00:00.000Z"
+            },
+            {
+                "dataFormatUrl": "somestring",
+                "description": "somestring",
+                "id": "somestring",
+                "modified": "2015-01-01T15:00:00.000Z",
+                "name": "somestring",
+                "owner": "somestring",
+                "status": "somestring",
+                "version": "somestring",
+                "whenAdded": "2015-01-01T15:00:00.000Z"
+            }
+        ]
+    }
+
+**500**
+^^^^^^^
+
+Internal Server Error
+
+
+
+
+
+
+PATCH ``/components/{component_id}``
+------------------------------------
+
+
+
+Description
++++++++++++
+
+.. raw:: html
+
+    Update a Component's status in the Catalog
+
+Parameters
+++++++++++
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Located in", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 15, 10, 10, 10, 20, 30
+
+        component_id | path | Yes | string |  |  |
+
+
+Request
++++++++
+
+
+
+.. _d_fb61d9acd5848e8d882a33934d47ad4f:
+
+Body
+^^^^
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        owner | Yes | string |  |  | User ID
+        status | Yes | string |  | {'enum': ['published', 'revoked']} | . . . . .[published] is the only status change supported right now
+
+.. code-block:: javascript
+
+    {
+        "owner": "somestring",
+        "status": "published"
+    }
+
+Responses
++++++++++
+
+**200**
+^^^^^^^
+
+Success, Component status updated
+
+
+**400**
+^^^^^^^
+
+Bad Request
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**403**
+^^^^^^^
+
+Forbidden Request
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**404**
+^^^^^^^
+
+Component not found in Catalog
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**500**
+^^^^^^^
+
+Internal Server Error
+
+
+
+
+
+
+PATCH ``/dataformats/{dataformat_id}``
+--------------------------------------
+
+
+
+Description
++++++++++++
+
+.. raw:: html
+
+    Update a Data Format's status in the Catalog
+
+Parameters
+++++++++++
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Located in", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 15, 10, 10, 10, 20, 30
+
+        dataformat_id | path | Yes | string |  |  |
+
+
+Request
++++++++
+
+
+
+.. _d_fb61d9acd5848e8d882a33934d47ad4f:
+
+Body
+^^^^
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        owner | Yes | string |  |  | User ID
+        status | Yes | string |  | {'enum': ['published', 'revoked']} | . . . . .[published] is the only status change supported right now
+
+.. code-block:: javascript
+
+    {
+        "owner": "somestring",
+        "status": "published"
+    }
+
+Responses
++++++++++
+
+**200**
+^^^^^^^
+
+Success, Data Format status updated
+
+
+**400**
+^^^^^^^
+
+Bad Request
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**403**
+^^^^^^^
+
+Forbidden Request
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**404**
+^^^^^^^
+
+Data Format not found in Catalog
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**500**
+^^^^^^^
+
+Internal Server Error
+
+
+
+
+
+
+POST ``/components``
+--------------------
+
+
+
+Description
++++++++++++
+
+.. raw:: html
+
+    Add a Component to the Catalog
+
+
+Request
++++++++
+
+
+Headers
+^^^^^^^
+
+.. code-block:: javascript
+
+    X-Fields: An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html
+
+
+
+.. _d_fd89ec3540efda71c3748235024e0b4d:
+
+Body
+^^^^
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        owner | No | string |  |  |
+        spec | No | :ref:`spec <i_793f480461dccbb35537f2001ab7af5b>` |  |  | The Component Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/component-specification/dcae-cli-v2/component-spec-schema.json
+
+.. _i_793f480461dccbb35537f2001ab7af5b:
+
+**Spec schema:**
+
+
+The Component Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/component-specification/dcae-cli-v2/component-spec-schema.json
+
+
+
+.. code-block:: javascript
+
+    {
+        "owner": "somestring",
+        "spec": {}
+    }
+
+Responses
++++++++++
+
+**200**
+^^^^^^^
+
+Success
+
+
+Type: :ref:`Component post <d_9eafe9d5168f431205b9fce1312b32bb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "componentUrl": "somestring"
+    }
+
+**400**
+^^^^^^^
+
+Bad Request
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**409**
+^^^^^^^
+
+Component already exists
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**500**
+^^^^^^^
+
+Internal Server Error
+
+
+
+
+
+
+POST ``/dataformats``
+---------------------
+
+
+
+Description
++++++++++++
+
+.. raw:: html
+
+    Add a Data Format to the Catalog
+
+
+Request
++++++++
+
+
+Headers
+^^^^^^^
+
+.. code-block:: javascript
+
+    X-Fields: An optional fields mask to support partial object fetching - https://flask-restplus.readthedocs.io/en/stable/mask.html
+
+
+
+.. _d_7a085a9ab5ed1527229588d3b6d2c4c2:
+
+Body
+^^^^
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        owner | No | string |  |  |
+        spec | No | :ref:`spec <i_24d5c9ce4ae509ac2272fb61bf0e2003>` |  |  | The Data Format Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/data-format/dcae-cli-v1/data-format-schema.json
+
+.. _i_24d5c9ce4ae509ac2272fb61bf0e2003:
+
+**Spec schema:**
+
+
+The Data Format Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/data-format/dcae-cli-v1/data-format-schema.json
+
+
+
+.. code-block:: javascript
+
+    {
+        "owner": "somestring",
+        "spec": {}
+    }
+
+Responses
++++++++++
+
+**200**
+^^^^^^^
+
+Success
+
+
+Type: :ref:`Data Format post <d_6557e42aae4abfe7f132d85f512a1a26>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "dataFormatUrl": "somestring"
+    }
+
+**400**
+^^^^^^^
+
+Bad Request
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**409**
+^^^^^^^
+
+Data Format already exists
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**500**
+^^^^^^^
+
+Internal Server Error
+
+
+
+
+
+
+PUT ``/components/{component_id}``
+----------------------------------
+
+
+
+Description
++++++++++++
+
+.. raw:: html
+
+    Replace a Component Spec in the Catalog
+
+Parameters
+++++++++++
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Located in", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 15, 10, 10, 10, 20, 30
+
+        component_id | path | Yes | string |  |  |
+
+
+Request
++++++++
+
+
+
+.. _d_fd89ec3540efda71c3748235024e0b4d:
+
+Body
+^^^^
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        owner | No | string |  |  |
+        spec | No | :ref:`spec <i_793f480461dccbb35537f2001ab7af5b>` |  |  | The Component Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/component-specification/dcae-cli-v2/component-spec-schema.json
+
+.. _i_793f480461dccbb35537f2001ab7af5b:
+
+**Spec schema:**
+
+
+The Component Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/component-specification/dcae-cli-v2/component-spec-schema.json
+
+
+
+.. code-block:: javascript
+
+    {
+        "owner": "somestring",
+        "spec": {}
+    }
+
+Responses
++++++++++
+
+**200**
+^^^^^^^
+
+Success, Component replaced
+
+
+**400**
+^^^^^^^
+
+Bad Request
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**404**
+^^^^^^^
+
+Component not found in Catalog
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**500**
+^^^^^^^
+
+Internal Server Error
+
+
+
+
+
+
+PUT ``/dataformats/{dataformat_id}``
+------------------------------------
+
+
+
+Description
++++++++++++
+
+.. raw:: html
+
+    Replace a Data Format Spec in the Catalog
+
+Parameters
+++++++++++
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Located in", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 15, 10, 10, 10, 20, 30
+
+        dataformat_id | path | Yes | string |  |  |
+
+
+Request
++++++++
+
+
+
+.. _d_7a085a9ab5ed1527229588d3b6d2c4c2:
+
+Body
+^^^^
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        owner | No | string |  |  |
+        spec | No | :ref:`spec <i_24d5c9ce4ae509ac2272fb61bf0e2003>` |  |  | The Data Format Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/data-format/dcae-cli-v1/data-format-schema.json
+
+.. _i_24d5c9ce4ae509ac2272fb61bf0e2003:
+
+**Spec schema:**
+
+
+The Data Format Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/data-format/dcae-cli-v1/data-format-schema.json
+
+
+
+.. code-block:: javascript
+
+    {
+        "owner": "somestring",
+        "spec": {}
+    }
+
+Responses
++++++++++
+
+**200**
+^^^^^^^
+
+Success, Data Format added
+
+
+**400**
+^^^^^^^
+
+Bad Request
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**404**
+^^^^^^^
+
+Data Format not found in Catalog
+
+
+Type: :ref:`Error message <d_e8453714bcbe180e59d1dfbfc583c9cb>`
+
+**Example:**
+
+.. code-block:: javascript
+
+    {
+        "message": "somestring"
+    }
+
+**500**
+^^^^^^^
+
+Internal Server Error
+
+
+
+
+
+Data Structures
+~~~~~~~~~~~~~~~
+
+.. _d_53b82f243acb3fd79572e5a8e909c801:
+
+Component List Model Structure
+------------------------------
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        components | No | array of :ref:`component fields <d_41cf5e14516a536474c8079d332e86c7>` |  |  |
+
+.. _d_fd89ec3540efda71c3748235024e0b4d:
+
+Component Spec Model Structure
+------------------------------
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        owner | No | string |  |  |
+        spec | No | :ref:`spec <i_793f480461dccbb35537f2001ab7af5b>` |  |  | The Component Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/component-specification/dcae-cli-v2/component-spec-schema.json
+
+.. _i_793f480461dccbb35537f2001ab7af5b:
+
+**Spec schema:**
+
+
+The Component Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/component-specification/dcae-cli-v2/component-spec-schema.json
+
+
+
+.. _d_9eafe9d5168f431205b9fce1312b32bb:
+
+Component post Model Structure
+------------------------------
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        componentUrl | Yes | string |  |  | . . . . Url to the Component Specification
+
+.. _d_9479fe3b8fa2fcaeb723c198da99e791:
+
+Data Format List Model Structure
+--------------------------------
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        dataFormats | No | array of :ref:`dataformat fields <d_68ab1278c950fd214a4077565fd97922>` |  |  |
+
+.. _d_7a085a9ab5ed1527229588d3b6d2c4c2:
+
+Data Format Spec Model Structure
+--------------------------------
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        owner | No | string |  |  |
+        spec | No | :ref:`spec <i_24d5c9ce4ae509ac2272fb61bf0e2003>` |  |  | The Data Format Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/data-format/dcae-cli-v1/data-format-schema.json
+
+.. _i_24d5c9ce4ae509ac2272fb61bf0e2003:
+
+**Spec schema:**
+
+
+The Data Format Spec schema is here -> https://git.onap.org/dcaegen2/platform/cli/plain/component-json-schemas/data-format/dcae-cli-v1/data-format-schema.json
+
+
+
+.. _d_6557e42aae4abfe7f132d85f512a1a26:
+
+Data Format post Model Structure
+--------------------------------
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        dataFormatUrl | Yes | string |  |  | . . . . Url to the Data Format Specification
+
+.. _d_e8453714bcbe180e59d1dfbfc583c9cb:
+
+Error message Model Structure
+-----------------------------
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        message | No | string |  |  | . . . . .Details about the unsuccessful API request
+
+.. _d_fb61d9acd5848e8d882a33934d47ad4f:
+
+Patch Spec Model Structure
+--------------------------
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        owner | Yes | string |  |  | User ID
+        status | Yes | string |  | {'enum': ['published', 'revoked']} | . . . . .[published] is the only status change supported right now
+
+.. _d_41cf5e14516a536474c8079d332e86c7:
+
+component fields Model Structure
+--------------------------------
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        componentType | Yes | string |  |  | . . . . only 'docker'
+        componentUrl | Yes | string |  |  | . . . . Url to the Component Specification
+        description | Yes | string |  |  | . . . . Description of the component
+        id | Yes | string |  |  | . . . . ID of the component
+        modified | Yes | string | date-time |  | . . . . When component was last modified
+        name | Yes | string |  |  | . . . . Name of the component
+        owner | Yes | string |  |  | . . . . ID of who added the component
+        status | Yes | string |  |  | . . . . Status of the component
+        version | Yes | string |  |  | . . . . Version of the component
+        whenAdded | Yes | string | date-time |  | . . . . When component was added to the Catalog
+
+.. _d_c86e31bb6b9a2aaf18cab261f501cdf1:
+
+component fields by id Model Structure
+--------------------------------------
+
+:ref:`component fields <d_41cf5e14516a536474c8079d332e86c7>` extended :ref:`inline <i_34dba329148d5512a1350568d728c028>`
+
+.. _i_34dba329148d5512a1350568d728c028:
+
+**Inline schema:**
+
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        componentType | Yes | string |  |  | . . . . only 'docker'
+        componentUrl | Yes | string |  |  | . . . . Url to the Component Specification
+        description | Yes | string |  |  | . . . . Description of the component
+        id | Yes | string |  |  | . . . . ID of the component
+        modified | Yes | string | date-time |  | . . . . When component was last modified
+        name | Yes | string |  |  | . . . . Name of the component
+        owner | Yes | string |  |  | . . . . ID of who added the component
+        spec | Yes | :ref:`spec <i_ea9c5ae5ca1fb737a10e33ba863d3d34>` |  |  | The Component Specification (json)
+        status | Yes | string |  |  | . . . . Status of the component
+        version | Yes | string |  |  | . . . . Version of the component
+        whenAdded | Yes | string | date-time |  | . . . . When component was added to the Catalog
+
+.. _i_ea9c5ae5ca1fb737a10e33ba863d3d34:
+
+**Spec schema:**
+
+
+The Component Specification (json)
+
+
+
+.. _d_68ab1278c950fd214a4077565fd97922:
+
+dataformat fields Model Structure
+---------------------------------
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        dataFormatUrl | Yes | string |  |  | . . . . Url to the Data Format Specification
+        description | Yes | string |  |  | . . . . Description of the data format
+        id | Yes | string |  |  | . . . . ID of the data format
+        modified | Yes | string | date-time |  | . . . . When data format was last modified
+        name | Yes | string |  |  | . . . . Name of the data format
+        owner | Yes | string |  |  | . . . . ID of who added the data format
+        status | Yes | string |  |  | . . . . Status of the data format
+        version | Yes | string |  |  | . . . . Version of the data format
+        whenAdded | Yes | string | date-time |  | . . . . When data format was added to the Catalog
+
+.. _d_9c3ce799741cd0dae7f4d25c049e8a79:
+
+dataformat fields by id Model Structure
+---------------------------------------
+
+:ref:`dataformat fields <d_68ab1278c950fd214a4077565fd97922>` extended :ref:`inline <i_19c008f5124504e9d9c719d157dab70f>`
+
+.. _i_19c008f5124504e9d9c719d157dab70f:
+
+**Inline schema:**
+
+
+.. csv-table::
+    :delim: |
+    :header: "Name", "Required", "Type", "Format", "Properties", "Description"
+    :widths: 20, 10, 15, 15, 30, 25
+
+        dataFormatUrl | Yes | string |  |  | . . . . Url to the Data Format Specification
+        description | Yes | string |  |  | . . . . Description of the data format
+        id | Yes | string |  |  | . . . . ID of the data format
+        modified | Yes | string | date-time |  | . . . . When data format was last modified
+        name | Yes | string |  |  | . . . . Name of the data format
+        owner | Yes | string |  |  | . . . . ID of who added the data format
+        spec | Yes | :ref:`spec <i_c9a99411463ded6c619772d83b3882c8>` |  |  | The Data Format Specification (json)
+        status | Yes | string |  |  | . . . . Status of the data format
+        version | Yes | string |  |  | . . . . Version of the data format
+        whenAdded | Yes | string | date-time |  | . . . . When data format was added to the Catalog
+
+.. _i_c9a99411463ded6c619772d83b3882c8:
+
+**Spec schema:**
+
+
+The Data Format Specification (json)
index 921ba54..f98c5d8 100644 (file)
@@ -15,3 +15,4 @@ Offered APIs
    apis/PNDA.rst
    apis/pmmapper.rst
    apis/SDK.rst
+   apis/mod-onboardingapi.rst