{"metadata":{"image":[],"title":"","description":""},"api":{"url":"","auth":"required","settings":"","results":{"codes":[]},"params":[],"examples":{"codes":[]},"method":"post"},"next":{"description":"","pages":[]},"title":"Start a bulk DRS import job","type":"endpoint","slug":"start-a-bulk-drs-import-job","excerpt":"","body":"This API call lets you perform a bulk file import through [Data Repository Service (DRS)](doc:drs-api-overview).\n\nBefore you start using this API call, please read the following important notes:\n  * The maximum number of items to import per single API call is 100.\n  * The rate limit for this API call is 500 files in 5 minutes. If the limit is reached and there are items left to be imported, the import will continue automatically after the five-minute period expires.\n  * DRS bundles are not supported.\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"https://cgc-api.sbgenomics.com/v2/bulk/drs/imports/create\",\n      \"language\": \"text\",\n      \"name\": \"Path\"\n    }\n  ]\n}\n[/block]\n##Request\n\n###Example request\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"POST v2/bulk/drs/imports/create HTTP/1.1\\nHost: cgc-api.sbgenomics.com\\nX-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74\\nContent-Type: application/json\",\n      \"language\": \"http\",\n      \"name\": null\n    },\n    {\n      \"code\": \"curl --data ':::at:::import.json' -X POST -H \\\"X-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74\\\" -H \\\"Content-Type: application/json\\\" 'https://cgc-api.sbgenomics.com/v2/bulk/drs/imports/create HTTP/1.1'\",\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\": \"Key\",\n    \"h-1\": \"Description of value\",\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\": \"Use `application/json`\"\n  },\n  \"cols\": 2,\n  \"rows\": 2\n}\n[/block]\n###Request body\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Key\",\n    \"h-1\": \"Data type\",\n    \"h-2\": \"Description of value\",\n    \"0-0\": \"`items`\",\n    \"0-1\": \"Object\",\n    \"0-2\": \"Contains details about each of the import items. See the rows below for details.\",\n    \"1-0\": \"`drs_uri`\",\n    \"1-1\": \"String\",\n    \"2-0\": \"`parent`\",\n    \"3-0\": \"`project`\",\n    \"4-0\": \"`name`\",\n    \"5-0\": \"`metadata`\",\n    \"2-1\": \"String\",\n    \"3-1\": \"String\",\n    \"4-1\": \"String\",\n    \"5-1\": \"Object\",\n    \"1-2\": \"DRS URI of the file that you want to import, for example `drs://caninedc.org/01349ad3-6008-426f-a17c-88dcc00492fe`\",\n    \"2-2\": \"The ID of the target folder to which the item should be imported, for example `568cf5dce4b0307bc0462060`\\n\\nShould not be used together with project. If parent is used, the import will take place into the specified folder, within the project to which the folder belongs. If project is used, the items will be imported to the root of the project's files.\",\n    \"3-2\": \"The project in which to import the file. Should be specified in the username/project-slug format, for example `rfranklin/my-project`.\",\n    \"4-2\": \"The name of the file when imported to the destination. If the name is already in use in the project, the rule defined in `conflict_resolution` will apply.\",\n    \"5-2\": \"Consists of key-value pairs of metadata fields that should be assigned to the imported files. [Learn more](doc:modify-a-files-metadata)\",\n    \"6-0\": \"`conflict_resolution`\",\n    \"7-0\": \"`tags`\",\n    \"6-1\": \"String\",\n    \"7-1\": \"Array of strings\",\n    \"6-2\": \"Action to take if a file with the same name already exists in the project.\\nAvailable values: \\n  * `OVERWRITE`\\n  * `RENAME`\\n  * `SKIP`\\n\\nDefault: `SKIP`\",\n    \"7-2\": \"Tags that will help label and differentiate the imported files in the project. [Learn more](doc:tag-your-files)\"\n  },\n  \"cols\": 3,\n  \"rows\": 8\n}\n[/block]\n### Example request body\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n\\t\\\"conflict_resolution\\\": \\\"SKIP\\\",\\n\\t\\\"items\\\": [{\\n\\t\\t\\\"drs_uri\\\": \\\"drs://nci-crdc.datacommons.io/1805d249-bc24-4eed-b191-86d333d7563f\\\",\\n\\t\\t\\\"project\\\": \\\"rfranklin/drs-import/\\\",\\n\\t\\t\\\"name\\\": \\\"test-file.ext\\\",\\n\\t\\t\\\"metadata\\\": {\\n\\t\\t\\t\\\"study_id\\\": \\\"1\\\",\\n\\t\\t\\t\\\"cohort\\\": 4\\n\\t\\t}\\n\\t}],\\n\\t\\\"tags\\\": [\\n\\t\\t\\\"ICDC\\\"\\n\\t]\\n}\",\n      \"language\": \"json\"\n    }\n  ]\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](doc:api-status-codes). \n\n###Response body\n\nThe response object contains the link for downloading the file.\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Key\",\n    \"h-1\": \"Data type\",\n    \"h-2\": \"Description\",\n    \"0-0\": \"`href`\",\n    \"0-1\": \"String\",\n    \"0-2\": \"URI of this import job, for example `https://api.sbgenomics.com/v2/async/files/import/436242183587799`.\",\n    \"1-0\": \"`id`\",\n    \"2-0\": \"`result`\",\n    \"3-0\": \"`started_on`\",\n    \"4-0\": \"`finished_on`\",\n    \"5-0\": \"`state`\",\n    \"1-1\": \"String\",\n    \"3-1\": \"String\",\n    \"4-1\": \"String\",\n    \"5-1\": \"String\",\n    \"2-1\": \"Array\",\n    \"1-2\": \"ID of the import job.\",\n    \"2-2\": \"Files and errors for each of the items in the bulk import job.\",\n    \"3-2\": \"Date and time when the import job started.\",\n    \"4-2\": \"Date and time when the import job ended.\",\n    \"5-2\": \"Current state of the import job. Available values:\\n  * `SUBMITTED`\\n  * `RESOLVING`\\n  * `RUNNING`\\n  * `FINISHED`\"\n  },\n  \"cols\": 3,\n  \"rows\": 6\n}\n[/block]\n###Example response body\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n    \\\"href\\\": \\\"https://cgc-api.sbgenomics.com/v2/bulk/drs/imports/154606575995752448\\\",\\n    \\\"id\\\": \\\"154606575995752448\\\",\\n    \\\"result\\\": [],\\n    \\\"state\\\": \\\"SUBMITTED\\\"\\n}\",\n      \"language\": \"json\",\n      \"name\": \"Example response body\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]","updates":[],"order":999,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"61407f2d4ffdb0032d06335a","createdAt":"2021-09-14T10:53:33.589Z","user":"5767bc73bb15f40e00a28777","category":{"sync":{"isSync":false,"url":""},"pages":[],"title":"DRS API","slug":"drs-api","order":38,"from_sync":false,"reference":false,"_id":"5db6f03a6e187c006f667fa4","project":"55faf11ba62ba1170021a9a7","version":"55faf11ba62ba1170021a9aa","createdAt":"2019-10-28T13:42:18.754Z","__v":0},"version":{"version":"1.0","version_clean":"1.0.0","codename":"","is_stable":true,"is_beta":true,"is_hidden":false,"is_deprecated":false,"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","5c222bed4bc358002f21459a","5c22412594a2a5005cc9e919","5c41ae1c33592700190a291e","5c8a525e2ba7b2003f9b153c","5cbf14d58c79c700ef2b502e","5db6f03a6e187c006f667fa4","5f894c7d3b0894006477ca01"],"_id":"55faf11ba62ba1170021a9aa","releaseDate":"2015-09-17T16:58:03.490Z","createdAt":"2015-09-17T16:58:03.490Z","project":"55faf11ba62ba1170021a9a7","__v":47},"project":"55faf11ba62ba1170021a9a7","__v":0}

postStart a bulk DRS import job


This API call lets you perform a bulk file import through [Data Repository Service (DRS)](doc:drs-api-overview). Before you start using this API call, please read the following important notes: * The maximum number of items to import per single API call is 100. * The rate limit for this API call is 500 files in 5 minutes. If the limit is reached and there are items left to be imported, the import will continue automatically after the five-minute period expires. * DRS bundles are not supported. [block:code] { "codes": [ { "code": "https://cgc-api.sbgenomics.com/v2/bulk/drs/imports/create", "language": "text", "name": "Path" } ] } [/block] ##Request ###Example request [block:code] { "codes": [ { "code": "POST v2/bulk/drs/imports/create HTTP/1.1\nHost: cgc-api.sbgenomics.com\nX-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74\nContent-Type: application/json", "language": "http", "name": null }, { "code": "curl --data '@import.json' -X POST -H \"X-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74\" -H \"Content-Type: application/json\" 'https://cgc-api.sbgenomics.com/v2/bulk/drs/imports/create HTTP/1.1'", "language": "curl", "name": "cURL" } ], "sidebar": true } [/block] ###Header Fields [block:parameters] { "data": { "h-0": "Key", "h-1": "Description of value", "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": "Use `application/json`" }, "cols": 2, "rows": 2 } [/block] ###Request body [block:parameters] { "data": { "h-0": "Key", "h-1": "Data type", "h-2": "Description of value", "0-0": "`items`", "0-1": "Object", "0-2": "Contains details about each of the import items. See the rows below for details.", "1-0": "`drs_uri`", "1-1": "String", "2-0": "`parent`", "3-0": "`project`", "4-0": "`name`", "5-0": "`metadata`", "2-1": "String", "3-1": "String", "4-1": "String", "5-1": "Object", "1-2": "DRS URI of the file that you want to import, for example `drs://caninedc.org/01349ad3-6008-426f-a17c-88dcc00492fe`", "2-2": "The ID of the target folder to which the item should be imported, for example `568cf5dce4b0307bc0462060`\n\nShould not be used together with project. If parent is used, the import will take place into the specified folder, within the project to which the folder belongs. If project is used, the items will be imported to the root of the project's files.", "3-2": "The project in which to import the file. Should be specified in the username/project-slug format, for example `rfranklin/my-project`.", "4-2": "The name of the file when imported to the destination. If the name is already in use in the project, the rule defined in `conflict_resolution` will apply.", "5-2": "Consists of key-value pairs of metadata fields that should be assigned to the imported files. [Learn more](doc:modify-a-files-metadata)", "6-0": "`conflict_resolution`", "7-0": "`tags`", "6-1": "String", "7-1": "Array of strings", "6-2": "Action to take if a file with the same name already exists in the project.\nAvailable values: \n * `OVERWRITE`\n * `RENAME`\n * `SKIP`\n\nDefault: `SKIP`", "7-2": "Tags that will help label and differentiate the imported files in the project. [Learn more](doc:tag-your-files)" }, "cols": 3, "rows": 8 } [/block] ### Example request body [block:code] { "codes": [ { "code": "{\n\t\"conflict_resolution\": \"SKIP\",\n\t\"items\": [{\n\t\t\"drs_uri\": \"drs://nci-crdc.datacommons.io/1805d249-bc24-4eed-b191-86d333d7563f\",\n\t\t\"project\": \"rfranklin/drs-import/\",\n\t\t\"name\": \"test-file.ext\",\n\t\t\"metadata\": {\n\t\t\t\"study_id\": \"1\",\n\t\t\t\"cohort\": 4\n\t\t}\n\t}],\n\t\"tags\": [\n\t\t\"ICDC\"\n\t]\n}", "language": "json" } ] } [/block] ##Response [See a list of CGC-specific response codes that may be contained in the body of the response](doc:api-status-codes). ###Response body The response object contains the link for downloading the file. [block:parameters] { "data": { "h-0": "Key", "h-1": "Data type", "h-2": "Description", "0-0": "`href`", "0-1": "String", "0-2": "URI of this import job, for example `https://api.sbgenomics.com/v2/async/files/import/436242183587799`.", "1-0": "`id`", "2-0": "`result`", "3-0": "`started_on`", "4-0": "`finished_on`", "5-0": "`state`", "1-1": "String", "3-1": "String", "4-1": "String", "5-1": "String", "2-1": "Array", "1-2": "ID of the import job.", "2-2": "Files and errors for each of the items in the bulk import job.", "3-2": "Date and time when the import job started.", "4-2": "Date and time when the import job ended.", "5-2": "Current state of the import job. Available values:\n * `SUBMITTED`\n * `RESOLVING`\n * `RUNNING`\n * `FINISHED`" }, "cols": 3, "rows": 6 } [/block] ###Example response body [block:code] { "codes": [ { "code": "{\n \"href\": \"https://cgc-api.sbgenomics.com/v2/bulk/drs/imports/154606575995752448\",\n \"id\": \"154606575995752448\",\n \"result\": [],\n \"state\": \"SUBMITTED\"\n}", "language": "json", "name": "Example response body" } ], "sidebar": true } [/block]