{ "openapi": "3.0.3", "info": { "title": "Gencove Back API", "version": "v2", "contact": { "email": "support@gencove.com" }, "license": { "name": "Proprietary" }, "description": "API for Gencove REST service. Visit enterprise.gencove.com and docs.gencove.com for more information.

To work with Insomnia, you can generate a Gencove API key by clicking here. Once you have the API key and have imported the project in Insomnia as a Request Collection, enter the key in Insomnia under Manage Environment.

Run in Insomnia
" }, "paths": { "/api/v2/array-data-upload-form/": { "post": { "operationId": "array_data_upload_form_create", "description": "Create a temporary consumer-data upload session.\n\nAuth-gated to ``consumer_provider`` orgs (``org.consumer_mode_enabled``)\nand requires the ``upload_create`` role. Each call creates a\n``samples.Sample`` in the org's consumer-array-data project and returns a\ntokenized URL that the partner hands off to one of their end users.", "tags": [ "array" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ArrayDataUploadFormCreate" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/ArrayDataUploadFormCreate" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/ArrayDataUploadFormCreate" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ArrayDataUploadFormResponse" } } }, "description": "" } } } }, "/api/v2/basespace-biosamples-import/": { "post": { "operationId": "basespace_biosamples_import_create", "description": "Add BaseSpace biosamples to a Gencove project.", "tags": [ "basespace" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseSpaceBioSamplesImport" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/BaseSpaceBioSamplesImport" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/BaseSpaceBioSamplesImport" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "202": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseSpaceBioSamplesImport" } } }, "description": "" } } } }, "/api/v2/basespace-project-biosamples/{basespace_project_id}": { "get": { "operationId": "basespace_project_biosamples_list", "description": "List currently logged in user's biosamples in a BaseSpace project.", "parameters": [ { "in": "path", "name": "basespace_project_id", "schema": { "type": "string" }, "required": true }, { "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": [ "basespace_bio_sample_name", "basespace_date_created", "basespace_date_modified" ] }, "description": "Sort results" }, { "in": "query", "name": "sort_order", "schema": { "type": "string", "enum": [ "asc", "desc" ] }, "description": "Sort direction" } ], "tags": [ "basespace" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedBaseSpaceBioSampleList" } } }, "description": "" } } } }, "/api/v2/basespace-projects/": { "get": { "operationId": "basespace_projects_list", "description": "List currently logged in user's BaseSpace 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": [ "basespace_date_created", "basespace_date_modified", "basespace_name" ] }, "description": "Sort results" }, { "in": "query", "name": "sort_order", "schema": { "type": "string", "enum": [ "asc", "desc" ] }, "description": "Sort direction" } ], "tags": [ "basespace" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedBaseSpaceProjectList" } } }, "description": "" } } } }, "/api/v2/basespace-projects-autoimport/": { "get": { "operationId": "basespace_projects_autoimport_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": [ "basespace" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedBaseSpaceProjectsAutoimportList" } } }, "description": "" } } }, "post": { "operationId": "basespace_projects_autoimport_create", "description": "Creates new autoimport job, if the job already exists updates metadata.", "tags": [ "basespace" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseSpaceProjectsAutoimport" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/BaseSpaceProjectsAutoimport" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/BaseSpaceProjectsAutoimport" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "202": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseSpaceProjectsAutoimportCreate" } } }, "description": "" } } } }, "/api/v2/basespace-projects-autoimport/{basespace_project_import_id}": { "delete": { "operationId": "basespace_projects_autoimport_destroy", "parameters": [ { "in": "path", "name": "basespace_project_import_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "basespace" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "204": { "description": "No response body" } } } }, "/api/v2/basespace-projects-import/": { "post": { "operationId": "basespace_projects_import_create", "description": "Add all BaseSpace biosamples from BaseSpace projects to Gencove project.", "tags": [ "basespace" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseSpaceProjectsImport" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/BaseSpaceProjectsImport" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/BaseSpaceProjectsImport" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "202": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BaseSpaceProjectsImport" } } }, "description": "" } } } }, "/api/v2/batches/{batch_id}": { "get": { "operationId": "batches_retrieve", "parameters": [ { "in": "path", "name": "batch_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "batch" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BatchDetail" } } }, "description": "" } } } }, "/api/v2/billing-portal/": { "post": { "operationId": "billing_portal_create", "description": "Retrieve currently logged in user's Stripe customer portal url.", "tags": [ "billing" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BillingPortal" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/BillingPortal" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/BillingPortal" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BillingPortal" } } }, "description": "" } } } }, "/api/v2/explorer-access-url/": { "post": { "operationId": "explorer_access_url_create", "description": "Retrieves the Access URL for the given instance.", "tags": [ "explorer" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExplorerInstanceAccessURL" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/ExplorerInstanceAccessURL" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/ExplorerInstanceAccessURL" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "202": { "description": "No response body" } } } }, "/api/v2/explorer-cost-reporting/": { "get": { "operationId": "explorer_cost_reporting_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": [ "explorer" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedExplorerCostReportRecordList" } } }, "description": "" } } } }, "/api/v2/explorer-data-credentials/": { "post": { "operationId": "explorer_data_credentials_create", "tags": [ "explorer" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetExplorerDataCredentialsResponse" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/GetExplorerDataCredentialsResponse" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/GetExplorerDataCredentialsResponse" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetExplorerDataCredentialsResponse" } } }, "description": "" } } } }, "/api/v2/explorer-instances/": { "get": { "operationId": "explorer_instances_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": [ "explorer" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedExplorerInstanceList" } } }, "description": "" } } } }, "/api/v2/explorer-instances-inactivity-stop/": { "post": { "operationId": "explorer_instances_inactivity_stop_create", "description": "Sets the inactivity threshold for the given instances.", "tags": [ "explorer" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesInactivityStop" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesInactivityStop" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesInactivityStop" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "202": { "description": "No response body" } } } }, "/api/v2/explorer-instances-inactivity-stop-organization/": { "get": { "operationId": "explorer_instances_inactivity_stop_organization_retrieve", "tags": [ "explorer" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesInactivityStopOrganization" } } }, "description": "" } } }, "post": { "operationId": "explorer_instances_inactivity_stop_organization_create", "description": "Sets the inactivity treshold for the user's organization.", "tags": [ "explorer" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesInactivityStopOrganization" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesInactivityStopOrganization" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesInactivityStopOrganization" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "202": { "description": "No response body" } } } }, "/api/v2/explorer-session-start/": { "post": { "operationId": "explorer_session_start_create", "description": "Start an Explorer session by setting the user_session cookie and returning a clean Explorer URL.", "tags": [ "explorer" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExplorerSessionStart" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/ExplorerSessionStart" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/ExplorerSessionStart" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "202": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExplorerSessionStartResponse" } } }, "description": "" } } } }, "/api/v2/explorer-shell-session-credentials/": { "post": { "operationId": "explorer_shell_session_credentials_create", "tags": [ "explorer" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExplorerShellSessionCredentials" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/ExplorerShellSessionCredentials" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/ExplorerShellSessionCredentials" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExplorerShellSessionCredentialsResponse" } } }, "description": "" } } } }, "/api/v2/explorer-start-instances/": { "post": { "operationId": "explorer_start_instances_create", "description": "Starts the given instances.", "tags": [ "explorer" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesStart" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesStart" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesStart" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "202": { "description": "No response body" } } } }, "/api/v2/explorer-stop-instances/": { "post": { "operationId": "explorer_stop_instances_create", "description": "Stops the given instances.", "tags": [ "explorer" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesStop" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesStop" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/ExplorerInstancesStop" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "202": { "description": "No response body" } } } }, "/api/v2/file-types/": { "get": { "operationId": "file_types_list", "description": "List all legal file types", "parameters": [ { "name": "limit", "required": false, "in": "query", "description": "Number of results to return per page.", "schema": { "type": "integer" } }, { "in": "query", "name": "object", "schema": { "type": "string", "enum": [ "reference_genome", "sample" ] }, "description": "List file types for a specific object, defaults to sample" }, { "name": "offset", "required": false, "in": "query", "description": "The initial index from which to return the results.", "schema": { "type": "integer" } }, { "in": "query", "name": "project_id", "schema": { "type": "string" }, "description": "List file types for a project" } ], "tags": [ "file" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedFileTypeList" } } }, "description": "" } } } }, "/api/v2/files/{file_id}.sha256": { "get": { "operationId": "files_.sha256_retrieve", "parameters": [ { "in": "path", "name": "file_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "file" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "description": "No response body" } } } }, "/api/v2/firstmile-s3-role-element/": { "get": { "operationId": "firstmile_s3_role_element_retrieve", "tags": [ "firstmile" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3RoleElement" } } }, "description": "" } } }, "post": { "operationId": "firstmile_s3_role_element_create", "tags": [ "firstmile" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3RoleElement" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/S3RoleElement" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/S3RoleElement" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3RoleElement" } } }, "description": "" } } } }, "/api/v2/firstmile-validate-illumina-samplesheet/": { "post": { "operationId": "firstmile_validate_illumina_samplesheet_create", "description": "Upload Illumina SampleSheet.csv and validate that it conforms with FirstMile demultiplexing\nrequirements. Under the `[Data]` section, a custom column called `Gencove_Project_ID` must\nbe present; each sample must contain a valid, existing Gencove project ID value in this\ncolumn.", "parameters": [ { "in": "query", "name": "illumina_samplesheet", "schema": { "type": "string", "format": "binary" }, "description": "Illumina SampleSheet.csv file", "required": true } ], "tags": [ "firstmile" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "description": "No response body" } } } }, "/api/v2/invitations/": { "get": { "operationId": "invitations_list", "description": "List invites for an organization.", "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": "status", "schema": { "type": "string", "enum": [ "accepted", "all", "expired", "pending", "revoked" ] }, "description": "Filter invites by their status" } ], "tags": [ "invitation" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedInvitationList" } } }, "description": "" } } }, "post": { "operationId": "invitations_create", "description": "Invite Gencove user to actors's organization.", "tags": [ "invitation" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateInvite" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/CreateInvite" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/CreateInvite" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Invitation" } } }, "description": "" } } } }, "/api/v2/invitations-token/{token}": { "get": { "operationId": "invitations_token_retrieve", "description": "Get invitation details by token.", "parameters": [ { "in": "path", "name": "token", "schema": { "type": "string" }, "required": true } ], "tags": [ "invitation" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvitationDetails" } } }, "description": "" } } }, "patch": { "operationId": "invitations_token_partial_update", "description": "Handle invitation acceptance.", "parameters": [ { "in": "path", "name": "token", "schema": { "type": "string" }, "required": true } ], "tags": [ "invitation" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PatchedInvitationDetails" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/PatchedInvitationDetails" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/PatchedInvitationDetails" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvitationDetails" } } }, "description": "" } } } }, "/api/v2/invitations/{invitation_id}": { "delete": { "operationId": "invitations_destroy", "description": "Invitation details and management.\n\nRetrieving is enabled for all users, even unauthorized ones.\nUpdate and delete are enabled for logged-in users and only if they have\nthe appropriate relation to the invite.", "parameters": [ { "in": "path", "name": "invitation_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "invitation" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "204": { "description": "No response body" } } } }, "/api/v2/jwt-create/": { "post": { "operationId": "jwt_create_create", "description": "Takes a set of user credentials and returns an access and refresh JSON web\ntoken pair to prove the authentication of those credentials.", "tags": [ "jwt" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OTPTokenObtainPair" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/OTPTokenObtainPair" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/OTPTokenObtainPair" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TokenPair" } } }, "description": "" } } } }, "/api/v2/jwt-logout/": { "post": { "operationId": "jwt_logout_create", "description": "Logout user and blacklist current JWT refresh token.", "tags": [ "jwt" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BlacklistRefreshToken" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/BlacklistRefreshToken" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/BlacklistRefreshToken" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BlacklistRefreshToken" } } }, "description": "" } } } }, "/api/v2/jwt-refresh/": { "post": { "operationId": "jwt_refresh_create", "description": "Takes a refresh type JSON web token and returns an access type JSON web\ntoken if the refresh token is valid.", "tags": [ "jwt" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TokenRefresh" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/TokenRefresh" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/TokenRefresh" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TokenRefresh" } } }, "description": "" } } } }, "/api/v2/jwt-verify/": { "post": { "operationId": "jwt_verify_create", "description": "Takes a token and indicates if it is valid. This view provides no\ninformation about a token's fitness for a particular use.", "tags": [ "jwt" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TokenVerify" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/TokenVerify" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/TokenVerify" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TokenVerify" } } }, "description": "" } } } }, "/api/v2/mfa-disable/": { "delete": { "operationId": "mfa_disable_destroy", "description": "Disable MFA for your account.", "tags": [ "mfa" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "204": { "description": "No response body" } } } }, "/api/v2/mfa-setup/": { "post": { "operationId": "mfa_setup_create", "description": "Initial step to add MFA to your account.", "tags": [ "mfa" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SetUpMFA" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SetUpMFA" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SetUpMFA" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SetUpMFA" } } }, "description": "" } } } }, "/api/v2/mfa-status/": { "get": { "operationId": "mfa_status_retrieve", "description": "Returns the status of MFA of the user.", "tags": [ "mfa" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MFAStatus" } } }, "description": "" } } } }, "/api/v2/mfa-validate/": { "post": { "operationId": "mfa_validate_create", "description": "Second step to add MFA to your account.", "tags": [ "mfa" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ValidateSetUpMFA" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/ValidateSetUpMFA" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/ValidateSetUpMFA" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ValidateSetUpMFA" } } }, "description": "" } } } }, "/api/v2/notifications/{notification_id}": { "get": { "operationId": "notifications_retrieve", "description": "List all available subscriptions for given project or create a new\nsubscription.", "parameters": [ { "in": "path", "name": "notification_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "notification" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProjectSubscriptionNotificationDetail" } } }, "description": "" } } } }, "/api/v2/organization/": { "get": { "operationId": "organization_retrieve", "description": "Fetch organization details", "tags": [ "organization" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Organization" } } }, "description": "" } } }, "patch": { "operationId": "organization_partial_update", "description": "Update organization details", "tags": [ "organization" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PatchedOrganization" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/PatchedOrganization" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/PatchedOrganization" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Organization" } } }, "description": "" } } } }, "/api/v2/organization-monthly-usage-report/": { "get": { "operationId": "organization_monthly_usage_report_retrieve", "description": "Retrieve CSV monthly usage report. Optionally specify a date range.", "parameters": [ { "in": "query", "name": "from", "schema": { "type": "string" }, "description": "Start date for report. Format is YYYY-MM, e.g. 2023-01. Must supply both 'from' and 'to' parameters." }, { "in": "query", "name": "to", "schema": { "type": "string" }, "description": "End date for report. Format is YYYY-MM, e.g. 2023-05. Must supply both 'from' and 'to' parameters." } ], "tags": [ "organization" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "description": "No response body" } } } }, "/api/v2/organization-roles/{role_id}": { "get": { "operationId": "organization_roles_retrieve", "parameters": [ { "in": "path", "name": "role_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "organization" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserRoleObject" } } }, "description": "" } } } }, "/api/v2/organization-users/": { "get": { "operationId": "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": "query", "name": "search", "schema": { "type": "string" }, "description": "Search users by name, email or id" } ], "tags": [ "organization" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedOrganizationUserList" } } }, "description": "" } } }, "post": { "operationId": "organization_users_create", "tags": [ "organization" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserRoleObjectCreate" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/UserRoleObjectCreate" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/UserRoleObjectCreate" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserRoleObject" } } }, "description": "" } } } }, "/api/v2/organization-users/{user_id}": { "patch": { "operationId": "organization_users_partial_update", "parameters": [ { "in": "path", "name": "user_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "organization" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PatchedOrganizationUser" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/PatchedOrganizationUser" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/PatchedOrganizationUser" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OrganizationUser" } } }, "description": "" } } } }, "/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.\n\nretrieve: 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": "" } } } }, "/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\nby 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.\n\nCreates independent copies of the source samples in the destination\nproject, producing new sample records. Only available when the\norganization 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.\n\nReferences the source samples in the destination project without\nduplicating the underlying data. Sample metadata can optionally be\noverridden 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.\n\nSamples are added formatted as the `results` response value that was returned from\n`/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\nsubscription.", "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.\n\nWebhook 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.\nBy 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_subscriptions_list", "description": "List all available subscriptions for given project or create a new\nsubscription.", "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/PaginatedProjectSubscriptionList" } } }, "description": "" } } }, "post": { "operationId": "project_subscriptions_create", "description": "Add subscription to project events.", "parameters": [ { "in": "path", "name": "project_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "project" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SubscriptionCreate" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SubscriptionCreate" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SubscriptionCreate" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SubscriptionCreate" } } }, "description": "" } } } }, "/api/v2/project-unhide-samples/{project_id}": { "post": { "operationId": "project_unhide_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-users/{project_id}": { "get": { "operationId": "project_users_list", "description": "Get project users by project id.", "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": "only_explicit_roles", "schema": { "type": "boolean" }, "description": "Show only project level granted roles" }, { "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/PaginatedProjectUsersList" } } }, "description": "" } } }, "post": { "operationId": "project_users_create", "parameters": [ { "in": "path", "name": "project_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "project" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserRoleObjectCreate" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/UserRoleObjectCreate" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/UserRoleObjectCreate" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserRoleObject" } } }, "description": "" } } } }, "/api/v2/projects/": { "get": { "operationId": "projects_list", "description": "Retrieve list of user projects.", "parameters": [ { "in": "query", "name": "additional_permission", "schema": { "type": "string", "enum": [ "basespace_biosamples_import", "project_samples_add" ] }, "description": "Additional permission" }, { "in": "query", "name": "hidden_status", "schema": { "type": "string", "enum": [ "all", "hidden", "visible" ] }, "description": "Filter projects by their hidden status" }, { "name": "limit", "required": false, "in": "query", "description": "Number of results to return per page.", "schema": { "type": "integer" } }, { "in": "query", "name": "locked", "schema": { "type": "boolean" }, "description": "Filter projects by locked status" }, { "name": "offset", "required": false, "in": "query", "description": "The initial index from which to return the results.", "schema": { "type": "integer" } }, { "name": "search", "required": false, "in": "query", "description": "A search term.", "schema": { "type": "string" } }, { "in": "query", "name": "shared", "schema": { "type": "boolean" }, "description": "Filter projects by shared status" }, { "in": "query", "name": "sort_by", "schema": { "type": "string", "enum": [ "created", "modified", "name", "pipeline_capabilities", "sample_count" ] }, "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", "running" ] }, "description": "Filter projects by sample statuses" } ], "tags": [ "project" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedProjectList" } } }, "description": "" } } }, "post": { "operationId": "projects_create", "description": "Create project", "tags": [ "project" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Project" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/Project" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/Project" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Project" } } }, "description": "" } } } }, "/api/v2/projects-delete/": { "delete": { "operationId": "projects_delete_destroy", "tags": [ "project" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "204": { "description": "No response body" } } } }, "/api/v2/projects-hide/": { "post": { "operationId": "projects_hide_create", "tags": [ "project" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProjectHideUnhide" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/ProjectHideUnhide" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/ProjectHideUnhide" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "204": { "description": "No response body" } } } }, "/api/v2/projects-unhide/": { "post": { "operationId": "projects_unhide_create", "tags": [ "project" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProjectHideUnhide" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/ProjectHideUnhide" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/ProjectHideUnhide" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "204": { "description": "No response body" } } } }, "/api/v2/projects/{project_id}": { "get": { "operationId": "projects_retrieve", "description": "Fetch single project details", "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/ProjectDetail" } } }, "description": "" } } }, "patch": { "operationId": "projects_partial_update", "description": "Update single project details", "parameters": [ { "in": "path", "name": "project_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "project" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PatchedProject" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/PatchedProject" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/PatchedProject" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Project" } } }, "description": "" } } } }, "/api/v2/roles/{applies_to}": { "get": { "operationId": "roles_list", "description": "Method used to retrieve paginated roles.", "parameters": [ { "in": "path", "name": "applies_to", "schema": { "type": "string", "enum": [ "organization", "project" ] }, "description": "Filter roles by permission being applied to.", "required": true }, { "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": [ "role" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedRoleList" } } }, "description": "" } } } }, "/api/v2/s3-external-id/": { "get": { "operationId": "s3_external_id_retrieve", "description": "Retrieve and store S3 external ID for User.", "tags": [ "s3" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3ExternalID" } } }, "description": "" } } }, "post": { "operationId": "s3_external_id_create", "description": "Retrieve and store S3 external ID for User.", "tags": [ "s3" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3ExternalID" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/S3ExternalID" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/S3ExternalID" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3ExternalID" } } }, "description": "" } } } }, "/api/v2/s3-role/": { "get": { "operationId": "s3_role_retrieve", "description": "Retrieve and store S3 role for User.", "tags": [ "s3" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3Role" } } }, "description": "" } } }, "post": { "operationId": "s3_role_create", "description": "Retrieve and store S3 role for User.", "tags": [ "s3" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3Role" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/S3Role" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/S3Role" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3Role" } } }, "description": "" } } }, "delete": { "operationId": "s3_role_destroy", "description": "Retrieve and store S3 role for User.", "tags": [ "s3" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "204": { "description": "No response body" } } } }, "/api/v2/s3-uri-autoimport/": { "get": { "operationId": "s3_uri_autoimport_list", "description": "Import samples from s3 uri automatically.", "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": [ "s3" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedS3URIAutoimportList" } } }, "description": "" } } }, "post": { "operationId": "s3_uri_autoimport_create", "description": "Creates new autoimport job, if the job already exists updates metadata.", "tags": [ "s3" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3URIAutoimport" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/S3URIAutoimport" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/S3URIAutoimport" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "202": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3ProjectsAutoimportCreate" } } }, "description": "" } } } }, "/api/v2/s3-uri-autoimport/{s3_uri_import_id}": { "delete": { "operationId": "s3_uri_autoimport_destroy", "description": "Import samples from s3 uri automatically.", "parameters": [ { "in": "path", "name": "s3_uri_import_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "s3" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "204": { "description": "No response body" } } } }, "/api/v2/s3-uri-import/": { "post": { "operationId": "s3_uri_import_create", "description": "Import samples from s3 uri.", "tags": [ "s3" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/S3URIImport" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/S3URIImport" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/S3URIImport" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "202": { "description": "No response body" } } } }, "/api/v2/sample-ancestry/{sample_id}": { "get": { "operationId": "sample_ancestry_retrieve", "parameters": [ { "in": "path", "name": "sample_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleAncestry" } } }, "description": "" } } } }, "/api/v2/sample-consumer-report/{sample_id}": { "post": { "operationId": "sample_consumer_report_create", "description": "Generate presigned URL for consumer report.\n\nArgs:\n request: HTTP request\n\nReturns:\n Response with presigned URL and expiration time", "parameters": [ { "in": "path", "name": "sample_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "sample" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleConsumerReportCreate" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SampleConsumerReportCreate" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SampleConsumerReportCreate" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleConsumerReportResponse" } } }, "description": "" } } } }, "/api/v2/sample-genomic-variants/{sample_id}": { "get": { "operationId": "sample_genomic_variants_list", "description": "Return variant-level results from a sample's imputed VCF.\n\nProvide exactly one of the three query modes:\n\n- point: `?chromosome=chr11&position=`\n- range: `?chromosome=chr11&start_position=&end_position=`\n- rsid: `?rsid=rs1,rs2,...`\n\n`chromosome` must be an h38 contig name with the `chr` prefix\n(chr1..chr22, chrX, chrY, chrM).", "parameters": [ { "in": "query", "name": "chromosome", "schema": { "type": "string" }, "description": "h38 contig name with the `chr` prefix, e.g. `chr1`, `chr11`, `chrX`, `chrY`, `chrM` (point and range queries)" }, { "in": "query", "name": "end_position", "schema": { "type": "integer" }, "description": "Range end (1-based); use with `start_position`. The span may not exceed 100000 bp." }, { "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": "position", "schema": { "type": "integer" }, "description": "1-based position for a point query" }, { "in": "query", "name": "rsid", "schema": { "type": "string" }, "description": "Comma-separated rsIDs, e.g. `rs429358,rs7412` (at most 50 per request)." }, { "in": "path", "name": "sample_id", "schema": { "type": "string", "format": "uuid" }, "required": true }, { "in": "query", "name": "start_position", "schema": { "type": "integer" }, "description": "Range start (1-based); use with `end_position`" } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedGenomicVariantList" } } }, "description": "" } } } }, "/api/v2/sample-kit/": { "post": { "operationId": "sample_kit_create", "description": "Order a new kit for a sample", "tags": [ "sample" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleKit" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SampleKit" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SampleKit" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleKitResponse" } } }, "description": "" } } } }, "/api/v2/sample-kit-form/": { "post": { "operationId": "sample_kit_form_create", "description": "Create a temporary, payment-free kit-order session.\n\nAuth-gated to ``consumer_provider`` orgs and the ``sample_kit_create`` role\n(project-scoped). Creates a placeholder ``samples.Sample`` (status\n``consumer_awaiting_kit_order``), pins the JWT ``jti`` on it for replay\nprotection, and returns a tokenized URL the partner hands to an end user.\nThe ``Kit`` is only created once the end user submits the form.", "tags": [ "sample" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleKitFormCreate" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SampleKitFormCreate" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SampleKitFormCreate" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleKitFormResponse" } } }, "description": "" } } } }, "/api/v2/sample-manifests-csv-template/": { "get": { "operationId": "sample_manifests_csv_template_retrieve", "description": "Download a sample manifest CSV template file based on the template_type parameter.", "parameters": [ { "in": "query", "name": "template_type", "schema": { "type": "string", "enum": [ "384_well", "96_well", "tube" ] }, "description": "Type of the sample manifest CSV template. Options are 96_well, 384_well, tube." } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] }, {} ], "responses": { "200": { "description": "No response body" } } } }, "/api/v2/sample-manifests-xlsx-template/": { "get": { "operationId": "sample_manifests_xlsx_template_retrieve", "description": "Download a sample manifest XLSX template file.", "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] }, {} ], "responses": { "200": { "description": "No response body" } } } }, "/api/v2/sample-manifests/{sample_manifest_id}": { "get": { "operationId": "sample_manifests_retrieve", "parameters": [ { "in": "path", "name": "sample_manifest_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleManifest" } } }, "description": "" } } } }, "/api/v2/sample-metadata/{sample_id}": { "get": { "operationId": "sample_metadata_retrieve", "description": "Return sample metadata.", "parameters": [ { "in": "path", "name": "sample_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleMetadata" } } }, "description": "" } } }, "post": { "operationId": "sample_metadata_create", "description": "Create sample metadata.", "parameters": [ { "in": "path", "name": "sample_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "sample" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleMetadata" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SampleMetadata" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SampleMetadata" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleMetadata" } } }, "description": "" } } } }, "/api/v2/sample-parentage/{sample_id}": { "get": { "operationId": "sample_parentage_retrieve", "parameters": [ { "in": "query", "name": "display_results", "schema": { "type": "string", "enum": [ "all", "checks", "matches" ] }, "description": "Display mode for parentage records. Options are:\n- 'matches': Only display records where a parent has been identified (default)\n- 'checks': Only display records where no parent has been identified\n- 'all': Display all parentage records" }, { "in": "path", "name": "sample_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleParentage" } } }, "description": "" } } } }, "/api/v2/sample-quality-controls/{sample_id}": { "get": { "operationId": "sample_quality_controls_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": "sample_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedQualityControlList" } } }, "description": "" } } } }, "/api/v2/sample-restore-group/{restore_group_id}": { "get": { "operationId": "sample_restore_group_list", "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": "restore_group_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": "status", "schema": { "type": "string", "enum": [ "all", "completed", "failed", "running", "succeeded" ] }, "description": "Filter samples by their status" } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedSampleListList" } } }, "description": "" } } } }, "/api/v2/sample-sheet/": { "get": { "operationId": "sample_sheet_list", "description": "Return generated sample sheet.", "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": "gncv:// notated sample path to search for" }, { "in": "query", "name": "sort_by", "schema": { "type": "string", "enum": [ "created", "modified" ] }, "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", "assigned", "unassigned" ] }, "description": "One of: assigned, unassigned, all; default is 'all'" } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedSampleSheetList" } } }, "description": "" } } } }, "/api/v2/sample-stats/{sample_id}": { "get": { "operationId": "sample_stats_retrieve", "parameters": [ { "in": "path", "name": "sample_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleStats" } } }, "description": "" } } } }, "/api/v2/sample-statuses/{sample_id}": { "get": { "operationId": "sample_statuses_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": "sample_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedSampleStatusListList" } } }, "description": "" } } } }, "/api/v2/sample-trait-scores/{sample_id}": { "get": { "operationId": "sample_trait_scores_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": "sample_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedTraitScoreList" } } }, "description": "" } } } }, "/api/v2/samples/{sample_id}": { "get": { "operationId": "samples_retrieve", "description": "Retrieve sample model. Overridden to store audit action.", "parameters": [ { "in": "path", "name": "sample_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "sample" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SampleDetails" } } }, "description": "" } } } }, "/api/v2/social-disconnect/": { "post": { "operationId": "social_disconnect_create", "description": "Disconnect given providers' social account from current user.", "tags": [ "social" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SocialDisconnect" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SocialDisconnect" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SocialDisconnect" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SocialDisconnect" } } }, "description": "" } } } }, "/api/v2/social-providers/": { "get": { "operationId": "social_providers_list", "description": "Return all available social providers, their autorization urls and user\nconnected accounts.", "parameters": [ { "name": "limit", "required": false, "in": "query", "description": "Number of results to return per page.", "schema": { "type": "integer" } }, { "in": "query", "name": "name", "schema": { "type": "string" }, "description": "Filter social providers by name" }, { "name": "offset", "required": false, "in": "query", "description": "The initial index from which to return the results.", "schema": { "type": "integer" } } ], "tags": [ "social" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedSocialProviderList" } } }, "description": "" } } } }, "/api/v2/social-signup/": { "post": { "operationId": "social_signup_create", "description": "Associate Social user with logged in Django user.\n\nIn social provider's config, `redirect_uri` or a similar setting should\nbe pointed to a url managed by the frontend app.\nFrontend app should pass on the info from social provider ie.\n```\n {\n \"provider\": \"basespace\",\n \"code\": \"foobar\"\n }\n```", "tags": [ "social" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SocialSignUp" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SocialSignUp" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SocialSignUp" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SocialSignUp" } } }, "description": "" } } } }, "/api/v2/upload-credentials/": { "post": { "operationId": "upload_credentials_create", "tags": [ "upload" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetUploadCredentialsResponse" } } }, "description": "" } } } }, "/api/v2/uploads/": { "get": { "operationId": "uploads_list", "description": "Retrieve list of user uploads.", "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 uploads by id" }, { "in": "query", "name": "status", "schema": { "type": "string", "enum": [ "failed", "started", "succeeded" ] }, "description": "Filter uploads by upload statuses" } ], "tags": [ "upload" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedUploadList" } } }, "description": "" } } } }, "/api/v2/uploads-delete-unassigned/": { "post": { "operationId": "uploads_delete_unassigned_create", "tags": [ "upload" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeletedUnassignedUploads" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/DeletedUnassignedUploads" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/DeletedUnassignedUploads" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeletedUnassignedUploads" } } }, "description": "" } } } }, "/api/v2/uploads-post-data/": { "post": { "operationId": "uploads_post_data_create", "description": "Returns info about initialized file upload based on posted file\ndestination path.", "tags": [ "upload" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UploadPostDataCreate" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/UploadPostDataCreate" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/UploadPostDataCreate" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UploadPostDataResponse" } } }, "description": "" } } } }, "/api/v2/uploads-presigned-post-data/": { "post": { "operationId": "uploads_presigned_post_data_create", "description": "Returns S3 presigned parameters needed for file upload as response for\ngiven file attributes.", "tags": [ "upload" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UploadPostDataCreate" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/UploadPostDataCreate" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/UploadPostDataCreate" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UploadPresignedPostDataResponse" } } }, "description": "" } } } }, "/api/v2/uploads-url/": { "post": { "operationId": "uploads_url_create", "tags": [ "upload" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UploadURLCreate" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/UploadURLCreate" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/UploadURLCreate" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UploadURLResponse" } } }, "description": "" } } } }, "/api/v2/uploads/{upload_id}": { "get": { "operationId": "uploads_retrieve", "description": "Fetch single upload details", "parameters": [ { "in": "path", "name": "upload_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "upload" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Upload" } } }, "description": "" } } } }, "/api/v2/user/": { "get": { "operationId": "user_retrieve", "tags": [ "user" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/User" } } }, "description": "" } } }, "put": { "operationId": "user_update", "tags": [ "user" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/User" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/User" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/User" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/User" } } }, "description": "" } } }, "patch": { "operationId": "user_partial_update", "tags": [ "user" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PatchedUser" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/PatchedUser" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/PatchedUser" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/User" } } }, "description": "" } } } }, "/api/v2/user-activate/": { "post": { "operationId": "user_activate_create", "tags": [ "user" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Activation" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/Activation" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/Activation" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] }, {} ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Activation" } } }, "description": "" } } } }, "/api/v2/user-activate-resend/": { "post": { "operationId": "user_activate_resend_create", "tags": [ "user" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SendEmailReset" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SendEmailReset" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SendEmailReset" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] }, {} ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SendEmailReset" } } }, "description": "" } } } }, "/api/v2/user-api-keys/": { "get": { "operationId": "user_api_keys_list", "description": "Fetch all non-revoked keys", "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": [ "user" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedAPIKeyList" } } }, "description": "" } } }, "post": { "operationId": "user_api_keys_create", "description": "Create new api key", "tags": [ "user" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateAPIKey" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/CreateAPIKey" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/CreateAPIKey" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateAPIKey" } } }, "description": "" } } } }, "/api/v2/user-api-keys/{api_key_id}": { "patch": { "operationId": "user_api_keys_partial_update", "description": "Update (revoke) api key", "parameters": [ { "in": "path", "name": "api_key_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "user" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PatchedAPIKey" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/PatchedAPIKey" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/PatchedAPIKey" } } } }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/APIKey" } } }, "description": "" } } } }, "/api/v2/user-change-email/": { "post": { "operationId": "user_change_email_create", "tags": [ "user" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SetUsername" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SetUsername" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SetUsername" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SetUsername" } } }, "description": "" } } } }, "/api/v2/user-config/": { "get": { "operationId": "user_config_retrieve", "description": "Retrieve user config formated as `{key: value}` JSON object.", "tags": [ "user" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "description": "No response body" } } }, "patch": { "operationId": "user_config_partial_update", "description": "Update user config formated as `{key: value}` JSON object.", "tags": [ "user" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "description": "No response body" } } } }, "/api/v2/user-password-reset/": { "post": { "operationId": "user_password_reset_create", "tags": [ "user" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SendEmailReset" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SendEmailReset" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SendEmailReset" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] }, {} ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SendEmailReset" } } }, "description": "" } } } }, "/api/v2/user-password-reset-confirm/": { "post": { "operationId": "user_password_reset_confirm_create", "tags": [ "user" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PasswordResetConfirm" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/PasswordResetConfirm" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/PasswordResetConfirm" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] }, {} ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PasswordResetConfirm" } } }, "description": "" } } } }, "/api/v2/user-password-set/": { "post": { "operationId": "user_password_set_create", "tags": [ "user" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SetPassword" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/SetPassword" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/SetPassword" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SetPassword" } } }, "description": "" } } } }, "/api/v2/user-projects/{user_id}": { "get": { "operationId": "user_projects_list", "description": "Retrieve list of user projects.", "parameters": [ { "in": "query", "name": "additional_permission", "schema": { "type": "string", "enum": [ "basespace_biosamples_import", "project_samples_add" ] }, "description": "Additional permission" }, { "in": "query", "name": "hidden_status", "schema": { "type": "string", "enum": [ "all", "hidden", "visible" ] }, "description": "Filter projects by their hidden status" }, { "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" } }, { "name": "search", "required": false, "in": "query", "description": "A search term.", "schema": { "type": "string" } }, { "in": "query", "name": "sort_by", "schema": { "type": "string", "enum": [ "created", "modified", "name", "pipeline_capabilities", "sample_count" ] }, "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", "running" ] }, "description": "Filter projects by sample statuses" }, { "in": "path", "name": "user_id", "schema": { "type": "string", "format": "uuid" }, "required": true } ], "tags": [ "user" ], "security": [ { "JWT": [] }, { "API key": [] } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedProjectList" } } }, "description": "" } } } }, "/api/v2/user-register/": { "post": { "operationId": "user_register_create", "tags": [ "user" ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserCreate" } }, "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/UserCreate" } }, "multipart/form-data": { "schema": { "$ref": "#/components/schemas/UserCreate" } } }, "required": true }, "security": [ { "JWT": [] }, { "API key": [] }, {} ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserCreate" } } }, "description": "" } } } } }, "components": { "schemas": { "APIKey": { "type": "object", "properties": { "revoked": { "type": "boolean", "description": "If the API key is revoked, clients cannot use it anymore. (This cannot be undone.)" }, "id": { "type": "string" }, "name": { "type": "string", "description": "A free-form name for the API key. Need not be unique. 50 characters max.", "maxLength": 50 }, "prefix": { "type": "string", "readOnly": true }, "expiry_date": { "type": "string", "format": "date", "readOnly": true, "nullable": true, "title": "Expires", "description": "Last day (UTC) to use the API key, once API key expires clients cannot use it anymore." }, "has_expired": { "type": "string", "readOnly": true }, "ip_range": { "nullable": true, "description": "List of trusted subnets in CIDR notation" } }, "required": [ "expiry_date", "has_expired", "id", "name", "prefix" ] }, "AWSPresignedPostData": { "type": "object", "properties": { "key": { "type": "string" }, "AWSAccessKeyId": { "type": "string" }, "policy": { "type": "string" }, "signature": { "type": "string" } }, "required": [ "AWSAccessKeyId", "key", "policy", "signature" ] }, "Activation": { "type": "object", "properties": { "uid": { "type": "string" }, "token": { "type": "string" } }, "required": [ "token", "uid" ] }, "AncestryMetadata": { "type": "object", "properties": { "value": {} } }, "AncestrySelfNested": { "type": "object", "description": "Serializer used to nest ancestry data within other ancestry serializer.", "properties": { "value": {} } }, "ArchiveSampleStatus": { "type": "object", "properties": { "id": { "type": "string" }, "status": { "type": "string" }, "created": { "type": "string" }, "transition_cutoff": { "type": "string", "format": "date-time", "nullable": true, "description": "Denotes the transition time for calculated states" } }, "required": [ "created", "id", "status" ] }, "ArrayDataUploadFormCreate": { "type": "object", "description": "Request body for ``POST /api/v2/array-data-upload-form``.", "properties": { "project_id": { "type": "string", "format": "uuid", "nullable": true, "description": "Optional UUID of the project the uploaded sample should land in. When omitted, the sample falls back to the organization's consumer array-data project." }, "metadata": { "description": "Free-form JSON object." }, "redirect_on_success": { "type": "string", "format": "uri", "default": "", "description": "URL the end-user is redirected to after a successful upload." }, "redirect_on_failure": { "type": "string", "format": "uri", "default": "", "description": "URL the end-user is redirected to after a failed upload." }, "expires_in": { "type": "integer", "maximum": 3600, "minimum": 60, "default": 600, "description": "JWT lifetime in seconds (default 600, max 3600). Once the URL is opened, a 15-minute session is created that may outlive this token." } } }, "ArrayDataUploadFormResponse": { "type": "object", "description": "Response body for ``POST /api/v2/array-data-upload-form``.", "properties": { "sample_id": { "type": "string", "format": "uuid", "description": "UUID of the ``samples.Sample`` created for this upload session." }, "url": { "type": "string", "format": "uri", "description": "Tokenized upload URL for the end-user." }, "expires_at": { "type": "string", "format": "date-time", "description": "When the embedded JWT expires (ISO-8601)." } }, "required": [ "expires_at", "sample_id", "url" ] }, "BaseSpaceBioSample": { "type": "object", "description": "Gencove representation of BaseSpace biosample.", "properties": { "basespace_id": { "type": "string" }, "basespace_bio_sample_name": { "type": "string" }, "basespace_date_created": { "type": "string", "format": "date-time" }, "basespace_date_modified": { "type": "string", "format": "date-time" }, "basespace_status": { "type": "string" }, "basespace_lab_status": { "type": "string" }, "basespace_user_owned_by_id": { "type": "string" } }, "required": [ "basespace_bio_sample_name", "basespace_date_created", "basespace_date_modified", "basespace_id", "basespace_lab_status", "basespace_status", "basespace_user_owned_by_id" ] }, "BaseSpaceBioSampleNested": { "type": "object", "description": "Single BaseSpace biosample to be imported.", "properties": { "basespace_id": { "type": "string" }, "client_id": { "type": "string" }, "sample": { "type": "string", "format": "uuid", "readOnly": true } }, "required": [ "basespace_id", "client_id", "sample" ] }, "BaseSpaceBioSamplesImport": { "type": "object", "description": "Project and accompanying BaseSpace biosamples to be imported.", "properties": { "project_id": { "type": "string", "format": "uuid" }, "basespace_bio_samples": { "type": "array", "items": { "$ref": "#/components/schemas/BaseSpaceBioSampleNested" } }, "metadata": { "nullable": true } }, "required": [ "basespace_bio_samples", "project_id" ] }, "BaseSpaceProject": { "type": "object", "description": "Gencove representation of BaseSpace project.", "properties": { "basespace_id": { "type": "string" }, "basespace_name": { "type": "string" }, "basespace_description": { "type": "string" }, "basespace_date_created": { "type": "string", "format": "date-time" }, "basespace_date_modified": { "type": "string", "format": "date-time" } }, "required": [ "basespace_date_created", "basespace_date_modified", "basespace_description", "basespace_id", "basespace_name" ] }, "BaseSpaceProjectsAutoimport": { "type": "object", "description": "Gencove representation of BaseSpace projects to be imported periodically.", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "project_id": { "type": "string", "format": "uuid" }, "identifier": { "type": "string" }, "metadata": { "nullable": true } }, "required": [ "id", "identifier", "project_id" ] }, "BaseSpaceProjectsAutoimportCreate": { "type": "object", "description": "Gencove representation of BaseSpace projects create and update autoimport response.", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "metadata": { "nullable": true, "description": "Additional information to be attached to the Sample instances." }, "action": { "type": "string", "readOnly": true } }, "required": [ "action", "id" ] }, "BaseSpaceProjectsImport": { "type": "object", "description": "Gencove representation of BaseSpace projects to be imported.", "properties": { "project_id": { "type": "string", "format": "uuid" }, "basespace_project_ids": { "type": "array", "items": { "type": "string" } }, "metadata": { "nullable": true } }, "required": [ "basespace_project_ids", "project_id" ] }, "BatchCreate": { "type": "object", "properties": { "name": { "type": "string" }, "batch_type": { "type": "string" }, "sample_ids": { "type": "array", "items": { "type": "string", "format": "uuid" }, "description": "List of sample IDs or if empty all available samples will be used" } }, "required": [ "batch_type", "name", "sample_ids" ] }, "BatchDetail": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string", "maxLength": 254 }, "batch_type": { "type": "string", "description": "Key from pipeline config", "readOnly": true }, "sample_ids": { "type": "array", "items": { "type": "string", "format": "uuid" } }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/BatchStatusNested" } ], "readOnly": true }, "files": { "type": "array", "items": { "$ref": "#/components/schemas/BatchFileNested" }, "readOnly": true, "description": "Batch files" } }, "required": [ "batch_type", "files", "id", "last_status", "sample_ids" ] }, "BatchFileNested": { "type": "object", "description": "Sets batch.id as filename in file download_url.", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "s3_path": { "type": "string", "description": "S3 object key", "maxLength": 1024 }, "size": { "type": "integer", "maximum": 9223372036854775807, "minimum": -9223372036854775808, "format": "int64", "nullable": true, "description": "Size as reported by AWS in bytes" }, "download_url": { "type": "string", "format": "uri", "readOnly": true, "description": "Download url" }, "file_type": { "type": "string", "description": "File extension", "readOnly": true }, "checksum_sha256": { "type": "string", "description": "Object's sha256 Checksum", "maxLength": 64 }, "shadow_mode": { "type": "boolean", "nullable": true, "description": "If true, file is only accessible by organizations with shadow mode access enabled." } }, "required": [ "download_url", "file_type", "id" ] }, "BatchList": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string", "maxLength": 254 }, "batch_type": { "type": "string", "description": "Key from pipeline config", "readOnly": true }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/BatchStatusNested" } ], "readOnly": true }, "files": { "type": "array", "items": { "$ref": "#/components/schemas/BatchFileNested" }, "readOnly": true, "description": "Batch files" } }, "required": [ "batch_type", "files", "id", "last_status" ] }, "BatchStatusNested": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "status": { "type": "string" }, "created": { "type": "string", "format": "date-time" } }, "required": [ "id", "status" ] }, "BatchType": { "type": "object", "properties": { "key": { "type": "string", "description": "Key from pipeline config", "maxLength": 254 }, "description": { "type": "string" } }, "required": [ "key" ] }, "BillingPortal": { "type": "object", "properties": { "billing_portal_url": { "type": "string", "format": "uri", "readOnly": true, "description": "Billing portal URL to go to." } }, "required": [ "billing_portal_url" ] }, "BlacklistRefreshToken": { "type": "object", "description": "Blacklist provided JWT refresh token.", "properties": { "refresh": { "type": "string" } }, "required": [ "refresh" ] }, "BlankEnum": { "enum": [ "" ] }, "CreateAPIKey": { "type": "object", "properties": { "expiry_date": { "type": "string", "format": "date", "nullable": true, "title": "Expires", "description": "Last day (UTC) to use the API key, once API key expires clients cannot use it anymore." }, "id": { "type": "string", "readOnly": true }, "key": { "type": "string", "readOnly": true }, "name": { "type": "string", "description": "A free-form name for the API key. Need not be unique. 50 characters max.", "maxLength": 50 }, "prefix": { "type": "string", "readOnly": true }, "ip_range": { "nullable": true, "description": "List of trusted subnets in CIDR notation" } }, "required": [ "id", "key", "name", "prefix" ] }, "CreateInvite": { "type": "object", "properties": { "email": { "type": "string", "format": "email" }, "role": { "type": "string", "default": "" } }, "required": [ "email" ] }, "DeletedUnassignedUploads": { "type": "object", "properties": { "upload_ids": { "type": "array", "items": { "type": "string", "format": "uuid" } } }, "required": [ "upload_ids" ] }, "DeviceTypeEnum": { "enum": [ "generator", "yubikey" ], "type": "string", "description": "* `generator` - Token generator\n* `yubikey` - YubiKey" }, "EventType": { "type": "object", "description": "Serializing event types using EventType choices options.", "properties": { "key": { "type": "string" }, "description": { "type": "string" } }, "required": [ "description", "key" ] }, "EventTypeEnum": { "enum": [ "analysis_complete_v2", "batch_final_report_complete_v2", "samples_restored", "analysis_complete", "batch_final_report", "explorer_s3_hot_storage_exceeded", "explorer_s3_cold_storage_exceeded" ], "type": "string", "description": "* `analysis_complete_v2` - submitted project samples have completed analysis\n* `batch_final_report_complete_v2` - created subset of variants batch\n* `samples_restored` - samples are restored from archive\n* `analysis_complete` - legacy: submitted project samples have completed analysis - uses old event format\n* `batch_final_report` - legacy: created subset of variants batch - uses old event format\n* `explorer_s3_hot_storage_exceeded` - Explorer S3 hot storage threshold exceeded\n* `explorer_s3_cold_storage_exceeded` - Explorer S3 cold storage threshold exceeded" }, "EventTypesEnum": { "enum": [ "analysis_complete_v2", "batch_final_report_complete_v2", "samples_restored", "analysis_complete", "batch_final_report", "explorer_s3_hot_storage_exceeded", "explorer_s3_cold_storage_exceeded" ], "type": "string", "description": "* `analysis_complete_v2` - submitted project samples have completed analysis\n* `batch_final_report_complete_v2` - created subset of variants batch\n* `samples_restored` - samples are restored from archive\n* `analysis_complete` - legacy: submitted project samples have completed analysis - uses old event format\n* `batch_final_report` - legacy: created subset of variants batch - uses old event format\n* `explorer_s3_hot_storage_exceeded` - Explorer S3 hot storage threshold exceeded\n* `explorer_s3_cold_storage_exceeded` - Explorer S3 cold storage threshold exceeded" }, "ExistingSample": { "type": "object", "properties": { "client_id": { "type": "string" }, "sample_id": { "type": "string", "format": "uuid" } }, "required": [ "sample_id" ] }, "ExplorerCostReportRecord": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "start_date": { "type": "string", "format": "date", "title": "Cost Report Start Date", "description": "First day of the month for this reporting cycle" }, "end_date": { "type": "string", "format": "date", "title": "Cost Report End Date", "description": "Last day of the month for this reporting cycle" }, "report_amount": { "type": "string", "format": "decimal", "pattern": "^-?\\d{0,13}(?:\\.\\d{0,2})?$" }, "is_current_report": { "type": "boolean", "readOnly": true }, "report_is_finalized": { "type": "boolean", "description": "If True, this record will no longer be automatically updated" }, "last_updated": { "type": "string", "format": "date-time", "readOnly": true }, "files": { "type": "array", "items": { "$ref": "#/components/schemas/FileNested" } } }, "required": [ "end_date", "files", "id", "is_current_report", "last_updated", "start_date" ] }, "ExplorerInstance": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "status": { "type": "string", "readOnly": true }, "stop_after_inactivity_hours": { "type": "integer", "maximum": 4294967295, "minimum": 0, "format": "int64", "nullable": true, "description": "After how many hours of inactivity should an explorer instance be stopped. None -> adhere to org setting. 0 -> do not stop instance. Any number -> amount of hours to wait before stopping instance. If org.explorer_override_stop_after_inactivity_hours is True, this attribute doesn't have any effects." } }, "required": [ "id", "status" ] }, "ExplorerInstanceAccessURL": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid" }, "access_token_expiration": { "type": "integer", "maximum": 86400, "minimum": 1, "description": "Number of seconds before the URL expires. Maximum is 86400 seconds." } }, "required": [ "id" ] }, "ExplorerInstancesInactivityStop": { "type": "object", "properties": { "instance_ids": { "type": "array", "items": { "type": "string", "format": "uuid" }, "maxItems": 100, "minItems": 1 }, "stop_after_inactivity_hours": { "type": "integer", "nullable": true, "description": "After how many hours of inactivity should an explorer instance be stopped. None -> adhere to org setting. 0 -> do not stop instance. Any number -> amount of hours to wait before stopping instance. If org.explorer_override_stop_after_inactivity_hours is True, this attribute doesn't have any effects." } }, "required": [ "instance_ids", "stop_after_inactivity_hours" ] }, "ExplorerInstancesInactivityStopOrganization": { "type": "object", "properties": { "explorer_override_stop_after_inactivity_hours": { "type": "boolean" }, "explorer_stop_after_inactivity_hours": { "type": "integer", "description": "After how many hours of inactivity should an explorer instance be stopped. If org.explorer_override_stop_after_inactivity_hours or instance.stop_after_inactivity_hours is None, then: 0 -> do not stop instances; Any number -> amount of hours to wait before stopping instances. Otherwise, use instance.stop_after_inactivity_hours." } }, "required": [ "explorer_override_stop_after_inactivity_hours", "explorer_stop_after_inactivity_hours" ] }, "ExplorerInstancesStart": { "type": "object", "properties": { "instance_ids": { "type": "array", "items": { "type": "string", "format": "uuid" }, "maxItems": 100, "minItems": 1 } }, "required": [ "instance_ids" ] }, "ExplorerInstancesStop": { "type": "object", "properties": { "instance_ids": { "type": "array", "items": { "type": "string", "format": "uuid" }, "maxItems": 100, "minItems": 1 } }, "required": [ "instance_ids" ] }, "ExplorerSessionStart": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid" } }, "required": [ "id" ] }, "ExplorerSessionStartResponse": { "type": "object", "properties": { "explorer_url": { "type": "string", "description": "Clean Explorer URL to open after the session cookie is set." }, "expires_in": { "type": "integer", "description": "Explorer session duration in seconds." } }, "required": [ "expires_in", "explorer_url" ] }, "ExplorerShellSessionCredentials": { "type": "object", "properties": { "instance_id": { "type": "string", "format": "uuid" } }, "required": [ "instance_id" ] }, "ExplorerShellSessionCredentialsResponse": { "type": "object", "properties": { "version": { "type": "integer" }, "access_key": { "type": "string" }, "secret_key": { "type": "string" }, "token": { "type": "string" }, "expiry_time": { "type": "string", "format": "date-time" }, "region_name": { "type": "string" }, "ec2_instance_id": { "type": "string" }, "shell_session_ssm_document_name": { "type": "string" }, "network_activity_ssm_document_name": { "type": "string" } }, "required": [ "access_key", "ec2_instance_id", "expiry_time", "network_activity_ssm_document_name", "region_name", "secret_key", "shell_session_ssm_document_name", "token", "version" ] }, "ExtendedSampleSheetCreate": { "type": "object", "description": "Adds samples with their uploads to the project and attaches same\nmetadata to all of them.", "properties": { "uploads": { "type": "array", "items": { "$ref": "#/components/schemas/SampleSheetCreate" } }, "metadata": { "nullable": true } }, "required": [ "uploads" ] }, "FastqsNestedCreate": { "type": "object", "description": "Serialized multiple uploads.models.Uploads objects with r1 and r2 names\nhardcoded.", "properties": { "r1": { "$ref": "#/components/schemas/UploadNestedCreate" }, "r2": { "allOf": [ { "$ref": "#/components/schemas/UploadNestedCreate" } ], "nullable": true } }, "required": [ "r1" ] }, "FileNested": { "type": "object", "description": "Used for all nested files except for files associated with sample.", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "s3_path": { "type": "string", "description": "S3 object key", "maxLength": 1024 }, "size": { "type": "integer", "maximum": 9223372036854775807, "minimum": -9223372036854775808, "format": "int64", "nullable": true, "description": "Size as reported by AWS in bytes" }, "download_url": { "type": "string", "readOnly": true }, "file_type": { "type": "string", "description": "File extension", "readOnly": true }, "checksum_sha256": { "type": "string", "description": "Object's sha256 Checksum", "maxLength": 64 }, "shadow_mode": { "type": "boolean", "nullable": true, "description": "If true, file is only accessible by organizations with shadow mode access enabled." } }, "required": [ "download_url", "file_type", "id" ] }, "FileType": { "type": "object", "properties": { "key": { "type": "string", "description": "File extension", "maxLength": 50 }, "description": { "type": "string" } }, "required": [ "key" ] }, "GenomicVariant": { "type": "object", "description": "Serializes a `genomic_variants.services.Variant` record.\n\n`genotype` is an object keyed by the VCF FORMAT field names, e.g.\n`{\"GT\": \"0|0\", \"DS\": \"0\", \"GP\": \"1,0,0\", \"RC\": \"1\", \"AC\": \"0\", \"DP\": \"1\"}`.\nAll values are kept as raw strings so the payload mirrors the VCF exactly;\ncallers interpret `GT` allele indexes against `alt`.\n\n`genotype_confidence` is the confidence of the called genotype: the max of\nthe `GP` posteriors (the same quantity the VCF's LOWCONF filter thresholds\nat 0.9), a probability in [0, 1] or null when the record has no `GP` field.", "properties": { "chromosome": { "type": "string" }, "position": { "type": "integer" }, "rsid": { "type": "string", "nullable": true }, "ref": { "type": "string" }, "alt": { "type": "array", "items": { "type": "string" } }, "genotype": { "type": "object", "additionalProperties": { "type": "string" }, "nullable": true }, "genotype_confidence": { "type": "number", "format": "double", "nullable": true }, "quality": { "type": "number", "format": "double", "nullable": true }, "info": { "type": "object", "additionalProperties": {} } }, "required": [ "alt", "chromosome", "genotype", "genotype_confidence", "info", "position", "quality", "ref", "rsid" ] }, "GetExplorerDataCredentialsResponse": { "type": "object", "properties": { "version": { "type": "integer" }, "access_key": { "type": "string" }, "secret_key": { "type": "string" }, "token": { "type": "string" }, "expiry_time": { "type": "string", "format": "date-time" }, "region_name": { "type": "string" } }, "required": [ "access_key", "expiry_time", "region_name", "secret_key", "token", "version" ] }, "GetUploadCredentialsResponse": { "type": "object", "properties": { "version": { "type": "integer" }, "access_key": { "type": "string" }, "secret_key": { "type": "string" }, "token": { "type": "string" }, "expiry_time": { "type": "string", "format": "date-time" } }, "required": [ "access_key", "expiry_time", "secret_key", "token", "version" ] }, "InputFormatEnum": { "enum": [ "cram", "fastq", "autodetect" ], "type": "string", "description": "* `cram` - cram\n* `fastq` - fastq\n* `autodetect` - autodetect" }, "Invitation": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "email": { "type": "string", "format": "email", "nullable": true, "maxLength": 254 }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/InvitationStatus" } ], "readOnly": true }, "expires": { "type": "string", "format": "date-time", "readOnly": true }, "role": { "type": "string", "maxLength": 255 } }, "required": [ "expires", "id", "last_status", "role" ] }, "InvitationActor": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string", "maxLength": 254 } }, "required": [ "id" ] }, "InvitationDetails": { "type": "object", "description": "Represent invitation for invitee.", "properties": { "token": { "type": "string", "readOnly": true }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/InvitationStatus" } ], "readOnly": true }, "expires": { "type": "string", "format": "date-time", "readOnly": true }, "organization": { "$ref": "#/components/schemas/InviteOrganization" }, "role": { "type": "string", "maxLength": 255 } }, "required": [ "expires", "last_status", "organization", "role", "token" ] }, "InvitationStatus": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "status": { "type": "string" }, "created": { "type": "string", "format": "date-time" }, "actor": { "allOf": [ { "$ref": "#/components/schemas/InvitationActor" } ], "readOnly": true } }, "required": [ "actor", "id", "status" ] }, "InviteOrganization": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string", "maxLength": 254 } }, "required": [ "id", "name" ] }, "JobStatusNested": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "status": { "type": "string" }, "note": { "type": "string" }, "created": { "type": "string", "format": "date-time" } }, "required": [ "id", "status" ] }, "MFAStatus": { "type": "object", "description": "Serializer just to use in swagger schema.", "properties": { "has_mfa_device": { "type": "boolean", "readOnly": true } }, "required": [ "has_mfa_device" ] }, "NullEnum": { "enum": [ null ] }, "OTPTokenObtainPair": { "type": "object", "description": "Mixin to add token validation to serializers.", "properties": { "otp_token": { "type": "string", "writeOnly": true }, "backup_token": { "type": "string", "writeOnly": true }, "email": { "type": "string", "writeOnly": true }, "password": { "type": "string", "writeOnly": true } }, "required": [ "email", "password" ] }, "Organization": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string", "maxLength": 254 }, "expire_uploads_period_days": { "type": "integer", "readOnly": true, "nullable": true }, "archive_period_days": { "type": "integer", "readOnly": true, "nullable": true }, "archive_restore_period_days": { "type": "integer", "readOnly": true, "nullable": true }, "roles": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/UserRoleObject" }, "readOnly": true, "description": "Roles in the organization." }, "uploads_enabled": { "type": "boolean", "readOnly": true, "description": "Designates whether the organization can access upload functionality." }, "delete_samples_enabled": { "type": "boolean", "readOnly": true, "description": "Designates whether the organization can delete samples." }, "project_sharing_enabled": { "type": "boolean", "readOnly": true, "description": "When enabled, allows organization to share projects with other organizations." }, "account_on_hold": { "type": "boolean", "readOnly": true, "description": "When enabled, limits ability of organization to manage data and displays UI warning to organization users that invoice is past due." }, "organization_type": { "allOf": [ { "$ref": "#/components/schemas/OrganizationTypeEnum" } ], "readOnly": true, "description": "Type of organization\n\n* `enterprise` - enterprise\n* `consumer` - consumer\n* `consumer_provider` - consumer provider" } }, "required": [ "account_on_hold", "archive_period_days", "archive_restore_period_days", "delete_samples_enabled", "expire_uploads_period_days", "id", "name", "organization_type", "project_sharing_enabled", "roles", "uploads_enabled" ] }, "OrganizationTypeEnum": { "enum": [ "enterprise", "consumer", "consumer_provider" ], "type": "string", "description": "* `enterprise` - enterprise\n* `consumer` - consumer\n* `consumer_provider` - consumer provider" }, "OrganizationUser": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "email": { "type": "string", "format": "email", "readOnly": true, "title": "Email address" }, "is_active": { "type": "boolean", "title": "Active", "description": "Designates whether this user should be treated as active. Unselect this instead of deleting accounts." }, "has_mfa_device": { "type": "boolean", "readOnly": true }, "name": { "type": "string", "maxLength": 254 }, "roles": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/UserRoleObject" }, "readOnly": true, "description": "Roles in the organization." }, "is_support": { "type": "boolean", "readOnly": true, "title": "Support", "description": "Designates whether this user should be treated as a support." } }, "required": [ "email", "has_mfa_device", "id", "is_support", "roles" ] }, "PaginatedAPIKeyList": { "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/APIKey" } } } }, "PaginatedBaseSpaceBioSampleList": { "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/BaseSpaceBioSample" } } } }, "PaginatedBaseSpaceProjectList": { "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/BaseSpaceProject" } } } }, "PaginatedBaseSpaceProjectsAutoimportList": { "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/BaseSpaceProjectsAutoimport" } } } }, "PaginatedBatchListList": { "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/BatchList" } } } }, "PaginatedBatchTypeList": { "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/BatchType" } } } }, "PaginatedEventTypeList": { "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/EventType" } } } }, "PaginatedExplorerCostReportRecordList": { "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/ExplorerCostReportRecord" } } } }, "PaginatedExplorerInstanceList": { "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/ExplorerInstance" } } } }, "PaginatedFileTypeList": { "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/FileType" } } } }, "PaginatedGenomicVariantList": { "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/GenomicVariant" } } } }, "PaginatedInvitationList": { "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/Invitation" } } } }, "PaginatedOrganizationUserList": { "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/OrganizationUser" } } } }, "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" } } } }, "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" } } } }, "PaginatedProjectList": { "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/Project" } } } }, "PaginatedProjectShareList": { "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/ProjectShare" } } } }, "PaginatedProjectSubscriptionList": { "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/ProjectSubscription" } } } }, "PaginatedProjectSubscriptionNotificationList": { "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/ProjectSubscriptionNotification" } } } }, "PaginatedProjectUsersList": { "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/ProjectUsers" } } } }, "PaginatedQualityControlList": { "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/QualityControl" } } } }, "PaginatedQualityControlTypeList": { "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/QualityControlType" } } } }, "PaginatedRoleList": { "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/Role" } } } }, "PaginatedS3URIAutoimportList": { "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/S3URIAutoimport" } } } }, "PaginatedSampleListList": { "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/SampleList" } } } }, "PaginatedSampleSheetList": { "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/SampleSheet" } } } }, "PaginatedSampleStatusListList": { "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/SampleStatusList" } } } }, "PaginatedSocialProviderList": { "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/SocialProvider" } } } }, "PaginatedTraitScoreList": { "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/TraitScore" } } } }, "PaginatedUploadList": { "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/Upload" } } } }, "PasswordResetConfirm": { "type": "object", "properties": { "uid": { "type": "string" }, "token": { "type": "string" }, "new_password": { "type": "string" } }, "required": [ "new_password", "token", "uid" ] }, "PatchedAPIKey": { "type": "object", "properties": { "revoked": { "type": "boolean", "description": "If the API key is revoked, clients cannot use it anymore. (This cannot be undone.)" }, "id": { "type": "string" }, "name": { "type": "string", "description": "A free-form name for the API key. Need not be unique. 50 characters max.", "maxLength": 50 }, "prefix": { "type": "string", "readOnly": true }, "expiry_date": { "type": "string", "format": "date", "readOnly": true, "nullable": true, "title": "Expires", "description": "Last day (UTC) to use the API key, once API key expires clients cannot use it anymore." }, "has_expired": { "type": "string", "readOnly": true }, "ip_range": { "nullable": true, "description": "List of trusted subnets in CIDR notation" } } }, "PatchedInvitationDetails": { "type": "object", "description": "Represent invitation for invitee.", "properties": { "token": { "type": "string", "readOnly": true }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/InvitationStatus" } ], "readOnly": true }, "expires": { "type": "string", "format": "date-time", "readOnly": true }, "organization": { "$ref": "#/components/schemas/InviteOrganization" }, "role": { "type": "string", "maxLength": 255 } } }, "PatchedOrganization": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string", "maxLength": 254 }, "expire_uploads_period_days": { "type": "integer", "readOnly": true, "nullable": true }, "archive_period_days": { "type": "integer", "readOnly": true, "nullable": true }, "archive_restore_period_days": { "type": "integer", "readOnly": true, "nullable": true }, "roles": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/UserRoleObject" }, "readOnly": true, "description": "Roles in the organization." }, "uploads_enabled": { "type": "boolean", "readOnly": true, "description": "Designates whether the organization can access upload functionality." }, "delete_samples_enabled": { "type": "boolean", "readOnly": true, "description": "Designates whether the organization can delete samples." }, "project_sharing_enabled": { "type": "boolean", "readOnly": true, "description": "When enabled, allows organization to share projects with other organizations." }, "account_on_hold": { "type": "boolean", "readOnly": true, "description": "When enabled, limits ability of organization to manage data and displays UI warning to organization users that invoice is past due." }, "organization_type": { "allOf": [ { "$ref": "#/components/schemas/OrganizationTypeEnum" } ], "readOnly": true, "description": "Type of organization\n\n* `enterprise` - enterprise\n* `consumer` - consumer\n* `consumer_provider` - consumer provider" } } }, "PatchedOrganizationUser": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "email": { "type": "string", "format": "email", "readOnly": true, "title": "Email address" }, "is_active": { "type": "boolean", "title": "Active", "description": "Designates whether this user should be treated as active. Unselect this instead of deleting accounts." }, "has_mfa_device": { "type": "boolean", "readOnly": true }, "name": { "type": "string", "maxLength": 254 }, "roles": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/UserRoleObject" }, "readOnly": true, "description": "Roles in the organization." }, "is_support": { "type": "boolean", "readOnly": true, "title": "Support", "description": "Designates whether this user should be treated as a support." } } }, "PatchedProject": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string", "maxLength": 254 }, "description": { "type": "string" }, "created": { "type": "string", "format": "date-time", "readOnly": true }, "modified": { "type": "string", "readOnly": true, "description": "Sample's last non-internal status that was added." }, "hidden": { "type": "boolean", "readOnly": true, "description": "Flag to hide the project." }, "organization": { "type": "string", "format": "uuid", "readOnly": true }, "organization_name": { "type": "string", "readOnly": true, "description": "Organization name" }, "sample_count": { "type": "string", "readOnly": true }, "hidden_sample_count": { "type": "string", "readOnly": true }, "pipeline_capabilities": { "type": "string", "format": "uuid", "description": "Versioned pipeline capabilities" }, "project_modifications": { "description": "Allows for pipeline modifications e.g. disabling QC" }, "roles": { "type": "string", "readOnly": true, "description": "Roles for the project in the organization." }, "webhook_url": { "type": "string", "readOnly": true, "description": "Legacy: this field is not used anymore, it is present in the response for the sake of backwards compatility with clients." }, "is_shared": { "type": "boolean", "description": "Return whether the project is shared with other organizations", "readOnly": true }, "locked": { "type": "boolean", "readOnly": true, "description": "Flag to set the project to locked mode." } } }, "PatchedUser": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "email": { "type": "string", "format": "email", "readOnly": true, "title": "Email address" }, "name": { "type": "string", "maxLength": 254 }, "uploads_enabled": { "type": "string", "readOnly": true }, "explorer_enabled": { "type": "string", "readOnly": true }, "created": { "type": "string", "format": "date-time", "readOnly": true }, "is_support": { "type": "boolean", "readOnly": true, "title": "Support", "description": "Designates whether this user should be treated as a support." } } }, "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\n\n* `Human Genomics` - human genomics\n* `Agriculture Animals & Plant Genomics` - animals plants\n* `Companion Animals` - companion animals\n* `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" ] }, "PipelineCategoryEnum": { "enum": [ "Human Genomics", "Agriculture Animals & Plant Genomics", "Companion Animals", "Other" ], "type": "string", "description": "* `Human Genomics` - human genomics\n* `Agriculture Animals & Plant Genomics` - animals plants\n* `Companion Animals` - companion animals\n* `Other` - other" }, "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" ] }, "PipelineList": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "version": { "type": "string", "maxLength": 100 } }, "required": [ "id", "version" ] }, "Project": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string", "maxLength": 254 }, "description": { "type": "string" }, "created": { "type": "string", "format": "date-time", "readOnly": true }, "modified": { "type": "string", "readOnly": true, "description": "Sample's last non-internal status that was added." }, "hidden": { "type": "boolean", "readOnly": true, "description": "Flag to hide the project." }, "organization": { "type": "string", "format": "uuid", "readOnly": true }, "organization_name": { "type": "string", "readOnly": true, "description": "Organization name" }, "sample_count": { "type": "string", "readOnly": true }, "hidden_sample_count": { "type": "string", "readOnly": true }, "pipeline_capabilities": { "type": "string", "format": "uuid", "description": "Versioned pipeline capabilities" }, "project_modifications": { "description": "Allows for pipeline modifications e.g. disabling QC" }, "roles": { "type": "string", "readOnly": true, "description": "Roles for the project in the organization." }, "webhook_url": { "type": "string", "readOnly": true, "description": "Legacy: this field is not used anymore, it is present in the response for the sake of backwards compatility with clients." }, "is_shared": { "type": "boolean", "description": "Return whether the project is shared with other organizations", "readOnly": true }, "locked": { "type": "boolean", "readOnly": true, "description": "Flag to set the project to locked mode." } }, "required": [ "created", "hidden", "hidden_sample_count", "id", "is_shared", "locked", "modified", "name", "organization", "organization_name", "pipeline_capabilities", "roles", "sample_count", "webhook_url" ] }, "ProjectCancelSamples": { "type": "object", "description": "Serializer for canceling samples submitted to a project.", "properties": { "sample_ids": { "type": "array", "items": { "type": "string", "format": "uuid" }, "maxItems": 20 } }, "required": [ "sample_ids" ] }, "ProjectDetail": { "type": "object", "description": "Only used when retrieving a single Project.", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string", "maxLength": 254 }, "description": { "type": "string" }, "created": { "type": "string", "format": "date-time" }, "modified": { "type": "string", "readOnly": true, "description": "Sample's last non-internal status that was added." }, "hidden": { "type": "boolean", "description": "Flag to hide the project." }, "organization": { "type": "string", "format": "uuid" }, "organization_name": { "type": "string", "readOnly": true, "description": "Organization name" }, "sample_count": { "type": "string", "readOnly": true }, "hidden_sample_count": { "type": "string", "readOnly": true }, "pipeline_capabilities": { "type": "string", "format": "uuid", "description": "Versioned pipeline capabilities" }, "project_modifications": { "description": "Allows for pipeline modifications e.g. disabling QC" }, "roles": { "type": "string", "readOnly": true, "description": "Roles for the project in the organization." }, "webhook_url": { "type": "string", "readOnly": true, "description": "Legacy: this field is not used anymore, it is present in the response for the sake of backwards compatility with clients." }, "is_shared": { "type": "boolean", "description": "Return whether the project is shared with other organizations", "readOnly": true }, "locked": { "type": "boolean", "description": "Flag to set the project to locked mode." }, "files": { "type": "array", "items": { "$ref": "#/components/schemas/ProjectFileNested" }, "readOnly": true, "description": "Project files" } }, "required": [ "files", "hidden_sample_count", "id", "is_shared", "modified", "name", "organization", "organization_name", "pipeline_capabilities", "roles", "sample_count", "webhook_url" ] }, "ProjectFileNested": { "type": "object", "description": "Used for all nested files except for files associated with sample.", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "s3_path": { "type": "string", "description": "S3 object key", "maxLength": 1024 }, "size": { "type": "integer", "maximum": 9223372036854775807, "minimum": -9223372036854775808, "format": "int64", "nullable": true, "description": "Size as reported by AWS in bytes" }, "download_url": { "type": "string", "format": "uri", "readOnly": true, "description": "Download url" }, "file_type": { "type": "string", "description": "File extension", "readOnly": true }, "checksum_sha256": { "type": "string", "description": "Object's sha256 Checksum", "maxLength": 64 }, "shadow_mode": { "type": "boolean", "nullable": true, "description": "If true, file is only accessible by organizations with shadow mode access enabled." } }, "required": [ "download_url", "file_type", "id" ] }, "ProjectHideUnhide": { "type": "object", "description": "Serializer for hiding or unhiding a list of projects", "properties": { "project_ids": { "type": "array", "items": { "type": "string", "format": "uuid" }, "description": "List of project IDs" } }, "required": [ "project_ids" ] }, "ProjectMergeVCFsJob": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "created": { "type": "string", "format": "date-time" }, "user": { "type": "string", "format": "uuid" }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/JobStatusNested" } ], "readOnly": true }, "up_to_date": { "type": "boolean", "readOnly": true, "default": false } }, "required": [ "id", "last_status", "up_to_date", "user" ] }, "ProjectQualityControlHistogram": { "type": "object", "properties": { "bin_edges": { "type": "array", "items": { "type": "number", "format": "double" } }, "hist": { "type": "array", "items": { "type": "number", "format": "double" } } }, "required": [ "bin_edges", "hist" ] }, "ProjectSamplesImport": { "type": "object", "properties": { "project_id": { "type": "string", "format": "uuid" }, "samples": { "type": "array", "items": { "$ref": "#/components/schemas/ExistingSample" } }, "metadata": {} }, "required": [ "project_id", "samples" ] }, "ProjectShare": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "project": { "type": "string", "format": "uuid" }, "shared_with_org": { "type": "string", "readOnly": true }, "shared_with_org_name": { "type": "string", "readOnly": true }, "shared_with_user_emails": { "type": "array", "items": { "type": "string", "format": "email" }, "writeOnly": true }, "shared_with_user_email": { "type": "string", "format": "email", "readOnly": true }, "shared_by_user_email": { "type": "string", "readOnly": true }, "share_level": { "$ref": "#/components/schemas/ShareLevelEnum" }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/ProjectShareStatus" } ], "readOnly": true } }, "required": [ "id", "last_status", "project", "share_level", "shared_by_user_email", "shared_with_org", "shared_with_org_name", "shared_with_user_email", "shared_with_user_emails" ] }, "ProjectShareExit": { "type": "object", "description": "Serializer for exiting multiple project shares", "properties": { "project_ids": { "type": "array", "items": { "type": "string", "format": "uuid" }, "description": "List of project IDs to exit" } }, "required": [ "project_ids" ] }, "ProjectShareRevoke": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid" } }, "required": [ "id" ] }, "ProjectShareStatus": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "status": { "$ref": "#/components/schemas/ProjectShareStatusStatusEnum" }, "note": { "type": "string", "nullable": true, "maxLength": 512 }, "created": { "type": "string", "format": "date-time" } }, "required": [ "id" ] }, "ProjectShareStatusStatusEnum": { "enum": [ "shared", "exited", "revoked" ], "type": "string", "description": "* `shared` - shared\n* `exited` - exited\n* `revoked` - revoked" }, "ProjectStats": { "type": "object", "properties": { "counts": { "$ref": "#/components/schemas/SampleCounts" }, "total_size": { "type": "integer" }, "failed_counts": { "type": "object", "additionalProperties": {} }, "failed_qc_counts": { "type": "object", "additionalProperties": {} } }, "required": [ "counts", "failed_counts", "failed_qc_counts", "total_size" ] }, "ProjectSubscription": { "type": "object", "description": "Subscription serializer where the scope is a project.", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string", "description": "User identifiable name, if left empty default name with a timestamp is used", "maxLength": 255 }, "project": { "type": "string", "format": "uuid", "readOnly": true }, "target": { "type": "string", "description": "URL if webhook, e-mail address if email", "maxLength": 255 }, "protocol": { "allOf": [ { "$ref": "#/components/schemas/ProtocolEnum" } ], "description": "How is the notification delivered\n\n* `webhook` - webhook\n* `email` - email", "readOnly": true }, "event_types": { "type": "array", "items": {}, "readOnly": true, "description": "event types which will be delivered for current subscription" }, "has_secret": { "type": "boolean", "description": "Is webhook secret set" } }, "required": [ "event_types", "has_secret", "id", "project", "protocol", "target" ] }, "ProjectSubscriptionNotification": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "created": { "type": "string", "format": "date-time" }, "response_status": { "type": "integer", "maximum": 2147483647, "minimum": -2147483648, "nullable": true }, "notification_event_type": { "type": "string", "readOnly": true, "description": "notification event type" } }, "required": [ "id", "notification_event_type" ] }, "ProjectSubscriptionNotificationDetail": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "created": { "type": "string", "format": "date-time" }, "response_status": { "type": "integer", "maximum": 2147483647, "minimum": -2147483648, "nullable": true }, "notification_event_type": { "type": "string", "readOnly": true, "description": "notification event type" }, "response_message": { "type": "string", "nullable": true }, "payload_url": { "type": "string", "readOnly": true, "description": "presigned s3 url for the payload content" } }, "required": [ "id", "notification_event_type", "payload_url" ] }, "ProjectUsers": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "email": { "type": "string", "format": "email", "readOnly": true, "title": "Email address" }, "is_active": { "type": "boolean", "title": "Active", "description": "Designates whether this user should be treated as active. Unselect this instead of deleting accounts." }, "name": { "type": "string", "maxLength": 254 }, "roles": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/UserRoleObject" }, "readOnly": true, "description": "Roles for the project in the organization." }, "is_support": { "type": "boolean", "readOnly": true, "title": "Support", "description": "Designates whether this user should be treated as a support." } }, "required": [ "email", "id", "is_support", "roles" ] }, "ProtocolEnum": { "enum": [ "webhook", "email" ], "type": "string", "description": "* `webhook` - webhook\n* `email` - email" }, "QualityControl": { "type": "object", "properties": { "quality_control_type": { "$ref": "#/components/schemas/QualityControlType" }, "quality_control": { "$ref": "#/components/schemas/QualityControlSelfNested" } }, "required": [ "quality_control", "quality_control_type" ] }, "QualityControlSelfNested": { "type": "object", "description": "Serializer used to nest QC data within other QC serializer.", "properties": { "value_expected": { "type": "number", "format": "double", "nullable": true }, "value_measured": { "type": "number", "format": "double", "nullable": true }, "value_string": { "type": "string", "maxLength": 128 }, "status": { "$ref": "#/components/schemas/QualityControlSelfNestedStatusEnum" } }, "required": [ "status" ] }, "QualityControlSelfNestedStatusEnum": { "enum": [ "succeeded", "failed", "skipped" ], "type": "string", "description": "* `succeeded` - succeeded\n* `failed` - failed\n* `skipped` - skipped" }, "QualityControlType": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 254 }, "type": { "type": "string" }, "name": { "type": "string", "readOnly": true }, "description_markdown": { "type": "string", "readOnly": true }, "display_type": { "type": "string", "readOnly": true }, "display_only_if_failed": { "type": "string", "readOnly": true } }, "required": [ "description_markdown", "display_only_if_failed", "display_type", "key", "name", "type" ] }, "RecipientAddressCountryCodeEnum": { "enum": [ "AF", "AX", "AL", "DZ", "AS", "AD", "AO", "AI", "AQ", "AG", "AR", "AM", "AW", "AU", "AT", "AZ", "BS", "BH", "BD", "BB", "BY", "BE", "BZ", "BJ", "BM", "BT", "BO", "BQ", "BA", "BW", "BV", "BR", "IO", "BN", "BG", "BF", "BI", "CV", "KH", "CM", "CA", "KY", "CF", "TD", "CL", "CN", "CX", "CC", "CO", "KM", "CG", "CD", "CK", "CR", "CI", "HR", "CU", "CW", "CY", "CZ", "DK", "DJ", "DM", "DO", "EC", "EG", "SV", "GQ", "ER", "EE", "SZ", "ET", "FK", "FO", "FJ", "FI", "FR", "GF", "PF", "TF", "GA", "GM", "GE", "DE", "GH", "GI", "GR", "GL", "GD", "GP", "GU", "GT", "GG", "GN", "GW", "GY", "HT", "HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR", "IQ", "IE", "IM", "IL", "IT", "JM", "JP", "JE", "JO", "KZ", "KE", "KI", "KW", "KG", "LA", "LV", "LB", "LS", "LR", "LY", "LI", "LT", "LU", "MO", "MG", "MW", "MY", "MV", "ML", "MT", "MH", "MQ", "MR", "MU", "YT", "MX", "FM", "MD", "MC", "MN", "ME", "MS", "MA", "MZ", "MM", "NA", "NR", "NP", "NL", "NC", "NZ", "NI", "NE", "NG", "NU", "NF", "KP", "MK", "MP", "NO", "OM", "PK", "PW", "PS", "PA", "PG", "PY", "PE", "PH", "PN", "PL", "PT", "PR", "QA", "RE", "RO", "RU", "RW", "BL", "SH", "KN", "LC", "MF", "PM", "VC", "WS", "SM", "ST", "SA", "SN", "RS", "SC", "SL", "SG", "SX", "SK", "SI", "SB", "SO", "ZA", "GS", "KR", "SS", "ES", "LK", "SD", "SR", "SJ", "SE", "CH", "SY", "TW", "TJ", "TZ", "TH", "TL", "TG", "TK", "TO", "TT", "TN", "TR", "TM", "TC", "TV", "UG", "UA", "AE", "GB", "UM", "US", "UY", "UZ", "VU", "VE", "VN", "VG", "VI", "WF", "EH", "YE", "ZM", "ZW" ], "type": "string", "description": "* `AF` - Afghanistan\n* `AX` - Åland Islands\n* `AL` - Albania\n* `DZ` - Algeria\n* `AS` - American Samoa\n* `AD` - Andorra\n* `AO` - Angola\n* `AI` - Anguilla\n* `AQ` - Antarctica\n* `AG` - Antigua and Barbuda\n* `AR` - Argentina\n* `AM` - Armenia\n* `AW` - Aruba\n* `AU` - Australia\n* `AT` - Austria\n* `AZ` - Azerbaijan\n* `BS` - Bahamas\n* `BH` - Bahrain\n* `BD` - Bangladesh\n* `BB` - Barbados\n* `BY` - Belarus\n* `BE` - Belgium\n* `BZ` - Belize\n* `BJ` - Benin\n* `BM` - Bermuda\n* `BT` - Bhutan\n* `BO` - Bolivia\n* `BQ` - Bonaire, Sint Eustatius and Saba\n* `BA` - Bosnia and Herzegovina\n* `BW` - Botswana\n* `BV` - Bouvet Island\n* `BR` - Brazil\n* `IO` - British Indian Ocean Territory\n* `BN` - Brunei\n* `BG` - Bulgaria\n* `BF` - Burkina Faso\n* `BI` - Burundi\n* `CV` - Cabo Verde\n* `KH` - Cambodia\n* `CM` - Cameroon\n* `CA` - Canada\n* `KY` - Cayman Islands\n* `CF` - Central African Republic\n* `TD` - Chad\n* `CL` - Chile\n* `CN` - China\n* `CX` - Christmas Island\n* `CC` - Cocos (Keeling) Islands\n* `CO` - Colombia\n* `KM` - Comoros\n* `CG` - Congo\n* `CD` - Congo (the Democratic Republic of the)\n* `CK` - Cook Islands\n* `CR` - Costa Rica\n* `CI` - Côte d'Ivoire\n* `HR` - Croatia\n* `CU` - Cuba\n* `CW` - Curaçao\n* `CY` - Cyprus\n* `CZ` - Czechia\n* `DK` - Denmark\n* `DJ` - Djibouti\n* `DM` - Dominica\n* `DO` - Dominican Republic\n* `EC` - Ecuador\n* `EG` - Egypt\n* `SV` - El Salvador\n* `GQ` - Equatorial Guinea\n* `ER` - Eritrea\n* `EE` - Estonia\n* `SZ` - Eswatini\n* `ET` - Ethiopia\n* `FK` - Falkland Islands (Malvinas)\n* `FO` - Faroe Islands\n* `FJ` - Fiji\n* `FI` - Finland\n* `FR` - France\n* `GF` - French Guiana\n* `PF` - French Polynesia\n* `TF` - French Southern Territories\n* `GA` - Gabon\n* `GM` - Gambia\n* `GE` - Georgia\n* `DE` - Germany\n* `GH` - Ghana\n* `GI` - Gibraltar\n* `GR` - Greece\n* `GL` - Greenland\n* `GD` - Grenada\n* `GP` - Guadeloupe\n* `GU` - Guam\n* `GT` - Guatemala\n* `GG` - Guernsey\n* `GN` - Guinea\n* `GW` - Guinea-Bissau\n* `GY` - Guyana\n* `HT` - Haiti\n* `HM` - Heard Island and McDonald Islands\n* `VA` - Holy See\n* `HN` - Honduras\n* `HK` - Hong Kong\n* `HU` - Hungary\n* `IS` - Iceland\n* `IN` - India\n* `ID` - Indonesia\n* `IR` - Iran\n* `IQ` - Iraq\n* `IE` - Ireland\n* `IM` - Isle of Man\n* `IL` - Israel\n* `IT` - Italy\n* `JM` - Jamaica\n* `JP` - Japan\n* `JE` - Jersey\n* `JO` - Jordan\n* `KZ` - Kazakhstan\n* `KE` - Kenya\n* `KI` - Kiribati\n* `KW` - Kuwait\n* `KG` - Kyrgyzstan\n* `LA` - Laos\n* `LV` - Latvia\n* `LB` - Lebanon\n* `LS` - Lesotho\n* `LR` - Liberia\n* `LY` - Libya\n* `LI` - Liechtenstein\n* `LT` - Lithuania\n* `LU` - Luxembourg\n* `MO` - Macao\n* `MG` - Madagascar\n* `MW` - Malawi\n* `MY` - Malaysia\n* `MV` - Maldives\n* `ML` - Mali\n* `MT` - Malta\n* `MH` - Marshall Islands\n* `MQ` - Martinique\n* `MR` - Mauritania\n* `MU` - Mauritius\n* `YT` - Mayotte\n* `MX` - Mexico\n* `FM` - Micronesia\n* `MD` - Moldova\n* `MC` - Monaco\n* `MN` - Mongolia\n* `ME` - Montenegro\n* `MS` - Montserrat\n* `MA` - Morocco\n* `MZ` - Mozambique\n* `MM` - Myanmar\n* `NA` - Namibia\n* `NR` - Nauru\n* `NP` - Nepal\n* `NL` - Netherlands\n* `NC` - New Caledonia\n* `NZ` - New Zealand\n* `NI` - Nicaragua\n* `NE` - Niger\n* `NG` - Nigeria\n* `NU` - Niue\n* `NF` - Norfolk Island\n* `KP` - North Korea\n* `MK` - North Macedonia\n* `MP` - Northern Mariana Islands\n* `NO` - Norway\n* `OM` - Oman\n* `PK` - Pakistan\n* `PW` - Palau\n* `PS` - Palestine, State of\n* `PA` - Panama\n* `PG` - Papua New Guinea\n* `PY` - Paraguay\n* `PE` - Peru\n* `PH` - Philippines\n* `PN` - Pitcairn\n* `PL` - Poland\n* `PT` - Portugal\n* `PR` - Puerto Rico\n* `QA` - Qatar\n* `RE` - Réunion\n* `RO` - Romania\n* `RU` - Russia\n* `RW` - Rwanda\n* `BL` - Saint Barthélemy\n* `SH` - Saint Helena, Ascension and Tristan da Cunha\n* `KN` - Saint Kitts and Nevis\n* `LC` - Saint Lucia\n* `MF` - Saint Martin (French part)\n* `PM` - Saint Pierre and Miquelon\n* `VC` - Saint Vincent and the Grenadines\n* `WS` - Samoa\n* `SM` - San Marino\n* `ST` - Sao Tome and Principe\n* `SA` - Saudi Arabia\n* `SN` - Senegal\n* `RS` - Serbia\n* `SC` - Seychelles\n* `SL` - Sierra Leone\n* `SG` - Singapore\n* `SX` - Sint Maarten (Dutch part)\n* `SK` - Slovakia\n* `SI` - Slovenia\n* `SB` - Solomon Islands\n* `SO` - Somalia\n* `ZA` - South Africa\n* `GS` - South Georgia and the South Sandwich Islands\n* `KR` - South Korea\n* `SS` - South Sudan\n* `ES` - Spain\n* `LK` - Sri Lanka\n* `SD` - Sudan\n* `SR` - Suriname\n* `SJ` - Svalbard and Jan Mayen\n* `SE` - Sweden\n* `CH` - Switzerland\n* `SY` - Syria\n* `TW` - Taiwan\n* `TJ` - Tajikistan\n* `TZ` - Tanzania\n* `TH` - Thailand\n* `TL` - Timor-Leste\n* `TG` - Togo\n* `TK` - Tokelau\n* `TO` - Tonga\n* `TT` - Trinidad and Tobago\n* `TN` - Tunisia\n* `TR` - Türkiye\n* `TM` - Turkmenistan\n* `TC` - Turks and Caicos Islands\n* `TV` - Tuvalu\n* `UG` - Uganda\n* `UA` - Ukraine\n* `AE` - United Arab Emirates\n* `GB` - United Kingdom\n* `UM` - United States Minor Outlying Islands\n* `US` - United States of America\n* `UY` - Uruguay\n* `UZ` - Uzbekistan\n* `VU` - Vanuatu\n* `VE` - Venezuela\n* `VN` - Vietnam\n* `VG` - Virgin Islands (British)\n* `VI` - Virgin Islands (U.S.)\n* `WF` - Wallis and Futuna\n* `EH` - Western Sahara\n* `YE` - Yemen\n* `ZM` - Zambia\n* `ZW` - Zimbabwe" }, "ReportTypeEnum": { "enum": [ "prs" ], "type": "string", "description": "* `prs` - prs" }, "Role": { "type": "object", "description": "Explicit representation of the roles from the Role enum.", "properties": { "name": { "type": "string", "description": "Name of the role." }, "permissions": { "type": "array", "items": {}, "description": "List of the permissions the role has." } }, "required": [ "name", "permissions" ] }, "S3ExternalID": { "type": "object", "description": "External ID for S3 imports serializer.", "properties": { "external_id": { "type": "string", "format": "uuid", "readOnly": true } }, "required": [ "external_id" ] }, "S3ObjectNested": { "type": "object", "properties": { "bucket": { "type": "string" }, "object_name": { "type": "string" } } }, "S3ProjectsAutoimportCreate": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "topic_arn": { "type": "string", "description": "SNS Topic where events of added samples will be received.", "maxLength": 768 } }, "required": [ "id" ] }, "S3Role": { "type": "object", "description": "Role ARN for S3 imports serializer.", "properties": { "role_arn": { "type": "string", "maxLength": 2048, "minLength": 20 } }, "required": [ "role_arn" ] }, "S3RoleElement": { "type": "object", "properties": { "role_arn": { "type": "string", "maxLength": 2048 }, "external_id": { "type": "string", "format": "uuid" }, "aws_region": { "type": "string", "readOnly": true }, "s3_bucket": { "type": "string", "maxLength": 64 }, "s3_prefix": { "type": "string", "maxLength": 512 } }, "required": [ "aws_region" ] }, "S3URIAutoimport": { "type": "object", "description": "S3 URI auto import serializer.", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "project_id": { "type": "string", "format": "uuid" }, "s3_uri": { "type": "string", "maxLength": 734 }, "metadata": { "nullable": true } }, "required": [ "id", "project_id", "s3_uri" ] }, "S3URIImport": { "type": "object", "description": "S3 URI import serializer.", "properties": { "s3_uri": { "type": "string", "maxLength": 734 }, "project_id": { "type": "string", "format": "uuid" }, "metadata": { "nullable": true }, "input_format": { "allOf": [ { "$ref": "#/components/schemas/InputFormatEnum" } ], "default": "autodetect" } }, "required": [ "project_id", "s3_uri" ] }, "SampleAncestry": { "type": "object", "properties": { "ancestry": { "$ref": "#/components/schemas/AncestrySelfNested" }, "metadata": { "$ref": "#/components/schemas/AncestryMetadata" } }, "required": [ "ancestry", "metadata" ] }, "SampleConsumerReportCreate": { "type": "object", "properties": { "report_type": { "allOf": [ { "$ref": "#/components/schemas/ReportTypeEnum" } ], "default": "prs", "description": "Type of report to generate\n\n* `prs` - prs" }, "expires_in": { "type": "integer", "maximum": 3600, "minimum": 60, "default": 600, "description": "Token expiration time in seconds. Note that this value is for the JWT delivered in the URL. Once the URL is accessed, a fixed duration session (15 minutes) is created that may outlive this token" } } }, "SampleConsumerReportResponse": { "type": "object", "properties": { "url": { "type": "string", "format": "uri", "description": "Presigned URL for accessing the consumer report" }, "expires_at": { "type": "string", "format": "date-time", "description": "When the presigned URL will expire" } }, "required": [ "expires_at", "url" ] }, "SampleCounts": { "type": "object", "properties": { "total_samples": { "type": "integer" }, "running_samples": { "type": "integer" }, "scheduled_samples": { "type": "integer" }, "succeeded_samples": { "type": "integer" }, "failed_samples": { "type": "integer" }, "kit_processing_samples": { "type": "integer", "description": "Only available for organizations that support kit delivery and processing." } }, "required": [ "failed_samples", "kit_processing_samples", "running_samples", "scheduled_samples", "succeeded_samples", "total_samples" ] }, "SampleDetails": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "project": { "type": "string", "format": "uuid" }, "run": { "type": "string", "format": "uuid", "nullable": true }, "created": { "type": "string", "format": "date-time" }, "modified": { "type": "string", "format": "date-time" }, "hidden": { "type": "boolean", "description": "Flag to hide the sample." }, "client_id": { "type": "string", "description": "Legacy: external_id", "maxLength": 250 }, "physical_id": { "type": "string", "description": "Legacy: external_id, external_barcode and sample_barcode", "maxLength": 250 }, "legacy_id": { "type": "string", "description": "Legacy: sample_id/member_id. Matching sample_ids from back_api app.", "maxLength": 250 }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/SampleStatusNested" } ], "readOnly": true }, "archive_last_status": { "allOf": [ { "$ref": "#/components/schemas/ArchiveSampleStatus" } ], "readOnly": true }, "files": { "type": "array", "items": { "$ref": "#/components/schemas/SampleFileNested" }, "readOnly": true, "description": "Sample files" } }, "required": [ "archive_last_status", "client_id", "files", "id", "last_status", "legacy_id", "modified", "physical_id", "project" ] }, "SampleFileNested": { "type": "object", "description": "Sets sample.id as filename in file download_url and skips displaying\ndownload url if file is not available.", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "s3_path": { "type": "string", "description": "S3 object key", "maxLength": 1024 }, "size": { "type": "integer", "maximum": 9223372036854775807, "minimum": -9223372036854775808, "format": "int64", "nullable": true, "description": "Size as reported by AWS in bytes" }, "download_url": { "type": "string", "format": "uri", "readOnly": true, "description": "Download url" }, "file_type": { "type": "string", "description": "File extension", "readOnly": true }, "checksum_sha256": { "type": "string", "description": "Object's sha256 Checksum", "maxLength": 64 }, "shadow_mode": { "type": "boolean", "nullable": true, "description": "If true, file is only accessible by organizations with shadow mode access enabled." } }, "required": [ "download_url", "file_type", "id" ] }, "SampleHideUnhide": { "type": "object", "description": "Serializer for hiding or unhidden a list of samples", "properties": { "sample_ids": { "type": "array", "items": { "type": "string", "format": "uuid" }, "description": "List of sample IDs" } }, "required": [ "sample_ids" ] }, "SampleKit": { "type": "object", "description": "Serializer for creating kit orders in consumer mode.", "properties": { "project_id": { "type": "string", "format": "uuid", "writeOnly": true }, "metadata": { "writeOnly": true, "nullable": true }, "sample_id": { "type": "string", "format": "uuid", "readOnly": true }, "recipient_address_name": { "type": "string", "maxLength": 255 }, "recipient_address_line1": { "type": "string", "maxLength": 50 }, "recipient_address_line2": { "type": "string", "maxLength": 50 }, "recipient_address_line3": { "type": "string", "maxLength": 50 }, "recipient_address_city": { "type": "string", "maxLength": 50 }, "recipient_address_postal_code": { "type": "string", "maxLength": 20 }, "recipient_address_state_region": { "type": "string", "maxLength": 50 }, "recipient_address_country_code": { "$ref": "#/components/schemas/RecipientAddressCountryCodeEnum" }, "recipient_phone": { "type": "string", "maxLength": 128 }, "recipient_email": { "type": "string", "format": "email", "maxLength": 254 }, "recipient_instructions": { "type": "string", "maxLength": 255 }, "test_mode": { "type": "boolean", "default": false, "description": "Set to true to create a test order that will not be shipped. Defaults to false." } }, "required": [ "project_id", "recipient_address_city", "recipient_address_country_code", "recipient_address_line1", "recipient_address_name", "recipient_address_postal_code", "recipient_address_state_region", "recipient_email", "recipient_phone", "sample_id" ] }, "SampleKitFormCreate": { "type": "object", "description": "Request body for ``POST /api/v2/sample-kit-form/``.\n\nMirrors ``ArrayDataUploadFormCreateSerializer`` but is project-scoped: the\npartner names the consumer project the kit's sample lands in. The end user\nsupplies the shipping address later, in the form itself.", "properties": { "project_id": { "type": "string", "format": "uuid", "description": "UUID of the consumer project to create the kit order in." }, "metadata": { "nullable": true, "description": "Free-form JSON object stored on the created sample." }, "test_mode": { "type": "boolean", "default": false, "description": "Set to true to create a test order that will not be shipped. Defaults to false." }, "redirect_on_success": { "type": "string", "format": "uri", "default": "", "description": "URL the end-user is redirected to after a successful order." }, "redirect_on_failure": { "type": "string", "format": "uri", "default": "", "description": "URL the end-user is redirected to after a failed order." }, "expires_in": { "type": "integer", "maximum": 3600, "minimum": 60, "default": 600, "description": "JWT lifetime in seconds (default 600, max 3600). Once the URL is opened, a 15-minute session is created that may outlive this token." } }, "required": [ "project_id" ] }, "SampleKitFormResponse": { "type": "object", "description": "Response body for ``POST /api/v2/sample-kit-form/``.", "properties": { "sample_id": { "type": "string", "format": "uuid", "description": "UUID of the placeholder ``samples.Sample`` created for the order." }, "url": { "type": "string", "format": "uri", "description": "Tokenized kit-order form URL for the end-user." }, "expires_at": { "type": "string", "format": "date-time", "description": "When the embedded JWT expires (ISO-8601)." } }, "required": [ "expires_at", "sample_id", "url" ] }, "SampleKitResponse": { "type": "object", "properties": { "sample_id": { "type": "string", "format": "uuid", "readOnly": true } }, "required": [ "sample_id" ] }, "SampleList": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "run": { "type": "string", "format": "uuid", "nullable": true }, "created": { "type": "string", "format": "date-time" }, "hidden": { "type": "boolean", "description": "Flag to hide the sample." }, "modified": { "type": "string", "format": "date-time" }, "client_id": { "type": "string", "description": "Legacy: external_id", "maxLength": 250 }, "physical_id": { "type": "string", "description": "Legacy: external_id, external_barcode and sample_barcode", "maxLength": 250 }, "legacy_id": { "type": "string", "description": "Legacy: sample_id/member_id. Matching sample_ids from back_api app.", "maxLength": 250 }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/SampleStatusNested" } ], "readOnly": true }, "archive_last_status": { "allOf": [ { "$ref": "#/components/schemas/ArchiveSampleStatus" } ], "readOnly": true }, "failed_qc": { "type": "string", "readOnly": true, "description": "Description of failed_qc status if present" } }, "required": [ "archive_last_status", "client_id", "failed_qc", "id", "last_status", "legacy_id", "modified", "physical_id" ] }, "SampleManifest": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "file_name": { "type": "string", "maxLength": 256 }, "file": { "type": "string", "readOnly": true }, "project": { "type": "string", "format": "uuid", "readOnly": true }, "created": { "type": "string", "format": "date-time" } }, "required": [ "file", "file_name", "id", "project" ] }, "SampleManifestUpload": { "type": "object", "properties": { "sample_manifest": { "type": "string", "format": "uri", "writeOnly": true } }, "required": [ "sample_manifest" ] }, "SampleMetadata": { "type": "object", "properties": { "metadata": { "nullable": true } } }, "SampleParentage": { "type": "object", "properties": { "parentage_tested": { "type": "string", "readOnly": true }, "parentage": { "type": "string", "readOnly": true } }, "required": [ "parentage", "parentage_tested" ] }, "SampleRestore": { "type": "object", "description": "Serializer for restoring samples from archived state.\n\nInitially samples are set as `restore_requested` and a celery task is kicked off\nthat starts restore process by kicking off an S3 batch job and marking samples\nas `restore_accepted`. `restore_started` is set when S3 notification is sent\non `s3:ObjectRestore:Post` event.\nSamples are marked as `restored` in a separate celery task once the info\ngets passed down by an `s3:ObjectRestore:Completed` S3 event.", "properties": { "sample_ids": { "type": "array", "items": { "type": "string", "format": "uuid" }, "writeOnly": true, "description": "List of sample IDs or if empty all archived samples will be used" }, "restore_group_id": { "type": "string", "format": "uuid", "readOnly": true }, "created": { "type": "string", "format": "date-time", "readOnly": true } }, "required": [ "created", "restore_group_id", "sample_ids" ] }, "SampleSheet": { "type": "object", "properties": { "client_id": { "type": "string", "maxLength": 250 }, "fastq": { "allOf": [ { "$ref": "#/components/schemas/UploadNestedList" } ], "readOnly": true, "description": "Uploaded fastq" } }, "required": [ "client_id", "fastq" ] }, "SampleSheetCreate": { "type": "object", "description": "Adds samples with their uploads to the project.\n\nSamples are being created in `create` method of this serializer.\nThey don't exist as objects in db before that.", "properties": { "client_id": { "type": "string" }, "fastq": { "$ref": "#/components/schemas/FastqsNestedCreate" }, "sample": { "type": "string", "format": "uuid", "readOnly": true } }, "required": [ "client_id", "fastq", "sample" ] }, "SampleStats": { "type": "object", "properties": { "total_size": { "type": "integer" } }, "required": [ "total_size" ] }, "SampleStatusList": { "type": "object", "properties": { "status": { "type": "string" }, "note": { "type": "string" }, "created": { "type": "string", "format": "date-time" } }, "required": [ "status" ] }, "SampleStatusNested": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "status": { "type": "string" }, "note": { "type": "string" }, "created": { "type": "string", "format": "date-time" } }, "required": [ "id", "status" ] }, "SendEmailReset": { "type": "object", "properties": { "email": { "type": "string", "format": "email" } }, "required": [ "email" ] }, "SetPassword": { "type": "object", "properties": { "new_password": { "type": "string" }, "current_password": { "type": "string" } }, "required": [ "current_password", "new_password" ] }, "SetUpMFA": { "type": "object", "properties": { "device_type": { "allOf": [ { "$ref": "#/components/schemas/DeviceTypeEnum" } ], "writeOnly": true }, "secret": { "type": "string", "readOnly": true, "description": "Authenticator secret, used when device_type is \"generator\"" }, "config_url": { "type": "string", "format": "uri", "readOnly": true, "description": "Url to build the QR code image, used when device_type is \"generator\"" } }, "required": [ "config_url", "device_type", "secret" ] }, "SetUsername": { "type": "object", "properties": { "current_password": { "type": "string" }, "new_email": { "type": "string", "format": "email", "title": "Email address", "maxLength": 254 } }, "required": [ "current_password", "new_email" ] }, "ShareLevelEnum": { "enum": [ "viewer", "analyst" ], "type": "string", "description": "* `viewer` - viewer\n* `analyst` - analyst" }, "SocialAccountNested": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "created": { "type": "string", "format": "date-time" }, "social_account_id": { "type": "string" }, "auth_time": { "type": "string", "format": "date-time", "nullable": true } }, "required": [ "auth_time", "id", "social_account_id" ] }, "SocialDisconnect": { "type": "object", "properties": { "provider": { "type": "string" } }, "required": [ "provider" ] }, "SocialProvider": { "type": "object", "properties": { "name": { "type": "string" }, "authorization_uri": { "type": "string", "format": "uri" }, "accounts": { "type": "array", "items": { "$ref": "#/components/schemas/SocialAccountNested" }, "readOnly": true, "description": "User connected social account" } }, "required": [ "accounts", "authorization_uri", "name" ] }, "SocialSignUp": { "type": "object", "properties": { "provider": { "type": "string" }, "code": { "type": "string", "description": "Authorization code" } }, "required": [ "code", "provider" ] }, "SourceEnum": { "enum": [ "cli", "cli url", "basespace", "s3", "array data" ], "type": "string", "description": "* `cli` - cli\n* `cli url` - cli url\n* `basespace` - basespace\n* `s3` - s3\n* `array data` - array data" }, "SubscriptionCreate": { "type": "object", "description": "Generic Subscription serializer without scope object.", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string" }, "target": { "type": "string", "description": "URL if webhook, e-mail address if email", "maxLength": 255 }, "event_types": { "type": "array", "items": { "$ref": "#/components/schemas/EventTypesEnum" } } }, "required": [ "event_types", "id", "target" ] }, "SubscriptionSecret": { "type": "object", "description": "Serialize secret of a subscription.\n\nUsed only for returning the secret, not reading it because the secret is\nsafely encypted in the db.", "properties": { "secret": { "type": "string", "maxLength": 32 } }, "required": [ "secret" ] }, "SubscriptionTest": { "type": "object", "description": "Used to accept requests to test subscriptions.", "properties": { "event_type": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/EventTypeEnum" }, { "$ref": "#/components/schemas/NullEnum" } ] }, "retry": { "type": "boolean", "default": false } } }, "TokenPair": { "type": "object", "properties": { "refresh": { "type": "string" }, "access": { "type": "string" } }, "required": [ "access", "refresh" ] }, "TokenRefresh": { "type": "object", "properties": { "access": { "type": "string", "readOnly": true }, "refresh": { "type": "string", "writeOnly": true } }, "required": [ "access", "refresh" ] }, "TokenVerify": { "type": "object", "properties": { "token": { "type": "string", "writeOnly": true } }, "required": [ "token" ] }, "Trait": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 254 } }, "required": [ "key" ] }, "TraitDistribution": { "type": "object", "properties": { "value": {}, "version": { "type": "string", "maxLength": 100 } }, "required": [ "version" ] }, "TraitScore": { "type": "object", "description": "Serializer trait score and associated trait metadata models.\n\nThis is not really optimal, since it pulls data from multiple parent tables\nfor objects.", "properties": { "trait_score": { "$ref": "#/components/schemas/TraitScoreSelfNested" }, "trait_distribution": { "$ref": "#/components/schemas/TraitDistribution" }, "trait": { "$ref": "#/components/schemas/Trait" }, "trait_unit": { "$ref": "#/components/schemas/TraitUnit" }, "risk": { "type": "string", "nullable": true, "description": "Return risk level for the trait score.\n\nReturns:\n Optional[str]: \"high_risk\" if the value is greater than or equal to the risk threshold,\n \"not_high_risk\" otherwise. If the risk threshold or percentile is None, return None.", "readOnly": true } }, "required": [ "risk", "trait", "trait_distribution", "trait_score", "trait_unit" ] }, "TraitScoreSelfNested": { "type": "object", "description": "Serializer used to nest trait score data within other trait score serializer.", "properties": { "value": { "type": "number", "format": "double" }, "percentile": { "type": "number", "format": "double", "nullable": true } }, "required": [ "value" ] }, "TraitUnit": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 254 } }, "required": [ "key" ] }, "Upload": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/UploadStatusNested" } ], "readOnly": true }, "file": { "$ref": "#/components/schemas/FileNested" }, "created": { "type": "string", "format": "date-time" }, "destination_path": { "type": "string", "description": "Destination path given by the user as an optional argument", "maxLength": 1024 }, "source": { "$ref": "#/components/schemas/SourceEnum" }, "user": { "type": "string", "format": "uuid", "nullable": true }, "organization": { "type": "string", "format": "uuid" } }, "required": [ "file", "id", "last_status", "organization", "source" ] }, "UploadNestedCreate": { "type": "object", "description": "Used for adding samples using sample sheet to a project.", "properties": { "upload": { "type": "string", "format": "uuid" } }, "required": [ "upload" ] }, "UploadNestedList": { "type": "object", "description": "Used in sample sheet creation.", "properties": { "upload": { "type": "string", "format": "uuid" }, "destination_path": { "type": "string", "description": "Destination path given by the user as an optional argument", "maxLength": 1024 }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/UploadStatusNested" } ], "readOnly": true }, "source_url": { "type": "string", "readOnly": true } }, "required": [ "last_status", "source_url", "upload" ] }, "UploadPostDataCreate": { "type": "object", "description": "Used for both normal post data and presigned post data.", "properties": { "destination_path": { "type": "string" } }, "required": [ "destination_path" ] }, "UploadPostDataResponse": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "destination_path": { "type": "string" }, "s3": { "allOf": [ { "$ref": "#/components/schemas/S3ObjectNested" } ], "readOnly": true }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/UploadStatusNested" } ], "readOnly": true } }, "required": [ "id", "last_status", "s3" ] }, "UploadPresignedPostDataResponse": { "type": "object", "properties": { "url": { "type": "string", "format": "uri" }, "fields": { "$ref": "#/components/schemas/AWSPresignedPostData" } }, "required": [ "fields", "url" ] }, "UploadStatusNested": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "status": { "type": "string" }, "note": { "type": "string" }, "created": { "type": "string", "format": "date-time" } }, "required": [ "id", "status" ] }, "UploadURLCreate": { "type": "object", "properties": { "destination_path": { "type": "string" }, "source_url": { "type": "string", "writeOnly": true } }, "required": [ "destination_path", "source_url" ] }, "UploadURLResponse": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "destination_path": { "type": "string" }, "s3": { "allOf": [ { "$ref": "#/components/schemas/S3ObjectNested" } ], "readOnly": true }, "last_status": { "allOf": [ { "$ref": "#/components/schemas/UploadStatusNested" } ], "readOnly": true }, "source": { "type": "string" }, "source_url": { "type": "string", "readOnly": true } }, "required": [ "id", "last_status", "s3", "source", "source_url" ] }, "User": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "email": { "type": "string", "format": "email", "readOnly": true, "title": "Email address" }, "name": { "type": "string", "maxLength": 254 }, "uploads_enabled": { "type": "string", "readOnly": true }, "explorer_enabled": { "type": "string", "readOnly": true }, "created": { "type": "string", "format": "date-time", "readOnly": true }, "is_support": { "type": "boolean", "readOnly": true, "title": "Support", "description": "Designates whether this user should be treated as a support." } }, "required": [ "created", "email", "explorer_enabled", "id", "is_support", "uploads_enabled" ] }, "UserCreate": { "type": "object", "description": "Adding name as an optional field during registration.", "properties": { "email": { "type": "string", "format": "email", "title": "Email address", "maxLength": 254 }, "id": { "type": "string", "format": "uuid", "readOnly": true }, "password": { "type": "string", "writeOnly": true }, "name": { "type": "string", "maxLength": 254 }, "invitation_token": { "type": "string", "maxLength": 32 }, "organization_name": { "type": "string", "maxLength": 254 } }, "required": [ "email", "id", "password" ] }, "UserRoleObject": { "type": "object", "properties": { "id": { "type": "string", "format": "uuid", "readOnly": true }, "name": { "type": "string" } }, "required": [ "id", "name" ] }, "UserRoleObjectCreate": { "type": "object", "properties": { "user": { "type": "string", "format": "uuid" }, "role": { "type": "string", "maxLength": 255 } }, "required": [ "role", "user" ] }, "ValidateSetUpMFA": { "type": "object", "description": "Mixin to add token validation to serializers.", "properties": { "token": { "type": "string", "writeOnly": true }, "backup_tokens": { "type": "array", "items": {}, "readOnly": true } }, "required": [ "backup_tokens", "token" ] } }, "securitySchemes": { "API key": { "type": "apiKey", "description": "Authorization header content formated as: `Api-Key `\nYou 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 `\nYou can obtain access token using `jwt-create` endpoint.", "in": "header", "name": "Authorization" } } }, "servers": [ { "url": "https://api.gencove.com" } ] }