{"_id":"5ad5d4b1af566800032a8111","project":"55faf11ba62ba1170021a9a7","version":{"_id":"55faf11ba62ba1170021a9aa","project":"55faf11ba62ba1170021a9a7","__v":40,"createdAt":"2015-09-17T16:58:03.490Z","releaseDate":"2015-09-17T16:58:03.490Z","categories":["55faf11ca62ba1170021a9ab","55faf8f4d0e22017005b8272","55faf91aa62ba1170021a9b5","55faf929a8a7770d00c2c0bd","55faf932a8a7770d00c2c0bf","55faf94b17b9d00d00969f47","55faf958d0e22017005b8274","55faf95fa8a7770d00c2c0c0","55faf96917b9d00d00969f48","55faf970a8a7770d00c2c0c1","55faf98c825d5f19001fa3a6","55faf99aa62ba1170021a9b8","55faf99fa62ba1170021a9b9","55faf9aa17b9d00d00969f49","55faf9b6a8a7770d00c2c0c3","55faf9bda62ba1170021a9ba","5604570090ee490d00440551","5637e8b2fbe1c50d008cb078","5649bb624fa1460d00780add","5671974d1b6b730d008b4823","5671979d60c8e70d006c9760","568e8eef70ca1f0d0035808e","56d0a2081ecc471500f1795e","56d4a0adde40c70b00823ea3","56d96b03dd90610b00270849","56fbb83d8f21c817002af880","573c811bee2b3b2200422be1","576bc92afb62dd20001cda85","5771811e27a5c20e00030dcd","5785191af3a10c0e009b75b0","57bdf84d5d48411900cd8dc0","57ff5c5dc135231700aed806","5804caf792398f0f00e77521","58458b4fba4f1c0f009692bb","586d3c287c6b5b2300c05055","58ef66d88646742f009a0216","58f5d52d7891630f00fe4e77","59a555bccdbd85001bfb1442","5a2a81f688574d001e9934f5","5b080c8d7833b20003ddbb6f"],"is_deprecated":false,"is_hidden":false,"is_beta":true,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"category":{"_id":"5ad5d392af566800032a8107","project":"55faf11ba62ba1170021a9a7","version":"55faf11ba62ba1170021a9aa","__v":0,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2018-04-17T10:59:30.322Z","from_sync":false,"order":32,"slug":"bulk-actions","title":"BULK API ACTIONS"},"user":"566590c83889610d0008a253","githubsync":"","__v":0,"parentDoc":null,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2018-04-17T11:04:17.563Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","examples":{"codes":[]},"method":"post","auth":"required","params":[],"url":""},"isReference":false,"order":1,"body":"This call lets you perform a bulk import of files from your volume (either Amazon Web Services or Google Cloud Storage) into your project on CGC. One call can contain up to 100 items.\n\nIf successful, an alias will be created on CGC. Aliases appear as files on CGC and can be copied, executed, and modified as such. They refer back to the respective file on the given volume.\n\nLearn more about using the Volumes API for [Amazon S3](doc:aws-cloud-storage-tutorial) and for [Google Cloud Storage](doc:google-cloud-storage-tutorial).\n\n##Request\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"https://cgc-api.sbgenomics.com/v2/bulk/storage/imports/create\",\n      \"language\": \"text\",\n      \"name\": \"Path\"\n    }\n  ]\n}\n[/block]\n###Example request\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"POST v2/bulk/storage/imports/create\\nHost: cgc-api.sbgenomics.com\\nX-SBG-Auth-Token: 3259c50e1ac5426ea8f1373259740f75\",\n      \"language\": \"http\",\n      \"name\": null\n    },\n    {\n      \"code\": \"curl -X POST \\\\\\n  https://cgc-api.sbgenomics.com/v2/bulk/storage/imports/create \\\\\\n  -H 'Content-Type: application/json' \\\\\\n  -H 'X-SBG-Auth-Token: b04aa2a2e98348a1a3a75ca677ea7fd7' \\\\\\n  -d '{\\n    \\\"items\\\": [\\n        {\\n              \\\"source\\\": {\\n                \\\"volume\\\": \\\"rfranklin/input\\\",\\n                \\\"location\\\": \\\"example_human_Illumina.pe_1.fastq\\\"\\n              },\\n              \\\"destination\\\": {\\n                \\\"project\\\": \\\"rfranklin/my_project\\\",\\n                \\\"name\\\": \\\"example_human_Illumina.pe_1.fastq\\\"\\n              },\\n              \\\"overwrite\\\": true\\n        },{\\n              \\\"source\\\": {\\n                \\\"volume\\\": \\\"rfranklin/input\\\",\\n                \\\"location\\\": \\\"example_human_Illumina.pe_2.fastq\\\"\\n              },\\n              \\\"destination\\\": {\\n                \\\"project\\\": \\\"rfranklin/my_project\\\",\\n                \\\"name\\\": \\\"example_human_Illumina.pe_2.fastq\\\"\\n              },\\n              \\\"overwrite\\\": true\\n        }\\n    ]\\n}\\n'\",\n      \"language\": \"curl\",\n      \"name\": \"cURL\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n###Header Fields\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Name\",\n    \"h-1\": \"Description\",\n    \"0-0\": \" X-SBG-Auth-Token\\n*required* \",\n    \"0-1\": \"Your CGC [authentication token](doc:get-your-authentication-token).\",\n    \"h-2\": \"\",\n    \"1-0\": \" Content-Type\\n*required* \",\n    \"1-1\": \"`application/json`\"\n  },\n  \"cols\": 2,\n  \"rows\": 2\n}\n[/block]\n###Request body\n\nFor every item in the request body, you should enter the list of key-value pairs described in the table below. One API call can contain up to 100 items.\n\n\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Key\",\n    \"h-1\": \"Data type\",\n    \"h-2\": \"Description\",\n    \"0-0\": \"`source`\\n*required*\",\n    \"0-1\": \"object\",\n    \"0-2\": \"This object should describe the source from which the file should be imported.\",\n    \"1-0\": \"`volume`\\n*required*\",\n    \"1-1\": \"string\",\n    \"1-2\": \"Volume ID from which to import the file.\",\n    \"2-0\": \"`location`\\n*required*\",\n    \"2-1\": \"string\",\n    \"2-2\": \"Volume-specific location pointing to the file to import. This location should be recognizable to the underlying cloud service as a valid key or path to the file.\\n\\nPlease note that if this volume was configured with a prefix parameter when it was created, the `prefix` will be prepended to location before attempting to locate the file on the volume.\",\n    \"3-0\": \"`destination`\\n*required*\",\n    \"3-1\": \"object\",\n    \"3-2\": \"This object should describe CGC destination for the imported file.\",\n    \"4-0\": \"`project`\\n*required*\",\n    \"4-1\": \"string\",\n    \"4-2\": \"The project in which to create the alias.\",\n    \"5-0\": \"`name`\",\n    \"5-1\": \"string\",\n    \"5-2\": \"The name of the alias to create. This name should be unique to the project. If the name is already in use in the project, you should use the `overwrite` parameter in this call to force any file with that name to be deleted before the alias is created.\\n\\nIf name is omitted, the alias name will default to the last segment of the complete location (including the `prefix`) on the volume. Segments are considered to be separated with forward slashes ('/').\"\n  },\n  \"cols\": 3,\n  \"rows\": 6\n}\n[/block]\n###Example request body\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n    \\\"items\\\": [\\n        {\\n              \\\"source\\\": {\\n                \\\"volume\\\": \\\"rfranklin/input\\\",\\n                \\\"location\\\": \\\"example_human_Illumina.pe_1.fastq\\\"\\n              },\\n              \\\"destination\\\": {\\n                \\\"project\\\": \\\"rfranklin/my_project\\\",\\n                \\\"name\\\": \\\"example_human_Illumina.pe_1.fastq\\\"\\n              },\\n              \\\"overwrite\\\": true\\n        },{\\n              \\\"source\\\": {\\n                \\\"volume\\\": \\\"rfranklin/input\\\",\\n                \\\"location\\\": \\\"example_human_Illumina.pe_2.fastq\\\"\\n              },\\n              \\\"destination\\\": {\\n                \\\"project\\\": \\\"rfranklin/my_project\\\",\\n                \\\"name\\\": \\\"example_human_Illumina.pe_2.fastq\\\"\\n              },\\n              \\\"overwrite\\\": true\\n        }\\n    ]\\n}\",\n      \"language\": \"json\",\n      \"name\": null\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n##Response\n\n[See a list of CGC-specific response codes that may be contained in the body of the response.](ref:api-status-codes).\n\n###Response body\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Key\",\n    \"h-1\": \"Data type\",\n    \"h-2\": \"Description\",\n    \"0-0\": \"`id`\",\n    \"0-1\": \"string\",\n    \"0-2\": \"ID of this import job.\",\n    \"1-0\": \"`state`\",\n    \"1-1\": \"string\",\n    \"1-2\": \"The state of this import job. Possible values are:\\n\\n  * `PENDING`: the import is queued;\\n  * `RUNNING`: the import is running;\\n  * `COMPLETED`: the import has completed successfully;\\n  * `FAILED`: the import has failed.\",\n    \"2-0\": \"`source`\",\n    \"2-1\": \"object\",\n    \"2-2\": \"Import source, as passed when this job was started by the call to [start an import job](doc:start-an-import-job-v2).\",\n    \"3-0\": \"`destination`\",\n    \"3-1\": \"object\",\n    \"3-2\": \"Import destination, as passed when this job was [start an import job](doc:start-an-import-job-v2).\",\n    \"4-0\": \"`result`\",\n    \"4-1\": \"object\",\n    \"4-2\": \"File object that was imported.\",\n    \"5-0\": \"`error`\",\n    \"5-1\": \"object\",\n    \"5-2\": \"In case of error in the import job, standard API error is returned here.\"\n  },\n  \"cols\": 3,\n  \"rows\": 6\n}\n[/block]\n###Example response body\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n    \\\"items\\\": [\\n        {\\n            \\\"resource\\\": {\\n                \\\"href\\\": \\\"https://cgc-api.sbgenomics.com/v2/storage/imports/wMtBbkNxJ7ldKtkZ3hC3eisVr3DtQcT3\\\",\\n                \\\"id\\\": \\\"wMtBbkNxJ7ldKtkZ3hC3eisVr3DtQcT3\\\",\\n                \\\"state\\\": \\\"PENDING\\\",\\n                \\\"overwrite\\\": true,\\n                \\\"source\\\": {\\n                    \\\"volume\\\": \\\"rfranklin/input\\\",\\n                    \\\"location\\\": \\\"example_human_Illumina.pe_1.fastq\\\"\\n                },\\n                \\\"destination\\\": {\\n                    \\\"project\\\": \\\"rfranklin/my_project\\\",\\n                    \\\"name\\\": \\\"example_human_Illumina.pe_1.fastq\\\"\\n                }\\n            }\\n        },\\n        {\\n            \\\"resource\\\": {\\n                \\\"href\\\": \\\"https://cgc-api.sbgenomics.com/v2/storage/imports/0vXu4HQe7WqdTZg9iRcetk0UePQZ2I9I\\\",\\n                \\\"id\\\": \\\"0vXu4HQe7WqdTZg9iRcetk0UePQZ2I9I\\\",\\n                \\\"state\\\": \\\"PENDING\\\",\\n                \\\"overwrite\\\": true,\\n                \\\"source\\\": {\\n                    \\\"volume\\\": \\\"rfranklin/input\\\",\\n                    \\\"location\\\": \\\"example_human_Illumina.pe_2.fastq\\\"\\n                },\\n                \\\"destination\\\": {\\n                    \\\"project\\\": \\\"rfranklin/my_project\\\",\\n                    \\\"name\\\": \\\"example_human_Illumina.pe_2.fastq\\\"\\n                }\\n            }\\n        }\\n    ]\\n}\",\n      \"language\": \"json\",\n      \"name\": \"Example response body\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]","excerpt":"","slug":"start-a-bulk-import-job","type":"endpoint","title":"Start a bulk import job"}

postStart a bulk import job


This call lets you perform a bulk import of files from your volume (either Amazon Web Services or Google Cloud Storage) into your project on CGC. One call can contain up to 100 items. If successful, an alias will be created on CGC. Aliases appear as files on CGC and can be copied, executed, and modified as such. They refer back to the respective file on the given volume. Learn more about using the Volumes API for [Amazon S3](doc:aws-cloud-storage-tutorial) and for [Google Cloud Storage](doc:google-cloud-storage-tutorial). ##Request [block:code] { "codes": [ { "code": "https://cgc-api.sbgenomics.com/v2/bulk/storage/imports/create", "language": "text", "name": "Path" } ] } [/block] ###Example request [block:code] { "codes": [ { "code": "POST v2/bulk/storage/imports/create\nHost: cgc-api.sbgenomics.com\nX-SBG-Auth-Token: 3259c50e1ac5426ea8f1373259740f75", "language": "http", "name": null }, { "code": "curl -X POST \\\n https://cgc-api.sbgenomics.com/v2/bulk/storage/imports/create \\\n -H 'Content-Type: application/json' \\\n -H 'X-SBG-Auth-Token: b04aa2a2e98348a1a3a75ca677ea7fd7' \\\n -d '{\n \"items\": [\n {\n \"source\": {\n \"volume\": \"rfranklin/input\",\n \"location\": \"example_human_Illumina.pe_1.fastq\"\n },\n \"destination\": {\n \"project\": \"rfranklin/my_project\",\n \"name\": \"example_human_Illumina.pe_1.fastq\"\n },\n \"overwrite\": true\n },{\n \"source\": {\n \"volume\": \"rfranklin/input\",\n \"location\": \"example_human_Illumina.pe_2.fastq\"\n },\n \"destination\": {\n \"project\": \"rfranklin/my_project\",\n \"name\": \"example_human_Illumina.pe_2.fastq\"\n },\n \"overwrite\": true\n }\n ]\n}\n'", "language": "curl", "name": "cURL" } ], "sidebar": true } [/block] ###Header Fields [block:parameters] { "data": { "h-0": "Name", "h-1": "Description", "0-0": " X-SBG-Auth-Token\n*required* ", "0-1": "Your CGC [authentication token](doc:get-your-authentication-token).", "h-2": "", "1-0": " Content-Type\n*required* ", "1-1": "`application/json`" }, "cols": 2, "rows": 2 } [/block] ###Request body For every item in the request body, you should enter the list of key-value pairs described in the table below. One API call can contain up to 100 items. [block:parameters] { "data": { "h-0": "Key", "h-1": "Data type", "h-2": "Description", "0-0": "`source`\n*required*", "0-1": "object", "0-2": "This object should describe the source from which the file should be imported.", "1-0": "`volume`\n*required*", "1-1": "string", "1-2": "Volume ID from which to import the file.", "2-0": "`location`\n*required*", "2-1": "string", "2-2": "Volume-specific location pointing to the file to import. This location should be recognizable to the underlying cloud service as a valid key or path to the file.\n\nPlease note that if this volume was configured with a prefix parameter when it was created, the `prefix` will be prepended to location before attempting to locate the file on the volume.", "3-0": "`destination`\n*required*", "3-1": "object", "3-2": "This object should describe CGC destination for the imported file.", "4-0": "`project`\n*required*", "4-1": "string", "4-2": "The project in which to create the alias.", "5-0": "`name`", "5-1": "string", "5-2": "The name of the alias to create. This name should be unique to the project. If the name is already in use in the project, you should use the `overwrite` parameter in this call to force any file with that name to be deleted before the alias is created.\n\nIf name is omitted, the alias name will default to the last segment of the complete location (including the `prefix`) on the volume. Segments are considered to be separated with forward slashes ('/')." }, "cols": 3, "rows": 6 } [/block] ###Example request body [block:code] { "codes": [ { "code": "{\n \"items\": [\n {\n \"source\": {\n \"volume\": \"rfranklin/input\",\n \"location\": \"example_human_Illumina.pe_1.fastq\"\n },\n \"destination\": {\n \"project\": \"rfranklin/my_project\",\n \"name\": \"example_human_Illumina.pe_1.fastq\"\n },\n \"overwrite\": true\n },{\n \"source\": {\n \"volume\": \"rfranklin/input\",\n \"location\": \"example_human_Illumina.pe_2.fastq\"\n },\n \"destination\": {\n \"project\": \"rfranklin/my_project\",\n \"name\": \"example_human_Illumina.pe_2.fastq\"\n },\n \"overwrite\": true\n }\n ]\n}", "language": "json", "name": null } ], "sidebar": true } [/block] ##Response [See a list of CGC-specific response codes that may be contained in the body of the response.](ref:api-status-codes). ###Response body [block:parameters] { "data": { "h-0": "Key", "h-1": "Data type", "h-2": "Description", "0-0": "`id`", "0-1": "string", "0-2": "ID of this import job.", "1-0": "`state`", "1-1": "string", "1-2": "The state of this import job. Possible values are:\n\n * `PENDING`: the import is queued;\n * `RUNNING`: the import is running;\n * `COMPLETED`: the import has completed successfully;\n * `FAILED`: the import has failed.", "2-0": "`source`", "2-1": "object", "2-2": "Import source, as passed when this job was started by the call to [start an import job](doc:start-an-import-job-v2).", "3-0": "`destination`", "3-1": "object", "3-2": "Import destination, as passed when this job was [start an import job](doc:start-an-import-job-v2).", "4-0": "`result`", "4-1": "object", "4-2": "File object that was imported.", "5-0": "`error`", "5-1": "object", "5-2": "In case of error in the import job, standard API error is returned here." }, "cols": 3, "rows": 6 } [/block] ###Example response body [block:code] { "codes": [ { "code": "{\n \"items\": [\n {\n \"resource\": {\n \"href\": \"https://cgc-api.sbgenomics.com/v2/storage/imports/wMtBbkNxJ7ldKtkZ3hC3eisVr3DtQcT3\",\n \"id\": \"wMtBbkNxJ7ldKtkZ3hC3eisVr3DtQcT3\",\n \"state\": \"PENDING\",\n \"overwrite\": true,\n \"source\": {\n \"volume\": \"rfranklin/input\",\n \"location\": \"example_human_Illumina.pe_1.fastq\"\n },\n \"destination\": {\n \"project\": \"rfranklin/my_project\",\n \"name\": \"example_human_Illumina.pe_1.fastq\"\n }\n }\n },\n {\n \"resource\": {\n \"href\": \"https://cgc-api.sbgenomics.com/v2/storage/imports/0vXu4HQe7WqdTZg9iRcetk0UePQZ2I9I\",\n \"id\": \"0vXu4HQe7WqdTZg9iRcetk0UePQZ2I9I\",\n \"state\": \"PENDING\",\n \"overwrite\": true,\n \"source\": {\n \"volume\": \"rfranklin/input\",\n \"location\": \"example_human_Illumina.pe_2.fastq\"\n },\n \"destination\": {\n \"project\": \"rfranklin/my_project\",\n \"name\": \"example_human_Illumina.pe_2.fastq\"\n }\n }\n }\n ]\n}", "language": "json", "name": "Example response body" } ], "sidebar": true } [/block]