openapi: 3.0.1 info: title: CPS API description: Configuration Persistence Service API version: "1.0" servers: - url: //localhost:8088/ tags: - name: cps-rest description: cps Resource paths: /v1/dataspaces: post: tags: - cps-admin summary: Create a new dataspace operationId: createDataspace parameters: - name: dataspace-name in: query description: dataspace-name required: true schema: type: string responses: 201: description: Created content: application/json: schema: type: string 400: description: Bad Request content: { } 401: description: Unauthorized content: { } 403: description: Forbidden content: { } /v1/dataspaces/{dataspace-name}/: delete: tags: - cps-admin summary: Delete the given dataspace operationId: deleteDataspace parameters: - name: dataspace-name in: path description: dataspace-name required: true schema: type: string responses: 200: description: OK content: application/json: schema: type: object 204: description: No Content content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} /v1/dataspaces/{dataspace-name}/schema-sets/{schema-set-name}: get: tags: - cps-admin summary: Read a schema set given a schema set and a dataspace operationId: getSchemaSet parameters: - name: dataspace-name in: path description: dataspace-name required: true schema: type: string - name: schema-set-name in: path description: schema-name required: true schema: type: string responses: 200: description: OK content: application/json: schema: type: object 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Not Found content: {} /v1/dataspaces/{dataspace-name}/schema-sets: post: tags: - cps-admin summary: Create a new schema set in the given dataspace operationId: createSchemaSet parameters: - name: dataspace-name in: path description: dataspace-name required: true schema: type: string requestBody: required: true content: multipart/form-data: schema: required: - schemaSetName - multipartFile properties: schemaSetName: type: string multipartFile: type: string description: multipartFile format: binary responses: 201: description: Created content: application/json: schema: type: string 401: description: Unauthorized content: { } 403: description: Forbidden content: { } /v1/dataspaces/{dataspace-name}/anchors: get: tags: - cps-admin summary: Read all anchors, given a dataspace operationId: getAnchors parameters: - name: dataspace-name in: path description: dataspace-name required: true schema: type: string responses: 200: description: OK content: application/json: schema: type: object 401: description: Unauthorized content: {} 400: description: Bad Request content: {} 403: description: Forbidden 404: description: Not Found content: {} 204: description: No Content content: {} post: tags: - cps-admin summary: Create a new anchor in the given dataspace operationId: createAnchor parameters: - name: dataspace-name in: path description: dataspace-name required: true schema: type: string - name: schema-set-name in: query description: schema-set-name required: true schema: type: string - name: anchor-name in: query description: anchor-name required: true schema: type: string responses: 201: description: Created content: application/json: schema: type: string 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Not Found content: {} /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}: get: tags: - cps-admin summary: Read an anchor given a anchor and a dataspace operationId: getAnchor parameters: - name: dataspace-name in: path description: dataspace-name required: true schema: type: string - name: anchor-name in: path description: anchor-name required: true schema: type: string responses: 200: description: OK content: application/json: schema: type: object 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Not Found content: {} delete: tags: - cps-admin summary: Delete an anchor given a anchor and a dataspace operationId: deleteAnchor parameters: - name: dataspace-name in: path description: dataspace-name required: true schema: type: string - name: anchor-name in: path description: anchor-name required: true schema: type: string responses: 200: description: OK content: application/json: schema: type: object 204: description: No Content content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/nodes: get: tags: - cps-data summary: Get a node given an anchor for the given dataspace operationId: getNodeByDataspaceAndAnchor parameters: - name: dataspace-name in: path description: dataspace-name required: true schema: type: string - name: anchor-name in: path description: anchor-name required: true schema: type: string responses: 200: description: OK content: application/json: schema: type: object 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Not Found content: {} x-codegen-request-body-name: xpath /v1/dataspaces/{dataspace-name}/nodes: get: tags: - cps-data summary: Get all nodes for a given dataspace using an xpath or schema node identifier operationId: getNode parameters: - name: dataspace-name in: path description: dataspace-name required: true schema: type: string responses: 200: description: OK content: application/json: schema: type: object 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Not Found content: {} x-codegen-request-body-name: requestBody post: tags: - cps-data summary: Create a node for a given anchor for the given dataspace operationId: createNode parameters: - name: dataspace-name in: path description: dataspace-name required: true schema: type: string requestBody: content: multipart/form-data: schema: required: - file properties: multipartFile: type: string description: multipartFile format: binary required: true responses: 200: description: OK content: application/json: schema: type: object 201: description: Created content: {} 401: description: Unauthorized content: {} 403: description: Forbidden content: {} 404: description: Not Found content: {} components: schemas: ErrorMessage: type: object title: Error properties: status: type: string message: type: string details: type: string