swagger: "2.0"
info:
  title: oc-workspace
  description: |
    Manage user's named resource sets, kind of shopping carts
  version: 1.0.0
  termsOfService: http://cloud.o-forge.io/
  contact:
    email: admin@o-cloud.io
  license:
    name: AGPL
    url: https://www.gnu.org/licenses/agpl-3.0.html
basePath: /oc/
paths:
  /:
    get:
      tags:
      - oc-workspace/controllersWorkspaceController
      description: |-
        find workspace by id
        <br>
      operationId: WorkspaceController.GetAll
      parameters:
      - in: query
        name: is_draft
        description: draft wished
        type: string
      responses:
        "200":
          description: '{workspace} models.workspace'
    post:
      tags:
      - oc-workspace/controllersWorkspaceController
      description: |-
        create workspace
        <br>
      operationId: WorkspaceController.Create
      parameters:
      - in: body
        name: data
        description: body for data content (Json format)
        required: true
        schema:
          $ref: '#/definitions/json'
      responses:
        "200":
          description: '{workspace} models.workspace'
  /{id}:
    get:
      tags:
      - oc-workspace/controllersWorkspaceController
      description: |-
        find workflow by idisDraft := o.Ctx.Input.Query("is_draft")
        <br>
      operationId: WorkspaceController.Get
      parameters:
      - in: path
        name: id
        description: the id you want to get
        required: true
        type: string
      responses:
        "200":
          description: '{workspace} models.workspace'
    put:
      tags:
      - oc-workspace/controllersWorkspaceController
      description: |-
        create workspaces
        <br>
      operationId: WorkspaceController.Update
      parameters:
      - in: path
        name: id
        description: the workspace id you want to get
        required: true
        type: string
      - in: body
        name: body
        description: The workspace content
        required: true
        schema:
          $ref: '#/definitions/models.workspace'
      responses:
        "200":
          description: '{workspace} models.workspace'
    delete:
      tags:
      - oc-workspace/controllersWorkspaceController
      description: |-
        delete the workspace
        <br>
      operationId: WorkspaceController.Delete
      parameters:
      - in: path
        name: id
        description: The id you want to delete
        required: true
        type: string
      responses:
        "200":
          description: '{workspace} delete success!'
  /search/{search}:
    get:
      tags:
      - oc-workspace/controllersWorkspaceController
      description: |-
        search workspace
        <br>
      operationId: WorkspaceController.Search
      parameters:
      - in: path
        name: search
        description: the word search you want to get
        required: true
        type: string
      - in: query
        name: is_draft
        description: draft wished
        type: string
      responses:
        "200":
          description: '{workspace} models.workspace'
  /version/:
    get:
      tags:
      - version
      description: |-
        get version
        <br>
      operationId: VersionController.GetAll
      responses:
        "200":
          description: ""
  /version/status:
    get:
      tags:
      - version
      description: |-
        get status
        <br>
      operationId: VersionController.Status
      responses:
        "200":
          description: ""
definitions:
  json:
    title: json
    type: object
  models.workspace:
    title: workspace
    type: object
tags:
- name: oc-workspace/controllersWorkspaceController
  description: |
    Operations about workspace
- name: version
  description: |
    VersionController operations for Version