Start an export job

This call lets you queue a job to export a file from a project on CAVATICA into a volume.

Essentially, the call writes to your cloud storage bucket on Amazon Web Services via the volume.

📘

Prerequisite

The file selected for export must not be a public file or an alias. Aliases are objects stored in your cloud storage bucket which have been made available on CAVATICA.

The volume you are exporting to must be configured for read-write access. To do this, set the access_mode parameter to RW when creating or
modifying a volume.

Please note that export from CAVATICA to Google Cloud Storage volumes is currently not supported.

If this call is successful, the original project file will become an alias to the newly exported object on the volume. The source file will be deleted from the Platform and, if no more copies of this file exist, it will no longer count towards your total storage price on the Platform.

Learn more about using the Volumes API for Amazon S3 and for Google Cloud Storage.

https://cavatica-api.sbgenomics.com/v2/storage/exports

Request

Example request

POST /v2/storage/exports HTTP/1.1
Host: cavatica-api.sbgenomics.com
X-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74
Content-Type: application/json
curl --data '@export.json' -X POST -H "X-SBG-Auth-Token: ce7ae5ab85e946599298e88a3430fba0" -H "Content-Type: application/json" 'https://cavatica-api.sbgenomics.com/v2/storage/exports'

Header Fields

KeyDescription of value
X-SBG-Auth-Token
required
Your CAVATICA authentication token.
Content-type
required
application/json

Request body

In the body, you should enter a list of key-value pairs. The keys, and the values they take, are described in the following table.

KeyData type of valueDescription of value
source
required
ObjectThis object should describe the source from which the file should be exported.
file
required
StringThe ID of the file for export.
destination
required
ObjectThis object should describe the destination to which the file will be exported.
volume
required
StringThe ID of the volume to which the file will be exported.
location
required
StringVolume-specific location to which the file will be exported. This location should be recognizable to the underlying cloud service as a valid key or path to a new file.

Please note that if this volume has been configured with a prefix parameter, the value of prefix will be prepended to location before attempting to create the file on the volume.
propertiesObjectService-specific properties of the export.

These values override the defaults from the volume.
sse_algorithmStringS3 server-side encryption to use when exporting to this bucket.

Supported values:
AES256 (SSE-S3 encryption);
null (no server-side encryption).

default: AES256
aws_canned_aclStringS3 canned ACL to apply on the object on during export.

Supported values:
any one of S3 canned ACLs;
null (do not apply canned ACLs).

default: null
overwriteBooleanIf true and a file exists in the given location on the volume (respecting volume prefix if given), the API will attempt to delete the existing file on the volume before exporting.

default: false

Example request body

{
  	"source": {
  		"file": "567890abc8a5639cc6722063"
  	},
  	"destination": {
  		"volume": "rfranklin/output",
  		"location": "output.vcf"
  	}
  }

Response

See a list of CAVATICA-specific response codes that may be contained in the body of the response.

Response body

The response object contains information about the status of the export job. The information is structured using the following key-value pairs:

KeyData type of valueDescription of value
idStringID of this export job
stateStringThe state of this export job. Possible values are:
PENDING: the export is queued
RUNNING: the export is running
COMPLETED: the export has completed successfully
FAILED: the export has failed
sourceObjectExport source, as passed when this job was started by the call to Start an export job.
destinationObjectExport destination, as passed when this job was started by the call to Start an export job.
resultObjectFile object that was exported.
errorObjectIn case of error in the export job, standard API error is returned here.

Example response body

{
  "href": "https://cavatica-api.sbgenomics.com/v2/storage/exports/yrand0mrmxx4Zjr1u781HJaBGOhx02sd",
  "id": "yrand0mrmxx4Zjr1u781HJaBGOhx02sd",
  "state": "PENDING",
  "source": {
    "file": "567890abc8a5639cc6722063"
  },
  "destination": {
    "volume": "rfranklin/output",
    "location": "output.vcf"
  },
  "started_on": "2016-06-15T19:17:39Z",
  "properties": {
    "sse_algorithm": "AES256",
    "aws_canned_acl": "public-read"
  },
  "overwrite": false
}
Language