{"_id":"5c8a692236f7b400ced8c812","project":"5773dcfc255e820e00e1cd4d","version":{"_id":"5773dcfc255e820e00e1cd50","__v":26,"project":"5773dcfc255e820e00e1cd4d","createdAt":"2016-06-29T14:36:44.812Z","releaseDate":"2016-06-29T14:36:44.812Z","categories":["5773dcfc255e820e00e1cd51","5773df36904b0c0e00ef05ff","577baf92451b1e0e006075ac","577bb183b7ee4a0e007c4e8d","577ce77a1cf3cb0e0048e5ea","577d11865fd4de0e00cc3dab","578e62792c3c790e00937597","578f4fd98335ca0e006d5c84","578f5e5c3d04570e00976ebb","57bc35f7531e000e0075d118","57f801b3760f3a1700219ebb","5804d55d1642890f00803623","581c8d55c0dc651900aa9350","589dcf8ba8c63b3b00c3704f","594cebadd8a2f7001b0b53b2","59a562f46a5d8c00238e309a","5a2aa096e25025003c582b58","5a2e79566c771d003ca0acd4","5a3a5166142db90026f24007","5a3a52b5bcc254001c4bf152","5a3a574a2be213002675c6d2","5a3a66bb2be213002675cb73","5a3a6e4854faf60030b63159","5c8a68278e883901341de571","5cb9971e57bf020024523c7b","5cbf1683e2a36d01d5012ecd"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"category":{"_id":"5c8a68278e883901341de571","project":"5773dcfc255e820e00e1cd4d","version":"5773dcfc255e820e00e1cd50","__v":0,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2019-03-14T14:41:43.757Z","from_sync":false,"order":16,"slug":"async-bulk-actions","title":"ASYNC BULK ACTIONS"},"user":"566590c83889610d0008a253","__v":0,"parentDoc":null,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2019-03-14T14:45:54.161Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":1,"body":"This call lets you perform a bulk copy operation of files and folders. Any underlying folder structure will be preserved. You can copy:\n\n* to a folder within the same project\n* to another project\n* to a folder in another project\n[block:api-header]\n{\n  \"type\": \"basiac\",\n  \"title\": \"Request\"\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"https://cavatica-api.sbgenomics.com/v2/async/file/copy\\n\",\n      \"language\": \"text\",\n      \"name\": \"Path\"\n    }\n  ]\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Example request\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"POST /v2/async/files/copy\\nHost: cavatica-api.sbgenomics.com\\nX-SBG-Auth-Token: 3259c50e1ac5336ea8f1273259740f75\",\n      \"language\": \"http\",\n      \"name\": null\n    },\n    {\n      \"code\": \"curl -X POST \\\\\\n  https://cavatica-api.sbgenomics.com/v2/async/files/copy \\\\\\n  -H 'Content-Type: application/json' \\\\\\n  -H 'X-SBG-Auth-Token: d32c2976ffc04d0eb90c6c4fb2c0a465' \\\\\\n  -H 'af055f57c30a3e2d99c1fd42101f13da: ' \\\\\\n  -d '{\\n  \\\"items\\\": [\\n    {\\n      \\\"file\\\": \\\"5c6d3f30e4b038563238932f\\\",\\n      \\\"parent\\\": \\\"5c6d3f30e4b038533235932f\\\",\\n      \\\"project\\\": \\\"\\\",\\n      \\\"name\\\": \\\"my-new-file\\\"\\n    },\\n    {\\n      \\\"file\\\": \\\"5c6d3f30e4b038563238932b\\\",\\n      \\\"parent\\\": \\\"\\\",\\n      \\\"project\\\": \\\"rfranklin/destination-project\\\",\\n      \\\"name\\\": \\\"\\\"\\n    },\\n    {\\n      \\\"file\\\": \\\"5c6d3f30e4b0385632389331\\\",\\n      \\\"parent\\\": \\\"\\\",\\n      \\\"project\\\": \\\"rfranklin/destination-project\\\",\\n      \\\"name\\\": \\\"\\\"\\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 Cavatica [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[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Key\",\n    \"h-1\": \"Data type\",\n    \"h-2\": \"Description\",\n    \"0-0\": \"`file`\\nrequired\",\n    \"0-1\": \"object\",\n    \"0-2\": \"The ID of the file or folder you are copying. Use the API call for listing all files to obtain the ID.\",\n    \"1-0\": \"`parent`\",\n    \"1-1\": \"string\",\n    \"1-2\": \"The ID of the folder you are copying files to. The `parent` and `project` keys are mutually exclusive. If you are copying files to a folder, omit the `project` key.\",\n    \"2-0\": \"`project`\",\n    \"2-1\": \"string\",\n    \"2-2\": \"The name of the project you are copying files to. The `project` and `parent` keys are mutually exclusive. if you are copying files to the root folder of your project, omit the `parent` key.\",\n    \"3-0\": \"`name`\",\n    \"3-1\": \"string\",\n    \"3-2\": \"Enter the new name for the file if you want to rename it in the destination folder.\"\n  },\n  \"cols\": 3,\n  \"rows\": 4\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n  \\\"items\\\": [\\n    {\\n      \\\"file\\\": \\\"5c6d3f30e4b038563238932f\\\",\\n      \\\"parent\\\": \\\"5c6d3f30e4b038533235932f\\\",\\n      \\\"project\\\": \\\"\\\",\\n      \\\"name\\\": \\\"my-new-file\\\"\\n    },\\n    {\\n      \\\"file\\\": \\\"5c6d3f30e4b038563238932b\\\",\\n      \\\"parent\\\": \\\"\\\",\\n      \\\"project\\\": \\\"rfranklin/destination-project\\\",\\n      \\\"name\\\": \\\"\\\"\\n    },\\n    {\\n      \\\"file\\\": \\\"5c6d3f30e4b0385632389331\\\",\\n      \\\"parent\\\": \\\"\\\",\\n      \\\"project\\\": \\\"rfranklin/destination-project\\\",\\n      \\\"name\\\": \\\"\\\"\\n    }\\n  ]\\n}\",\n      \"language\": \"json\",\n      \"name\": \"Example request body\"\n    }\n  ]\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Response\"\n}\n[/block]\n[See a list of Cavatica-specific response codes that may be contained in the body of the response.](ref:api-status-codes).\n[block:api-header]\n{\n  \"title\": \"Response body\"\n}\n[/block]\n\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Key\",\n    \"h-1\": \"Data type of value\",\n    \"h-2\": \"Description of value\",\n    \"0-0\": \"`type`\",\n    \"0-1\": \"string\",\n    \"0-2\": \"The type of job, which is `COPY` in the case of copying files.\",\n    \"1-0\": \"`total_files`\",\n    \"1-1\": \"string\",\n    \"1-2\": \"The total number of files which will be processed. You can obtain this information using the call for getting the details of a copy job.\",\n    \"2-0\": \"`state`\",\n    \"2-1\": \"string\",\n    \"2-2\": \"The state is `SUBMITTED` at the time of making this call.\",\n    \"3-0\": \"`result`\",\n    \"3-1\": \"string\",\n    \"3-2\": \"This key will show the result if available at the time the call is made. Use the details of a copy job to see more information.\",\n    \"4-0\": \"`id`\",\n    \"4-1\": \"string\",\n    \"4-2\": \"ID of this copy job.\",\n    \"5-0\": \"`failed_files`\",\n    \"5-1\": \"string\",\n    \"5-2\": \"The number of failed files if that information is available at the time of the call. You can get details of a copy job with a dedicated call.\",\n    \"6-0\": \"`completed_files`\",\n    \"6-1\": \"string\",\n    \"6-2\": \"The number of completed files if that information is available at the time of the call. You can get details of a copy job with a dedicated call.\"\n  },\n  \"cols\": 3,\n  \"rows\": 7\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Example response body\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n    \\\"href\\\": \\\"https://cavatica-api.sbgenomics.com/v2/async/files/copy/70714077692891136\\\",\\n    \\\"id\\\": \\\"70714077692891136\\\",\\n    \\\"result\\\": [],\\n    \\\"type\\\": \\\"COPY\\\",\\n    \\\"state\\\": \\\"SUBMITTED\\\",\\n    \\\"failed_files\\\": 0,\\n    \\\"completed_files\\\": 0,\\n    \\\"total_files\\\": 0\\n}\",\n      \"language\": \"json\",\n      \"name\": \"Example response body\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]","excerpt":"v2/async/file/copy","slug":"copy-multiple-files","type":"basic","title":"Copy multiple files"}

Copy multiple files

v2/async/file/copy

This call lets you perform a bulk copy operation of files and folders. Any underlying folder structure will be preserved. You can copy: * to a folder within the same project * to another project * to a folder in another project [block:api-header] { "type": "basiac", "title": "Request" } [/block] [block:code] { "codes": [ { "code": "https://cavatica-api.sbgenomics.com/v2/async/file/copy\n", "language": "text", "name": "Path" } ] } [/block] [block:api-header] { "type": "basic", "title": "Example request", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "POST /v2/async/files/copy\nHost: cavatica-api.sbgenomics.com\nX-SBG-Auth-Token: 3259c50e1ac5336ea8f1273259740f75", "language": "http", "name": null }, { "code": "curl -X POST \\\n https://cavatica-api.sbgenomics.com/v2/async/files/copy \\\n -H 'Content-Type: application/json' \\\n -H 'X-SBG-Auth-Token: d32c2976ffc04d0eb90c6c4fb2c0a465' \\\n -H 'af055f57c30a3e2d99c1fd42101f13da: ' \\\n -d '{\n \"items\": [\n {\n \"file\": \"5c6d3f30e4b038563238932f\",\n \"parent\": \"5c6d3f30e4b038533235932f\",\n \"project\": \"\",\n \"name\": \"my-new-file\"\n },\n {\n \"file\": \"5c6d3f30e4b038563238932b\",\n \"parent\": \"\",\n \"project\": \"rfranklin/destination-project\",\n \"name\": \"\"\n },\n {\n \"file\": \"5c6d3f30e4b0385632389331\",\n \"parent\": \"\",\n \"project\": \"rfranklin/destination-project\",\n \"name\": \"\"\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 Cavatica [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 [block:parameters] { "data": { "h-0": "Key", "h-1": "Data type", "h-2": "Description", "0-0": "`file`\nrequired", "0-1": "object", "0-2": "The ID of the file or folder you are copying. Use the API call for listing all files to obtain the ID.", "1-0": "`parent`", "1-1": "string", "1-2": "The ID of the folder you are copying files to. The `parent` and `project` keys are mutually exclusive. If you are copying files to a folder, omit the `project` key.", "2-0": "`project`", "2-1": "string", "2-2": "The name of the project you are copying files to. The `project` and `parent` keys are mutually exclusive. if you are copying files to the root folder of your project, omit the `parent` key.", "3-0": "`name`", "3-1": "string", "3-2": "Enter the new name for the file if you want to rename it in the destination folder." }, "cols": 3, "rows": 4 } [/block] [block:code] { "codes": [ { "code": "{\n \"items\": [\n {\n \"file\": \"5c6d3f30e4b038563238932f\",\n \"parent\": \"5c6d3f30e4b038533235932f\",\n \"project\": \"\",\n \"name\": \"my-new-file\"\n },\n {\n \"file\": \"5c6d3f30e4b038563238932b\",\n \"parent\": \"\",\n \"project\": \"rfranklin/destination-project\",\n \"name\": \"\"\n },\n {\n \"file\": \"5c6d3f30e4b0385632389331\",\n \"parent\": \"\",\n \"project\": \"rfranklin/destination-project\",\n \"name\": \"\"\n }\n ]\n}", "language": "json", "name": "Example request body" } ] } [/block] [block:api-header] { "type": "basic", "title": "Response" } [/block] [See a list of Cavatica-specific response codes that may be contained in the body of the response.](ref:api-status-codes). [block:api-header] { "title": "Response body" } [/block] [block:parameters] { "data": { "h-0": "Key", "h-1": "Data type of value", "h-2": "Description of value", "0-0": "`type`", "0-1": "string", "0-2": "The type of job, which is `COPY` in the case of copying files.", "1-0": "`total_files`", "1-1": "string", "1-2": "The total number of files which will be processed. You can obtain this information using the call for getting the details of a copy job.", "2-0": "`state`", "2-1": "string", "2-2": "The state is `SUBMITTED` at the time of making this call.", "3-0": "`result`", "3-1": "string", "3-2": "This key will show the result if available at the time the call is made. Use the details of a copy job to see more information.", "4-0": "`id`", "4-1": "string", "4-2": "ID of this copy job.", "5-0": "`failed_files`", "5-1": "string", "5-2": "The number of failed files if that information is available at the time of the call. You can get details of a copy job with a dedicated call.", "6-0": "`completed_files`", "6-1": "string", "6-2": "The number of completed files if that information is available at the time of the call. You can get details of a copy job with a dedicated call." }, "cols": 3, "rows": 7 } [/block] [block:api-header] { "type": "basic", "title": "Example response body", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "{\n \"href\": \"https://cavatica-api.sbgenomics.com/v2/async/files/copy/70714077692891136\",\n \"id\": \"70714077692891136\",\n \"result\": [],\n \"type\": \"COPY\",\n \"state\": \"SUBMITTED\",\n \"failed_files\": 0,\n \"completed_files\": 0,\n \"total_files\": 0\n}", "language": "json", "name": "Example response body" } ], "sidebar": true } [/block]