Gencove project API
The project API from Gencove — 34 operation(s) for project.
The project API from Gencove — 34 operation(s) for project.
openapi: 3.0.3
info:
title: Gencove Back array project 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: project
paths:
/api/v2/project-batch-types/{project_id}:
get:
operationId: project_batch_types_list
description: List batch types that are available for current project.
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: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedBatchTypeList'
description: ''
/api/v2/project-batches/{project_id}:
get:
operationId: project_batches_list
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: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedBatchListList'
description: ''
post:
operationId: project_batches_create
description: Handles batch creation for current project.
parameters:
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BatchCreate'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/BatchCreate'
multipart/form-data:
schema:
$ref: '#/components/schemas/BatchCreate'
required: true
security:
- JWT: []
- API key: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/BatchDetail'
description: ''
/api/v2/project-cancel-samples/{project_id}:
post:
operationId: project_cancel_samples_create
description: View for canceling sample submission to analysis in a project.
parameters:
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectCancelSamples'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ProjectCancelSamples'
multipart/form-data:
schema:
$ref: '#/components/schemas/ProjectCancelSamples'
required: true
security:
- JWT: []
- API key: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectCancelSamples'
description: ''
/api/v2/project-delete-samples/{project_id}:
delete:
operationId: project_delete_samples_destroy
parameters:
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'204':
description: No response body
/api/v2/project-hide-samples/{project_id}:
post:
operationId: project_hide_samples_create
parameters:
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SampleHideUnhide'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/SampleHideUnhide'
multipart/form-data:
schema:
$ref: '#/components/schemas/SampleHideUnhide'
required: true
security:
- JWT: []
- API key: []
responses:
'204':
description: No response body
/api/v2/project-merge-vcfs/{project_id}:
get:
operationId: project_merge_vcfs_retrieve
description: Return last known merge_vcfs job.
parameters:
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectMergeVCFsJob'
description: ''
post:
operationId: project_merge_vcfs_create
description: 'Post takes no parameters since merge_vcfs job parameters are constructed
by the backend.'
parameters:
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectMergeVCFsJob'
description: ''
/api/v2/project-organization-users/{project_id}:
get:
operationId: project_organization_users_list
description: Get organization users.
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: path
name: project_id
schema:
type: string
format: uuid
required: true
- in: query
name: search
schema:
type: string
description: Search users by name, email or id
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedOrganizationUserList'
description: ''
/api/v2/project-qc-report/{project_id}:
get:
operationId: project_qc_report_retrieve
description: Retrieve a CSV QC report for the supplied project ID
parameters:
- in: query
name: columns
schema:
type: array
items:
type: string
enum:
- id
- client_id
- project_id
- year
- month
- day
- status
- sex_string
- call_rate_min
- raw_coverage
- bases_min
- bases_max
- bases_dedup_min
- bases_dedup_mapped_min
- fraction_contamination_max
- snps_min
- effective_coverage_min
- hzy_max
- cc_min
- nhref_min
- nhet_max
- nhalt_min
- pct_target_bases_30x_min
- pathogenic_min
- ancestries
default:
- id
- client_id
- project_id
- year
- month
- day
- status
- sex_string
- snps_min
- bases_dedup_mapped_min
- call_rate_min
- effective_coverage_min
- raw_coverage
- ancestries
description: Specify one or more column names to include in the report.
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
description: No response body
/api/v2/project-qc-types/{project_id}:
get:
operationId: project_qc_types_list
description: List all available QC types for current project
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: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedQualityControlTypeList'
description: ''
/api/v2/project-quality-control-histogram/{project_id}:
get:
operationId: project_quality_control_histogram_retrieve
description: Retrieve user project and desired qc results histogram.
parameters:
- in: query
name: archive_status
schema:
type: string
enum:
- all
- archived
- available
- restore_requested
description: Filter QC results by samples and their archived status
- in: query
name: created_after
schema:
type: string
description: Filter samples by created timestamp; use ISO8601 format
- in: query
name: created_before
schema:
type: string
description: Filter samples by created timestamp; use ISO8601 format
- in: query
name: hidden_status
schema:
type: string
enum:
- all
- hidden
- visible
description: Filter QC results by samples and their hidden status
- in: query
name: modified_after
schema:
type: string
description: Filter samples by modified timestamp; use ISO8601 format
- in: query
name: modified_before
schema:
type: string
description: Filter samples by modified timestamp; use ISO8601 format
- in: query
name: number_of_results
schema:
type: integer
default: 200
description: Number of results
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
- in: query
name: qc_type
schema:
type: string
description: Quality control type key
required: true
- in: query
name: search
schema:
type: string
description: Search QC results by samples and their id or client id
- in: query
name: status
schema:
type: string
enum:
- all
- completed
- failed
- running
- succeeded
description: Filter QC results by samples and their status
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectQualityControlHistogram'
description: ''
/api/v2/project-restore-samples/{project_id}:
post:
operationId: project_restore_samples_create
description: Handles sample restore process for given sample ids in current project.
parameters:
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SampleRestore'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/SampleRestore'
multipart/form-data:
schema:
$ref: '#/components/schemas/SampleRestore'
required: true
security:
- JWT: []
- API key: []
responses:
'202':
content:
application/json:
schema:
$ref: '#/components/schemas/SampleRestore'
description: ''
/api/v2/project-roles/{role_id}:
get:
operationId: project_roles_retrieve
parameters:
- in: path
name: role_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UserRoleObject'
description: ''
delete:
operationId: project_roles_destroy
parameters:
- in: path
name: role_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'204':
description: No response body
/api/v2/project-sample-manifests/{project_id}:
get:
operationId: project_sample_manifests_retrieve
parameters:
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SampleManifestUpload'
description: ''
post:
operationId: project_sample_manifests_create
description: Upload sample manifest file for project
parameters:
- in: path
name: project_id
schema:
type: string
description: Project ID to add manifest to
required: true
- in: query
name: sample_manifest
schema:
type: string
description: Sample manifest CSV or XLSX file
required: true
tags:
- project
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/SampleManifestUpload'
required: true
security:
- JWT: []
- API key: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/SampleManifestUpload'
description: ''
/api/v2/project-samples-copy/:
post:
operationId: project_samples_copy_create
description: 'Copy samples from another project into this one.
Creates independent copies of the source samples in the destination
project, producing new sample records. Only available when the
organization has sample copying enabled.'
tags:
- project
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectSamplesImport'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ProjectSamplesImport'
multipart/form-data:
schema:
$ref: '#/components/schemas/ProjectSamplesImport'
required: true
security:
- JWT: []
- API key: []
responses:
'202':
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectSamplesImport'
description: ''
/api/v2/project-samples-import/:
post:
operationId: project_samples_import_create
description: 'Import samples from another project into this one.
References the source samples in the destination project without
duplicating the underlying data. Sample metadata can optionally be
overridden as part of the import.'
tags:
- project
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectSamplesImport'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ProjectSamplesImport'
multipart/form-data:
schema:
$ref: '#/components/schemas/ProjectSamplesImport'
required: true
security:
- JWT: []
- API key: []
responses:
'202':
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectSamplesImport'
description: ''
/api/v2/project-samples/{project_id}:
get:
operationId: project_samples_list
description: List single project's associated samples.
parameters:
- in: query
name: archive_status
schema:
type: string
enum:
- all
- archived
- available
- restore_requested
description: Filter samples by their archive status
- in: query
name: created_after
schema:
type: string
description: Filter samples by created timestamp; use ISO8601 format
- in: query
name: created_before
schema:
type: string
description: Filter samples by created timestamp; use ISO8601 format
- in: query
name: hidden_status
schema:
type: string
enum:
- all
- hidden
- visible
description: Filter samples by their hidden status
- name: limit
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: modified_after
schema:
type: string
description: Filter samples by modified timestamp; use ISO8601 format
- in: query
name: modified_before
schema:
type: string
description: Filter samples by modified timestamp; use ISO8601 format
- name: offset
required: false
in: query
description: The initial index from which to return the results.
schema:
type: integer
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
- in: query
name: search
schema:
type: string
description: Search samples by id or client id or metadata content
- in: query
name: sort_by
schema:
type: string
enum:
- client_id
- created
- id
- modified
- status
description: Sort results
- in: query
name: sort_order
schema:
type: string
enum:
- asc
- desc
description: Sort direction
- in: query
name: status
schema:
type: string
enum:
- all
- completed
- failed
- running
- succeeded
description: Filter samples by their status
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedSampleListList'
description: ''
post:
operationId: project_samples_create
description: 'Add samples to the project.
Samples are added formatted as the `results` response value that was returned from
`/sample-sheet/` endpoint.'
parameters:
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
tags:
- project
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ExtendedSampleSheetCreate'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ExtendedSampleSheetCreate'
multipart/form-data:
schema:
$ref: '#/components/schemas/ExtendedSampleSheetCreate'
required: true
security:
- JWT: []
- API key: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/ExtendedSampleSheetCreate'
description: ''
/api/v2/project-share-exit/:
post:
operationId: project_share_exit_create
tags:
- project
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectShareExit'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ProjectShareExit'
multipart/form-data:
schema:
$ref: '#/components/schemas/ProjectShareExit'
required: true
security:
- JWT: []
- API key: []
responses:
'200':
description: No response body
/api/v2/project-share-revoke/{project_share_id}:
post:
operationId: project_share_revoke_create
parameters:
- in: path
name: project_share_id
schema:
type: string
format: uuid
required: true
tags:
- project
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectShareRevoke'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ProjectShareRevoke'
multipart/form-data:
schema:
$ref: '#/components/schemas/ProjectShareRevoke'
required: true
security:
- JWT: []
- API key: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectShareRevoke'
description: ''
/api/v2/project-shares/:
get:
operationId: project_shares_list
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
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedProjectShareList'
description: ''
post:
operationId: project_shares_create
tags:
- project
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectShare'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ProjectShare'
multipart/form-data:
schema:
$ref: '#/components/schemas/ProjectShare'
required: true
security:
- JWT: []
- API key: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectShare'
description: ''
/api/v2/project-shares/{project_share_id}:
get:
operationId: project_shares_retrieve
parameters:
- in: path
name: project_share_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectShare'
description: ''
/api/v2/project-stats/{project_id}:
get:
operationId: project_stats_retrieve
description: Retrieve user project and it's sample stats.
parameters:
- in: query
name: archive_status
schema:
type: string
enum:
- all
- archived
- available
- restore_requested
description: Filter stats by samples and their archived status
- in: query
name: created_after
schema:
type: string
description: Filter samples by created timestamp; use ISO8601 format
- in: query
name: created_before
schema:
type: string
description: Filter samples by created timestamp; use ISO8601 format
- in: query
name: hidden_status
schema:
type: string
enum:
- all
- hidden
- visible
description: Filter stats by samples and their hidden status
- in: query
name: modified_after
schema:
type: string
description: Filter samples by modified timestamp; use ISO8601 format
- in: query
name: modified_before
schema:
type: string
description: Filter samples by modified timestamp; use ISO8601 format
- in: path
name: project_id
schema:
type: string
format: uuid
required: true
- in: query
name: search
schema:
type: string
description: Search stats by samples and their id or client id
- in: query
name: status
schema:
type: string
enum:
- all
- completed
- failed
- running
- succeeded
description: Filter stats by samples and their status
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectStats'
description: ''
/api/v2/project-subscription-details/{subscription_id}:
get:
operationId: project_subscription_details_retrieve
description: Details of a single subscription for project related events.
parameters:
- in: path
name: subscription_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectSubscription'
description: ''
delete:
operationId: project_subscription_details_destroy
description: Details of a single subscription for project related events.
parameters:
- in: path
name: subscription_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'204':
description: No response body
/api/v2/project-subscription-event-types/:
get:
operationId: project_subscription_event_types_list
description: List subscription event types that are available for all 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
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEventTypeList'
description: ''
/api/v2/project-subscription-notifications/{subscription_id}:
get:
operationId: project_subscription_notifications_list
description: 'List all available subscriptions for given project or create a new
subscription.'
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: path
name: subscription_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedProjectSubscriptionNotificationList'
description: ''
/api/v2/project-subscription-secret/{subscription_id}:
post:
operationId: project_subscription_secret_create
description: 'Set webhook secret for given subscription.
Webhook secret is requested by the user and generated by Gencove.'
parameters:
- in: path
name: subscription_id
schema:
type: string
format: uuid
required: true
tags:
- project
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SubscriptionSecret'
description: ''
/api/v2/project-subscription-test/{subscription_id}:
post:
operationId: project_subscription_test_create
description: 'Send a dummy event for given subscription to test notifications integration.
By default, there are no retries for this test endpoint.'
parameters:
- in: path
name: subscription_id
schema:
type: string
format: uuid
required: true
tags:
- project
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SubscriptionTest'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/SubscriptionTest'
multipart/form-data:
schema:
$ref: '#/components/schemas/SubscriptionTest'
security:
- JWT: []
- API key: []
responses:
'202':
description: No response body
/api/v2/project-subscriptions/{project_id}:
get:
operationId: project_subsc
# --- truncated at 32 KB (78 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/gencove/refs/heads/main/openapi/gencove-project-api-openapi.yml