{"_id":"5804d7f816161c0f0077dfa4","category":{"_id":"5773df36904b0c0e00ef05ff","version":"5773dcfc255e820e00e1cd50","__v":0,"project":"5773dcfc255e820e00e1cd4d","sync":{"url":"","isSync":false},"reference":false,"createdAt":"2016-06-29T14:46:14.277Z","from_sync":false,"order":12,"slug":"api","title":"Cavatica API"},"project":"5773dcfc255e820e00e1cd4d","__v":1,"version":{"_id":"5773dcfc255e820e00e1cd50","__v":27,"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","5dc15666a4f788004c5fd7d7"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"githubsync":"","parentDoc":null,"user":"566590c83889610d0008a253","metadata":{"title":"","description":"","image":[]},"updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-10-17T13:54:00.271Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","examples":{"codes":[]},"method":"post","auth":"required","params":[],"url":""},"isReference":false,"order":43,"body":"This call creates a new folder.\n\nEvery project on Cavatica is represented by a root folder which contains all the files associated with a particular project. You can create nesting folders and subfolders within this root folder by using this API request.\n\nOnce you've created a folder, you can [copy](doc:copy-a-file-between-folders) or [move](move-a-file-between-folders) files between folders to populate your newly created folder.\n\nTo list the contents of the main project folder, first make the API request to [get project details](doc:get-project-details) which will return the ID of the main folder (key: `root_folder`). Next, use the [list folder contents](doc:list-folder-contents) call and specify this ID.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"https://cavatica-api.sbgenomics.com/v2/files\",\n      \"language\": \"text\",\n      \"name\": \"Path\"\n    }\n  ]\n}\n[/block]\n##Request\n###Example request\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"POST /v2/files HTTP/1.1\\nHost: cavatica-api.sbgenomics.com\\nX-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74\\nContent-Type: application/json\\n\",\n      \"language\": \"http\",\n      \"name\": null\n    },\n    {\n      \"code\": \"curl -X POST -H \\\"X-SBG-Auth-Token: c2e05946fb9a494ab5c19c72a94cb4ac\\\" -H \\\"Content-Type: application/json\\\" -d '{\\n    \\\"name\\\" : \\\"my new folder\\\",\\n    \\\"type\\\" : \\\"folder\\\",\\n    \\\"parent\\\": \\\"57fb98c51c94d72f08ba0544\\\"\\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\nIn the request body, you should enter the following list of key-value pairs:\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Name\",\n    \"h-1\": \"Data type\",\n    \"h-2\": \"Description\",\n    \"0-0\": \"`name`\\n_required_\",\n    \"0-1\": \"String\",\n    \"0-2\": \"The name of the folder. It shouldn't begin with \\\"__\\\".\",\n    \"1-0\": \"`type`\\n_required_\",\n    \"1-1\": \"Enum\",\n    \"1-2\": \"`folder`\",\n    \"2-0\": \"`parent`\",\n    \"2-1\": \"String\",\n    \"2-2\": \"Specifies the ID of the parent folder for the new folder.\\nYou should either specify a parent folder or the project name (see [List folder contents](doc:list-folder-contents) for instructions on how to find the folder ID).\",\n    \"3-0\": \"project\",\n    \"3-1\": \"String\",\n    \"3-2\": \"Project ID (`username/project_name`). You should either specify a project name or the parent folder ID.\"\n  },\n  \"cols\": 3,\n  \"rows\": 4\n}\n[/block]\n###Example request body\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n  \\\"name\\\": \\\"my new folder\\\", \\n  \\\"parent\\\": \\\"57fba0611c94d72f08ba0550\\\",\\n  \\\"type\\\": \\\"FOLDER\\\"\\n}\",\n      \"language\": \"json\"\n    }\n  ]\n}\n[/block]\n##Response\n\n[See a list of Cavatica-specific response codes that may be contained in the body of the response.](doc:api-status-codes)\n\n###Example response body\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n  \\\"href\\\": \\\"https://cavatica-api.sbgenomics.com/v2/files/57fba0611c94d72f08ba0550\\\",\\n  \\\"id\\\": \\\"5800b406e4b07ecb1445de83\\\",\\n  \\\"name\\\": \\\"my new folder\\\",\\n  \\\"parent\\\": \\\"57fba0611c94d72f08ba0550\\\",\\n  \\\"type\\\": \\\"FOLDER\\\",\\n  \\\"created_on\\\": \\\"2016-10-10T14:06:25Z\\\",\\n  \\\"modified_on\\\": \\\"2016-10-10T14:06:25Z\\\"\\n}\",\n      \"language\": \"json\",\n      \"name\": \"Example response body\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]","excerpt":"/files","slug":"create-a-folder","type":"endpoint","title":"Create a folder"}

postCreate a folder

/files

This call creates a new folder. Every project on Cavatica is represented by a root folder which contains all the files associated with a particular project. You can create nesting folders and subfolders within this root folder by using this API request. Once you've created a folder, you can [copy](doc:copy-a-file-between-folders) or [move](move-a-file-between-folders) files between folders to populate your newly created folder. To list the contents of the main project folder, first make the API request to [get project details](doc:get-project-details) which will return the ID of the main folder (key: `root_folder`). Next, use the [list folder contents](doc:list-folder-contents) call and specify this ID. [block:code] { "codes": [ { "code": "https://cavatica-api.sbgenomics.com/v2/files", "language": "text", "name": "Path" } ] } [/block] ##Request ###Example request [block:code] { "codes": [ { "code": "POST /v2/files HTTP/1.1\nHost: cavatica-api.sbgenomics.com\nX-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74\nContent-Type: application/json\n", "language": "http", "name": null }, { "code": "curl -X POST -H \"X-SBG-Auth-Token: c2e05946fb9a494ab5c19c72a94cb4ac\" -H \"Content-Type: application/json\" -d '{\n \"name\" : \"my new folder\",\n \"type\" : \"folder\",\n \"parent\": \"57fb98c51c94d72f08ba0544\"\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 In the request body, you should enter the following list of key-value pairs: [block:parameters] { "data": { "h-0": "Name", "h-1": "Data type", "h-2": "Description", "0-0": "`name`\n_required_", "0-1": "String", "0-2": "The name of the folder. It shouldn't begin with \"__\".", "1-0": "`type`\n_required_", "1-1": "Enum", "1-2": "`folder`", "2-0": "`parent`", "2-1": "String", "2-2": "Specifies the ID of the parent folder for the new folder.\nYou should either specify a parent folder or the project name (see [List folder contents](doc:list-folder-contents) for instructions on how to find the folder ID).", "3-0": "project", "3-1": "String", "3-2": "Project ID (`username/project_name`). You should either specify a project name or the parent folder ID." }, "cols": 3, "rows": 4 } [/block] ###Example request body [block:code] { "codes": [ { "code": "{\n \"name\": \"my new folder\", \n \"parent\": \"57fba0611c94d72f08ba0550\",\n \"type\": \"FOLDER\"\n}", "language": "json" } ] } [/block] ##Response [See a list of Cavatica-specific response codes that may be contained in the body of the response.](doc:api-status-codes) ###Example response body [block:code] { "codes": [ { "code": "{\n \"href\": \"https://cavatica-api.sbgenomics.com/v2/files/57fba0611c94d72f08ba0550\",\n \"id\": \"5800b406e4b07ecb1445de83\",\n \"name\": \"my new folder\",\n \"parent\": \"57fba0611c94d72f08ba0550\",\n \"type\": \"FOLDER\",\n \"created_on\": \"2016-10-10T14:06:25Z\",\n \"modified_on\": \"2016-10-10T14:06:25Z\"\n}", "language": "json", "name": "Example response body" } ], "sidebar": true } [/block]