Gencove pipeline API

The pipeline API from Gencove — 5 operation(s) for pipeline.

OpenAPI Specification

gencove-pipeline-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Gencove Back array pipeline API
  version: v2
  contact:
    email: support@gencove.com
  license:
    name: Proprietary
  description: API for Gencove REST service. Visit <a href='https://enterprise.gencove.com/'>enterprise.gencove.com</a> and <a href='https://docs.gencove.com/'>docs.gencove.com</a> for more information. <br><hr><p>To work with Insomnia, you can generate a Gencove API key by <a target='_blank' href='https://web.gencove.com/account?filter=api-keys'>clicking here</a>. Once you have the API key and have imported the project in Insomnia as a <i>Request Collection</i>, enter the key in Insomnia under <i>Manage Environment</i>.</p><a href='https://insomnia.rest/run/?label=back_api2&uri=https%3A%2F%2Fv2-api-files-prod.s3.amazonaws.com%2Fpublic%2Finsomnia%2Finsomnia_gencove_prod.json' target='_blank'>Run in Insomnia</a><hr>
servers:
- url: https://api.gencove.com
tags:
- name: pipeline
paths:
  /api/v2/pipeline/:
    get:
      operationId: pipeline_list
      description: Retrieve list of user projects.
      parameters:
      - name: limit
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - name: offset
        required: false
        in: query
        description: The initial index from which to return the results.
        schema:
          type: integer
      - in: query
        name: sort_by
        schema:
          type: string
          enum:
          - created
        description: Sort results
      - in: query
        name: sort_order
        schema:
          type: string
          enum:
          - asc
          - desc
        description: Sort direction
      tags:
      - pipeline
      security:
      - JWT: []
      - API key: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedPipelineListList'
          description: ''
  /api/v2/pipeline-capabilities/:
    get:
      operationId: pipeline_capabilities_list
      description: List pipeline capabilities
      parameters:
      - name: limit
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - name: offset
        required: false
        in: query
        description: The initial index from which to return the results.
        schema:
          type: integer
      - in: query
        name: search
        schema:
          type: string
        description: Search pipeline capabilities by id
      tags:
      - pipeline
      security:
      - JWT: []
      - API key: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedPipelineCapabilitiesList'
          description: ''
  /api/v2/pipeline-capabilities/{pipeline_capabilities_id}:
    get:
      operationId: pipeline_capabilities_retrieve
      description: Fetch single pipeline capabilities details
      parameters:
      - in: path
        name: pipeline_capabilities_id
        schema:
          type: string
          format: uuid
        required: true
      tags:
      - pipeline
      security:
      - JWT: []
      - API key: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineCapabilities'
          description: ''
  /api/v2/pipeline-latest/:
    get:
      operationId: pipeline_latest_retrieve
      description: 'Returns latest (newest) Pipeline instance.


        retrieve: Fetch single newest pipeline details including it''s capabilities'
      tags:
      - pipeline
      security:
      - JWT: []
      - API key: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineDetail'
          description: ''
  /api/v2/pipeline/{pipeline_id}:
    get:
      operationId: pipeline_retrieve
      description: Fetch single pipeline details including it's capabilities
      parameters:
      - in: path
        name: pipeline_id
        schema:
          type: string
          format: uuid
        required: true
      tags:
      - pipeline
      security:
      - JWT: []
      - API key: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineDetail'
          description: ''
components:
  schemas:
    PipelineCapabilities:
      type: object
      properties:
        id:
          type: string
          format: uuid
          readOnly: true
        name:
          type: string
          description: Name from pipeline config
          maxLength: 254
        key:
          type: string
          description: Key from pipeline config
          maxLength: 254
        private:
          type: boolean
          description: True if private
        merge_vcfs_enabled:
          type: boolean
          description: Set to True if MergeVCFs can be run
        supported_project_modifications:
          nullable: true
          description: List of project modification objects supported by the pipeline. Only the modifications listed under 'key' can be used. Note that 'value' is only used by the front-end to determine whether the check box should be set to True or False by default.
        modifications_enabled:
          type: string
          readOnly: true
        species:
          type: string
          readOnly: true
          description: Species
        pipeline_category:
          nullable: true
          description: 'Category of the pipeline capability


            * `Human Genomics` - human genomics

            * `Agriculture Animals & Plant Genomics` - animals plants

            * `Companion Animals` - companion animals

            * `Other` - other'
          oneOf:
          - $ref: '#/components/schemas/PipelineCategoryEnum'
          - $ref: '#/components/schemas/BlankEnum'
          - $ref: '#/components/schemas/NullEnum'
        description_markdown:
          type: string
          readOnly: true
          description: 'Description markdown of a pipeline capability. '
        datasets:
          type: string
          readOnly: true
          description: Dataset descriptions.
        steps:
          type: string
          readOnly: true
          description: Pipeline capability steps that are enabled.
      required:
      - datasets
      - description_markdown
      - id
      - key
      - modifications_enabled
      - name
      - species
      - steps
    PaginatedPipelineCapabilitiesList:
      type: object
      required:
      - results
      properties:
        meta:
          type: object
          properties:
            count:
              type: integer
            next:
              type: string
              format: uri
              nullable: true
            previous:
              type: string
              format: uri
              nullable: true
          required:
          - count
        results:
          type: array
          items:
            $ref: '#/components/schemas/PipelineCapabilities'
    NullEnum:
      enum:
      - null
    PipelineDetail:
      type: object
      properties:
        id:
          type: string
          format: uuid
          readOnly: true
        version:
          type: string
          maxLength: 100
        capabilities:
          type: array
          items:
            $ref: '#/components/schemas/PipelineCapabilities'
      required:
      - capabilities
      - id
      - version
    PipelineCategoryEnum:
      enum:
      - Human Genomics
      - Agriculture Animals & Plant Genomics
      - Companion Animals
      - Other
      type: string
      description: '* `Human Genomics` - human genomics

        * `Agriculture Animals & Plant Genomics` - animals plants

        * `Companion Animals` - companion animals

        * `Other` - other'
    BlankEnum:
      enum:
      - ''
    PipelineList:
      type: object
      properties:
        id:
          type: string
          format: uuid
          readOnly: true
        version:
          type: string
          maxLength: 100
      required:
      - id
      - version
    PaginatedPipelineListList:
      type: object
      required:
      - results
      properties:
        meta:
          type: object
          properties:
            count:
              type: integer
            next:
              type: string
              format: uri
              nullable: true
            previous:
              type: string
              format: uri
              nullable: true
          required:
          - count
        results:
          type: array
          items:
            $ref: '#/components/schemas/PipelineList'
  securitySchemes:
    API key:
      type: apiKey
      description: 'Authorization header content formated as: `Api-Key <API-key>`

        You can obtain new API key through Gencove''s web UI or `user-api-key` endpoint'
      in: header
      name: Authorization
    JWT:
      type: apiKey
      description: 'Authorization header content formated as: `Bearer <json-web-token>`

        You can obtain access token using `jwt-create` endpoint.'
      in: header
      name: Authorization