summaryrefslogtreecommitdiffstats
path: root/docs/api
diff options
context:
space:
mode:
authorrajesh.kumar <rk00747546@techmahindra.com>2022-12-14 08:13:29 +0000
committerrajesh.kumar <rk00747546@techmahindra.com>2022-12-16 16:30:34 +0000
commit897686f96f49dc4405eb3e29f2a6218dc8040c97 (patch)
tree5912aec524fbe010bbf94bfb192caf1f079b7887 /docs/api
parent377af14ab2664d8a15673e51cba82f1254379e14 (diff)
API versioning supported and added different versions for POST APIs
Issue-ID: CPS-1189 Change-ID: I73f97f986a817d423f92f8d922dcd9647b1214aa Signed-off-by: rajesh.kumar <rk00747546@techmahindra.com>
Diffstat (limited to 'docs/api')
-rw-r--r--docs/api/swagger/cps/openapi.yaml297
1 files changed, 281 insertions, 16 deletions
diff --git a/docs/api/swagger/cps/openapi.yaml b/docs/api/swagger/cps/openapi.yaml
index 09ccbe14a..ec7d29524 100644
--- a/docs/api/swagger/cps/openapi.yaml
+++ b/docs/api/swagger/cps/openapi.yaml
@@ -29,6 +29,7 @@ paths:
summary: Create a dataspace
description: Create a new dataspace
operationId: createDataspace
+ deprecated: true
parameters:
- name: dataspace-name
in: query
@@ -95,6 +96,75 @@ paths:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
+ /v2/dataspaces:
+ post:
+ tags:
+ - cps-admin
+ summary: Create a dataspace
+ description: Create a new dataspace
+ operationId: createDataspaceV2
+ parameters:
+ - name: dataspace-name
+ in: query
+ description: dataspace-name
+ required: true
+ schema:
+ type: string
+ example: my-dataspace
+ responses:
+ "201":
+ description: Created
+ "400":
+ description: Bad Request
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 400
+ message: Bad Request
+ details: The provided request is not valid
+ "401":
+ description: Unauthorized
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 401
+ message: Unauthorized request
+ details: This request is unauthorized
+ "403":
+ description: Forbidden
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 403
+ message: Request Forbidden
+ details: This request is forbidden
+ "409":
+ description: Conflict
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 409
+ message: Conflicting request
+ details: The request cannot be processed as the resource is in use.
+ "500":
+ description: Internal Server Error
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 500
+ message: Internal Server Error
+ details: Internal Server Error occurred
+ /{apiVersion}/dataspaces:
delete:
tags:
- cps-admin
@@ -102,6 +172,7 @@ paths:
description: Delete a dataspace
operationId: deleteDataspace
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: query
description: dataspace-name
@@ -163,13 +234,15 @@ paths:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
- /v1/admin/dataspaces:
+ /{apiVersion}/admin/dataspaces:
get:
tags:
- cps-admin
summary: Get dataspaces
description: "Read all dataspaces"
operationId: getAllDataspaces
+ parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
responses:
"200":
description: OK
@@ -219,7 +292,7 @@ paths:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
- /v1/admin/dataspaces/{dataspace-name}:
+ /{apiVersion}/admin/dataspaces/{dataspace-name}:
get:
tags:
- cps-admin
@@ -227,6 +300,7 @@ paths:
description: Read an dataspace given a dataspace name
operationId: getDataspace
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -281,7 +355,7 @@ paths:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
- /v1/dataspaces/{dataspace-name}/anchors:
+ /{apiVersion}/dataspaces/{dataspace-name}/anchors:
get:
tags:
- cps-admin
@@ -289,6 +363,7 @@ paths:
description: "Read all anchors, given a dataspace"
operationId: getAnchors
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -345,10 +420,12 @@ paths:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
+ /v1/dataspaces/{dataspace-name}/anchors:
post:
tags:
- cps-admin
summary: Create an anchor
+ deprecated: true
description: Create a new anchor in the given dataspace
operationId: createAnchor
parameters:
@@ -431,7 +508,89 @@ paths:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
- /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}:
+ /v2/dataspaces/{dataspace-name}/anchors:
+ post:
+ tags:
+ - cps-admin
+ summary: Create an anchor
+ description: Create a new anchor in the given dataspace
+ operationId: createAnchorV2
+ parameters:
+ - name: dataspace-name
+ in: path
+ description: dataspace-name
+ required: true
+ schema:
+ type: string
+ example: my-dataspace
+ - name: schema-set-name
+ in: query
+ description: schema-set-name
+ required: true
+ schema:
+ type: string
+ example: my-schema-set
+ - name: anchor-name
+ in: query
+ description: anchor-name
+ required: true
+ schema:
+ type: string
+ example: my-anchor
+ responses:
+ "201":
+ description: Created
+ "400":
+ description: Bad Request
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 400
+ message: Bad Request
+ details: The provided request is not valid
+ "401":
+ description: Unauthorized
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 401
+ message: Unauthorized request
+ details: This request is unauthorized
+ "403":
+ description: Forbidden
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 403
+ message: Request Forbidden
+ details: This request is forbidden
+ "409":
+ description: Conflict
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 409
+ message: Conflicting request
+ details: The request cannot be processed as the resource is in use.
+ "500":
+ description: Internal Server Error
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 500
+ message: Internal Server Error
+ details: Internal Server Error occurred
+ /{apiVersion}/dataspaces/{dataspace-name}/anchors/{anchor-name}:
get:
tags:
- cps-admin
@@ -439,6 +598,7 @@ paths:
description: Read an anchor given an anchor name and a dataspace
operationId: getAnchor
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -507,6 +667,7 @@ paths:
description: Delete an anchor given an anchor name and a dataspace
operationId: deleteAnchor
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -651,6 +812,88 @@ paths:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
+ /v2/dataspaces/{dataspace-name}/schema-sets:
+ post:
+ tags:
+ - cps-admin
+ summary: Create a schema set
+ description: Create a new schema set in the given dataspace
+ operationId: createSchemaSetV2
+ parameters:
+ - name: dataspace-name
+ in: path
+ description: dataspace-name
+ required: true
+ schema:
+ type: string
+ example: my-dataspace
+ - name: schema-set-name
+ in: query
+ description: schema-set-name
+ required: true
+ schema:
+ type: string
+ example: my-schema-set
+ requestBody:
+ content:
+ multipart/form-data:
+ schema:
+ $ref: '#/components/schemas/MultipartFile'
+ required: true
+ responses:
+ "201":
+ description: Created
+ "400":
+ description: Bad Request
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 400
+ message: Bad Request
+ details: The provided request is not valid
+ "401":
+ description: Unauthorized
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 401
+ message: Unauthorized request
+ details: This request is unauthorized
+ "403":
+ description: Forbidden
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 403
+ message: Request Forbidden
+ details: This request is forbidden
+ "409":
+ description: Conflict
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 409
+ message: Conflicting request
+ details: The request cannot be processed as the resource is in use.
+ "500":
+ description: Internal Server Error
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ example:
+ status: 500
+ message: Internal Server Error
+ details: Internal Server Error occurred
+ /{apiVersion}/dataspaces/{dataspace-name}/schema-sets:
get:
tags:
- cps-admin
@@ -658,13 +901,14 @@ paths:
description: "Read schema sets for a given dataspace"
operationId: getSchemaSets
parameters:
- - name: dataspace-name
- in: path
- description: dataspace-name
- required: true
- schema:
- type: string
- example: my-dataspace
+ - $ref: '#/components/parameters/apiVersionInPath'
+ - name: dataspace-name
+ in: path
+ description: dataspace-name
+ required: true
+ schema:
+ type: string
+ example: my-dataspace
responses:
"200":
description: OK
@@ -714,7 +958,7 @@ paths:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
- /v1/dataspaces/{dataspace-name}/schema-sets/{schema-set-name}:
+ /{apiVersion}/dataspaces/{dataspace-name}/schema-sets/{schema-set-name}:
get:
tags:
- cps-admin
@@ -722,6 +966,7 @@ paths:
description: Read a schema set given a schema set name and a dataspace
operationId: getSchemaSet
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -790,6 +1035,7 @@ paths:
description: Delete a schema set given a schema set name and a dataspace
operationId: deleteSchemaSet
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -858,7 +1104,7 @@ paths:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
- /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/node:
+ /{apiVersion}/dataspaces/{dataspace-name}/anchors/{anchor-name}/node:
get:
tags:
- cps-data
@@ -867,6 +1113,7 @@ paths:
anchor and dataspace
operationId: getNodeByDataspaceAndAnchor
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -952,7 +1199,7 @@ paths:
message: Internal Server Error
details: Internal Server Error occurred
x-codegen-request-body-name: xpath
- /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/nodes:
+ /{apiVersion}/dataspaces/{dataspace-name}/anchors/{anchor-name}/nodes:
put:
tags:
- cps-data
@@ -961,6 +1208,7 @@ paths:
\ and a parent node xpath"
operationId: replaceNode
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -1060,6 +1308,7 @@ paths:
description: Create a node for a given anchor and dataspace
operationId: createNode
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -1168,6 +1417,7 @@ paths:
xpath.
operationId: deleteDataNode
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -1253,6 +1503,7 @@ paths:
a parent node xpath
operationId: updateNodeLeaves
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -1345,7 +1596,7 @@ paths:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
- /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/list-nodes:
+ /{apiVersion}/dataspaces/{dataspace-name}/anchors/{anchor-name}/list-nodes:
put:
tags:
- cps-data
@@ -1353,6 +1604,7 @@ paths:
description: "Replace list content under a given parent, anchor and dataspace"
operationId: replaceListContent
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -1451,6 +1703,7 @@ paths:
description: Add list element(s) to a list for a given anchor and dataspace
operationId: addListElements
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -1547,6 +1800,7 @@ paths:
description: Delete one or all list element(s) for a given anchor and dataspace
operationId: deleteListOrListElement
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -1624,7 +1878,7 @@ paths:
message: Internal Server Error
details: Internal Server Error occurred
deprecated: true
- /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/nodes/query:
+ /{apiVersion}/dataspaces/{dataspace-name}/anchors/{anchor-name}/nodes/query:
get:
tags:
- cps-query
@@ -1632,6 +1886,7 @@ paths:
description: Query data nodes for the given dataspace and anchor using CPS path
operationId: getNodesByDataspaceAndAnchorAndCpsPath
parameters:
+ - $ref: '#/components/parameters/apiVersionInPath'
- name: dataspace-name
in: path
description: dataspace-name
@@ -1718,6 +1973,16 @@ paths:
details: Internal Server Error occurred
x-codegen-request-body-name: xpath
components:
+ parameters:
+ apiVersionInPath:
+ name: apiVersion
+ in: path
+ description: apiVersion
+ required: true
+ schema:
+ type: string
+ enum: [v1, v2]
+ default: v2
securitySchemes:
basicAuth:
type: http