scitran/core

View on GitHub
swagger/paths/gears.yaml

Summary

Maintainability
Test Coverage
/gears:
  get:
    summary: List all gears
    operationId: get_all_gears
    tags:
    - gears
    responses:
      '200':
        description: 'Returns a list of gears installed on the system'
        schema:
          $ref: schemas/output/gear-list.json
        examples:
          response:
            $ref: examples/output/gear-list.json
        
# TODO: Can we make the parameter here consistent, or split
# this into two separate APIs?
/gears/{GearIdOrName}:
  get:
    summary: Retrieve details about a specific gear
    operationId: get_gear
    tags:
    - gears
    parameters:
      - name: GearIdOrName
        in: path
        type: string
        required: true
        description: Id of the gear to interact with
    responses:
      '200':
        description: 'Details about a single gear'
        schema:
          $ref: schemas/output/gear.json
        examples:
          response:
            $ref: examples/output/gear.json
  post:
    summary: Create or update a gear.
    description: |
      If no existing gear is found, one will be created
      Otherwise, the specified gear will be updated
    operationId: add_gear
    parameters:
      - name: GearIdOrName
        in: path
        type: string
        required: true
        description: Name of the gear to interact with
      - name: body
        in: body
        required: true
        schema: 
          $ref: schemas/input/gear.json
    tags:
    - gears
    responses:
      '200':
        description: 'The gear was created or updated successfully'
        schema:
          $ref: schemas/output/collection-new.json
  delete:
    summary: Delete a gear (not recommended)
    operationId: delete_gear
    tags:
    - gears
    parameters:
      - name: GearIdOrName
        in: path
        type: string
        required: true
        description: Id of the gear to interact with
    responses:
      '200':
        description: Gear was deleted

/gears/{GearId}/invocation:
    parameters:
      - name: GearId
        in: path
        type: string
        required: true
        description: Id of the gear to interact with
    get:
      summary: Get a schema for invoking a gear.
      operationId: get_gear_invocation
      tags:
      - gears
      responses:
        '200':
          description: The gear invocation schema.
          schema:
            type: object