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/{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}/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
