Genome File Job API

After uploading your DNA file, you can create a genome file job using this API to initiate file processing and monitor its processing status through various stages.

Workflows

Workflows for genome file upload and processing are described below. The regular flow is relevant for most users, while the 'raw reads' flow is only used for large file pairs containing raw sequencing data.

Workflow for regular DNA files

  1. Upload your DNA file using the /genome-file/upload-file/ endpoint. It would return a file_id in the response. Accepted DNA file formats, are listed here.
  2. Create a genome file job using the POST /genome-file-job/ endpoint with the file_id from step 1
  3. Poll the job status using the GET /genome-file-job/{id}/ endpoint until the status is file_processed or an error status. Files may take hours to process, so you can alternatively configure webhooks or time the API calls accordingly.

Workflow for 'Raw Reads' DNA File Pairs

  1. Upload 1st of your raw sequencing file using the /genome-file/upload-file/ endpoint
  2. Upload 2nd of your raw sequencing file using the /genome-file/upload-file/ endpoint
  3. Create a genome file job by using the POST /genome-file-job/ endpoint, populating the file_id body param with the file_id returned from step 1, and reverse_file_id body param with the file_id from step 2 (or vice versa; order does not matter for our pipeline).
  4. Poll the job status using the GET /genome-file-job/{id}/ endpoint until the status is file_processed or an error status. Files may take hours to process, so you can alternatively configure webhooks or time the API calls accordingly.

Constraints

  • For steps 1 and 2, the size limit for each file is 5 GB.
  • Each file should be compressed with gzip or bgzip (e.g. .fastq.gz).

Endpoints

Create a Genome File Job

Use the /genome-file-job/ endpoint to create genome file jobs.

Request Body Parameters:

  • profile_id (UUID): The ID of the profile to associate with the genome file
  • file_id (UUID): The ID of the uploaded DNA file (returned from the /genome-file/upload-file/ endpoint)

Request Example:

{
  "profile_id": "550e8400-e29b-41d4-a716-446655440002",
  "file_id": "550e8400-e29b-41d4-a716-446655440003"
}

Get a Genome File Job

Use the retrieve(/genome-file-job/{id}/) and list(/genome-file-job/) endpoints to get the genome files jobs.

Webhooks

You can set up webhooks to receive notifications when the status of a genome file job changes. Configure webhooks using the /user-webhook/ endpoint and selecting genome_file_job as the job_type. For more details about webhooks, refer to the Webhooks Guide.