Replace list-node content (part 2): CPS REST layer
[cps.git] / cps-rest / docs / api / swagger / cpsData.yml
old mode 100644 (file)
new mode 100755 (executable)
index c33cf16..aa8a31d
-nodesByDataspaceAndAnchor:
+nodeByDataspaceAndAnchor:
   get:
+    description: Get a node with an option to retrieve all the children for a given anchor and dataspace
     tags:
       - cps-data
-    summary: Get a node given an anchor for the given dataspace - DRAFT
+    summary: Get a node
     operationId: getNodeByDataspaceAndAnchor
     parameters:
-      - $ref: 'components.yaml#/components/parameters/dataspaceNameInPath'
-      - $ref: 'components.yaml#/components/parameters/anchorNameInPath'
+      - $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
+      - $ref: 'components.yml#/components/parameters/anchorNameInPath'
+      - $ref: 'components.yml#/components/parameters/xpathInQuery'
+      - $ref: 'components.yml#/components/parameters/includeDescendantsOptionInQuery'
     responses:
-      200:
-        $ref: 'components.yaml#/components/responses/Ok'
-      400:
-        $ref: 'components.yaml#/components/responses/BadRequest'
-      401:
-        $ref: 'components.yaml#/components/responses/Unauthorized'
-      403:
-        $ref: 'components.yaml#/components/responses/Forbidden'
-      404:
-        $ref: 'components.yaml#/components/responses/NotFound'
+      '200':
+        $ref: 'components.yml#/components/responses/Ok'
+      '400':
+        $ref: 'components.yml#/components/responses/BadRequest'
+      '401':
+        $ref: 'components.yml#/components/responses/Unauthorized'
+      '403':
+        $ref: 'components.yml#/components/responses/Forbidden'
+      '404':
+        $ref: 'components.yml#/components/responses/NotFound'
     x-codegen-request-body-name: xpath
 
-nodesByDataspace:
-  get:
+listNodeByDataspaceAndAnchor:
+  post:
+    description: Add list-node child elements to existing node for a given anchor and dataspace
     tags:
       - cps-data
-    summary: Get all nodes for a given dataspace using an xpath or schema node identifier - DRAFT
-    operationId: getNode
+    summary: Add list-node child element(s) under existing parent node
+    operationId: addListNodeElements
     parameters:
-      - $ref: 'components.yaml#/components/parameters/dataspaceNameInPath'
+      - $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
+      - $ref: 'components.yml#/components/parameters/anchorNameInPath'
+      - $ref: 'components.yml#/components/parameters/requiredXpathInQuery'
+    requestBody:
+      required: true
+      content:
+        application/json:
+          schema:
+            type: string
     responses:
-      200:
-        $ref: 'components.yaml#/components/responses/Ok'
-      400:
-        $ref: 'components.yaml#/components/responses/BadRequest'
-      401:
-        $ref: 'components.yaml#/components/responses/Unauthorized'
-      403:
-        $ref: 'components.yaml#/components/responses/Forbidden'
-      404:
-        $ref: 'components.yaml#/components/responses/NotFound'
-    x-codegen-request-body-name: requestBody
+      '201':
+        $ref: 'components.yml#/components/responses/Created'
+      '400':
+        $ref: 'components.yml#/components/responses/BadRequest'
+      '401':
+        $ref: 'components.yml#/components/responses/Unauthorized'
+      '403':
+        $ref: 'components.yml#/components/responses/Forbidden'
 
+  patch:
+    description: Replace list-node child elements under existing node for a given anchor and dataspace
+    tags:
+      - cps-data
+    summary: Replace list-node child element(s) under existing parent node
+    operationId: replaceListNodeElements
+    parameters:
+      - $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
+      - $ref: 'components.yml#/components/parameters/anchorNameInPath'
+      - $ref: 'components.yml#/components/parameters/requiredXpathInQuery'
+    requestBody:
+      required: true
+      content:
+        application/json:
+          schema:
+            type: string
+    responses:
+      '200':
+        $ref: 'components.yml#/components/responses/Created'
+      '400':
+        $ref: 'components.yml#/components/responses/BadRequest'
+      '401':
+        $ref: 'components.yml#/components/responses/Unauthorized'
+      '403':
+        $ref: 'components.yml#/components/responses/Forbidden'
+
+nodesByDataspaceAndAnchor:
   post:
+    description: Create a node for a given anchor and dataspace
     tags:
       - cps-data
-    summary: Create a node for a given anchor for the given dataspace - DRAFT
+    summary: Create a node
     operationId: createNode
     parameters:
-      - $ref: 'components.yaml#/components/parameters/dataspaceNameInPath'
+      - $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
+      - $ref: 'components.yml#/components/parameters/anchorNameInPath'
+      - $ref: 'components.yml#/components/parameters/xpathInQuery'
+    requestBody:
+      required: true
+      content:
+        application/json:
+          schema:
+            type: string
+    responses:
+      '201':
+        $ref: 'components.yml#/components/responses/Created'
+      '400':
+        $ref: 'components.yml#/components/responses/BadRequest'
+      '401':
+        $ref: 'components.yml#/components/responses/Unauthorized'
+      '403':
+        $ref: 'components.yml#/components/responses/Forbidden'
+
+  patch:
+    description: Update a data node leaves for a given dataspace and anchor and a parent node xpath
+    tags:
+      - cps-data
+    summary: Update node leaves
+    operationId: updateNodeLeaves
+    parameters:
+      - $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
+      - $ref: 'components.yml#/components/parameters/anchorNameInPath'
+      - $ref: 'components.yml#/components/parameters/xpathInQuery'
     requestBody:
+      required: true
       content:
-        multipart/form-data:
+        application/json:
           schema:
-            $ref: 'components.yaml#/components/schemas/MultipartFile'
+            type: string
+    responses:
+      '200':
+        $ref: 'components.yml#/components/responses/Ok'
+      '400':
+        $ref: 'components.yml#/components/responses/BadRequest'
+      '401':
+        $ref: 'components.yml#/components/responses/Unauthorized'
+      '403':
+        $ref: 'components.yml#/components/responses/Forbidden'
+
+  put:
+    description: Replace a node with descendants for a given dataspace, anchor and a parent node xpath
+    tags:
+      - cps-data
+    summary: Replace a node with descendants
+    operationId: replaceNode
+    parameters:
+      - $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
+      - $ref: 'components.yml#/components/parameters/anchorNameInPath'
+      - $ref: 'components.yml#/components/parameters/xpathInQuery'
+    requestBody:
       required: true
+      content:
+        application/json:
+          schema:
+            type: string
     responses:
-      201:
-        $ref: 'components.yaml#/components/responses/Created'
-      400:
-        $ref: 'components.yaml#/components/responses/BadRequest'
-      401:
-        $ref: 'components.yaml#/components/responses/Unauthorized'
-      403:
-        $ref: 'components.yaml#/components/responses/Forbidden'
\ No newline at end of file
+      '200':
+        $ref: 'components.yml#/components/responses/Ok'
+      '400':
+        $ref: 'components.yml#/components/responses/BadRequest'
+      '401':
+        $ref: 'components.yml#/components/responses/Unauthorized'
+      '403':
+        $ref: 'components.yml#/components/responses/Forbidden'
+
+
+nodesByDataspace:
+  get:
+    description: Get all nodes for a given dataspace using an xpath or schema node identifier - DRAFT
+    tags:
+      - cps-data
+    summary: Get nodes
+    operationId: getNodesByDataspace
+    parameters:
+      - $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
+    responses:
+      '200':
+        $ref: 'components.yml#/components/responses/Ok'
+      '400':
+        $ref: 'components.yml#/components/responses/BadRequest'
+      '401':
+        $ref: 'components.yml#/components/responses/Unauthorized'
+      '403':
+        $ref: 'components.yml#/components/responses/Forbidden'
+      '404':
+        $ref: 'components.yml#/components/responses/NotFound'
+    x-codegen-request-body-name: requestBody