{"_id":"582081710e2b690f00bc6b39","project":"5773dcfc255e820e00e1cd4d","category":{"_id":"581c8d55c0dc651900aa9350","__v":0,"project":"5773dcfc255e820e00e1cd4d","version":"5773dcfc255e820e00e1cd50","sync":{"url":"","isSync":false},"reference":false,"createdAt":"2016-11-04T13:29:57.267Z","from_sync":false,"order":17,"slug":"cavatica-datasets-api-advanced-access","title":"CAVATICA DATASETS API (Advanced Access)"},"githubsync":"","parentDoc":null,"user":"566590c83889610d0008a253","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"},"__v":0,"metadata":{"title":"","description":"","image":[]},"updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-11-07T13:28:17.380Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"settings":"","examples":{"codes":[]},"method":"post","results":{"codes":[]},"auth":"required","params":[],"url":""},"isReference":false,"order":8,"body":"`/datasets/{owner}/{dataset}/members`\n\nFor general information on the API, including formatting, parameters, and pagination, please see the API Overview.\n[block:callout]\n{\n  \"type\": \"danger\",\n  \"body\": \"This page documents the Advance Access version (think \\\"beta\\\" but with fewer bugs) of the folders functionality.\",\n  \"title\": \"Heads Up!\"\n}\n[/block]\nThis call adds a new member to the specified dataset and sets their permissions for that dataset. To add a member, you need to have admin permissions for the dataset.\n\nMembers may have the following permissions:\n\n  * Read\n  * Write\n  * Copy\n  * Execute\n  * Admin \n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"https://cavatica-api.sbgenomics.com/v2/datasets/{owner}/{dataset}/members\",\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/datasets/rfranklin/pcgc-chd-pa-01/members\\nHost: cavatica-api.sbgenomics.com\\nX-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74\\nContent-Type: application/json\\nX-SBG-advance-access: advance\\n\",\n      \"language\": \"http\",\n      \"name\": null\n    },\n    {\n      \"code\": \"curl -X POST -H \\\"X-SBG-Auth-Token: 5f2d7a4d8186488694fa3dc3844b7b06\\\" -H \\\"x-sbg-advance-access: advance\\\" -H \\\"Content-Type: application/json\\\" -d '{\\n    \\\"username\\\": \\\"john_smith\\\",\\n    \\\"permissions\\\": {\\n        \\\"write\\\": true,\\n        \\\"read\\\": true,\\n        \\\"copy\\\": false,\\n        \\\"execute\\\": true,\\n        \\\"admin\\\": false\\n    }\\n}   ' \\\"https://cavatica-api.sbgenomics.com/v2/datasets/rfranklin/pcgc-chd-pa-01/members/\\\"\",\n      \"language\": \"curl\",\n      \"name\": \"cURL\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"body\": \"Requests to add a dataset member must include the key permissions. However, if you do not include a value for some permission, it will be set to false by default.\\n\\nThe exception to this rule is read permission, which is the default permission for a dataset. It enables a user to read dataset data, including file names, but not access file contents.\"\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    \"2-0\": \"X-SBG-Advance-Access\\n*required* \",\n    \"2-1\": \"`advance`\"\n  },\n  \"cols\": 2,\n  \"rows\": 3\n}\n[/block]\n###Path parameters\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Name\",\n    \"h-1\": \"Description\",\n    \"0-0\": \"`owner`\",\n    \"0-1\": \"The owner of the dataset you are adding a member to.\",\n    \"1-0\": \"`dataset`\",\n    \"1-1\": \"The name of the dataset you are adding a member to.\"\n  },\n  \"cols\": 2,\n  \"rows\": 2\n}\n[/block]\n#Request body\n\nInside the body of the call you should enter the following set of key-value pairs.\n\n\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Key\",\n    \"h-1\": \"Datatype of value\",\n    \"h-2\": \"Description of value\",\n    \"0-0\": \"`username`\",\n    \"0-1\": \"string\",\n    \"0-2\": \"Cavatica username of the member you want to add to the dataset.\",\n    \"1-0\": \"`permissions`\",\n    \"1-1\": \"Array of key-value pairs. The keys are strings, and the values are Booleans.\",\n    \"1-2\": \"The possible keys are:\\n\\n\\\"write\\\"\\n\\\"read\\\"\\n\\\"copy\\\"\\n\\\"execute\\\"\\n\\\"admin\\\"\\n\\nEach key may have the values true or false.\"\n  },\n  \"cols\": 3,\n  \"rows\": 2\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"body\": \"All members of a dataset have read permissions by default. Even if you try setting read permissions to false, they will still default to true.\",\n  \"title\": \"Read permissions\"\n}\n[/block]\n###Example request body\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n    \\\"username\\\" : \\\"john_smith\\\",\\n    \\\"permissions\\\": {\\n       \\\"write\\\": true,\\n       \\\"read\\\": true,\\n       \\\"copy\\\": false,\\n       \\\"execute\\\": true,\\n       \\\"admin\\\": false\\n    }\\n}\",\n      \"language\": \"json\",\n      \"name\": \"Example request body\"\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\\\": \\\"http://cavatica-api.sbgenomics.com/v2/datasets/rfranklin/pcgc-chd-pa-01/members/john_smith\\\",\\n  \\\"username\\\": \\\"john_smith\\\",\\n  \\\"permissions\\\": {\\n    \\\"write\\\": true,\\n    \\\"read\\\": true,\\n    \\\"copy\\\": false,\\n    \\\"execute\\\": true,\\n    \\\"admin\\\": false\\n  }\\n}\",\n      \"language\": \"json\",\n      \"name\": \"Example response body\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]","excerpt":"/files","slug":"add-a-dataset-member","type":"endpoint","title":"Add a dataset member"}

postAdd a dataset member

/files

`/datasets/{owner}/{dataset}/members` For general information on the API, including formatting, parameters, and pagination, please see the API Overview. [block:callout] { "type": "danger", "body": "This page documents the Advance Access version (think \"beta\" but with fewer bugs) of the folders functionality.", "title": "Heads Up!" } [/block] This call adds a new member to the specified dataset and sets their permissions for that dataset. To add a member, you need to have admin permissions for the dataset. Members may have the following permissions: * Read * Write * Copy * Execute * Admin [block:code] { "codes": [ { "code": "https://cavatica-api.sbgenomics.com/v2/datasets/{owner}/{dataset}/members", "language": "text", "name": "Path" } ] } [/block] ##Request ###Example request [block:code] { "codes": [ { "code": "POST /v2/datasets/rfranklin/pcgc-chd-pa-01/members\nHost: cavatica-api.sbgenomics.com\nX-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74\nContent-Type: application/json\nX-SBG-advance-access: advance\n", "language": "http", "name": null }, { "code": "curl -X POST -H \"X-SBG-Auth-Token: 5f2d7a4d8186488694fa3dc3844b7b06\" -H \"x-sbg-advance-access: advance\" -H \"Content-Type: application/json\" -d '{\n \"username\": \"john_smith\",\n \"permissions\": {\n \"write\": true,\n \"read\": true,\n \"copy\": false,\n \"execute\": true,\n \"admin\": false\n }\n} ' \"https://cavatica-api.sbgenomics.com/v2/datasets/rfranklin/pcgc-chd-pa-01/members/\"", "language": "curl", "name": "cURL" } ], "sidebar": true } [/block] [block:callout] { "type": "info", "body": "Requests to add a dataset member must include the key permissions. However, if you do not include a value for some permission, it will be set to false by default.\n\nThe exception to this rule is read permission, which is the default permission for a dataset. It enables a user to read dataset data, including file names, but not access file contents." } [/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`", "2-0": "X-SBG-Advance-Access\n*required* ", "2-1": "`advance`" }, "cols": 2, "rows": 3 } [/block] ###Path parameters [block:parameters] { "data": { "h-0": "Name", "h-1": "Description", "0-0": "`owner`", "0-1": "The owner of the dataset you are adding a member to.", "1-0": "`dataset`", "1-1": "The name of the dataset you are adding a member to." }, "cols": 2, "rows": 2 } [/block] #Request body Inside the body of the call you should enter the following set of key-value pairs. [block:parameters] { "data": { "h-0": "Key", "h-1": "Datatype of value", "h-2": "Description of value", "0-0": "`username`", "0-1": "string", "0-2": "Cavatica username of the member you want to add to the dataset.", "1-0": "`permissions`", "1-1": "Array of key-value pairs. The keys are strings, and the values are Booleans.", "1-2": "The possible keys are:\n\n\"write\"\n\"read\"\n\"copy\"\n\"execute\"\n\"admin\"\n\nEach key may have the values true or false." }, "cols": 3, "rows": 2 } [/block] [block:callout] { "type": "info", "body": "All members of a dataset have read permissions by default. Even if you try setting read permissions to false, they will still default to true.", "title": "Read permissions" } [/block] ###Example request body [block:code] { "codes": [ { "code": "{\n \"username\" : \"john_smith\",\n \"permissions\": {\n \"write\": true,\n \"read\": true,\n \"copy\": false,\n \"execute\": true,\n \"admin\": false\n }\n}", "language": "json", "name": "Example request body" } ] } [/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\": \"http://cavatica-api.sbgenomics.com/v2/datasets/rfranklin/pcgc-chd-pa-01/members/john_smith\",\n \"username\": \"john_smith\",\n \"permissions\": {\n \"write\": true,\n \"read\": true,\n \"copy\": false,\n \"execute\": true,\n \"admin\": false\n }\n}", "language": "json", "name": "Example response body" } ], "sidebar": true } [/block]