{"_id":"5b0e13ffc4664e0003c75ada","project":"5b0e13ffc4664e0003c75a66","category":{"_id":"5b0e13ffc4664e0003c75a75","project":"5b0e13ffc4664e0003c75a66","version":"5b0e13ffc4664e0003c75a67","__v":0,"sync":{"url":"","isSync":false},"reference":true,"createdAt":"2015-09-17T17:34:34.937Z","from_sync":false,"order":32,"slug":"api","title":"API Reference"},"version":{"_id":"5b0e13ffc4664e0003c75a67","project":"5b0e13ffc4664e0003c75a66","__v":4,"createdAt":"2015-09-17T16:58:03.490Z","releaseDate":"2015-09-17T16:58:03.490Z","categories":["5b0e13ffc4664e0003c75a68","5b0e13ffc4664e0003c75a69","5b0e13ffc4664e0003c75a6a","5b0e13ffc4664e0003c75a6b","5b0e13ffc4664e0003c75a6c","5b0e13ffc4664e0003c75a6d","5b0e13ffc4664e0003c75a6e","5b0e13ffc4664e0003c75a6f","5b0e13ffc4664e0003c75a70","5b0e13ffc4664e0003c75a71","5b0e13ffc4664e0003c75a72","5b0e13ffc4664e0003c75a73","5b0e13ffc4664e0003c75a74","5b0e13ffc4664e0003c75a75","5b0e13ffc4664e0003c75a76","5b0e13ffc4664e0003c75a77","5b0e13ffc4664e0003c75a89","5b0e13ffc4664e0003c75a8a","5b0e13ffc4664e0003c75a9d","5b0e13ffc4664e0003c75a9e","5b0e13ffc4664e0003c75a9f","5b0e13ffc4664e0003c75aa0","5b0e13ffc4664e0003c75aa1","5b0e13ffc4664e0003c75aa2","5b0e13ffc4664e0003c75aa3","5b0e13ffc4664e0003c75aa4","5b0e13ffc4664e0003c75aa5","5b0e13ffc4664e0003c75aa6","5b0e13ffc4664e0003c75aa7","5b0e13ffc4664e0003c75aa8","5b0e13ffc4664e0003c75aa9","5b0e13ffc4664e0003c75aaa","5b0e13ffc4664e0003c75aab","5b0e13ffc4664e0003c75aac","5b0e13ffc4664e0003c75aad","5b0e13ffc4664e0003c75aae","5b0e13ffc4664e0003c75aaf","5b0e13ffc4664e0003c75ab2","5bb3374f4306ad0003eb18e7","5bbf3c5373e72a000318362b","5bc065567d1cb0000384c649","5cbf19a5f9181f0033fbb968"],"is_deprecated":false,"is_hidden":false,"is_beta":true,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"parentDoc":null,"user":"554340dfb7f4540d00fcef1d","__v":0,"githubsync":"","metadata":{"title":"","description":"","image":[]},"updates":["56a5f88a7ef6620d00e2f149"],"next":{"pages":[],"description":""},"createdAt":"2015-10-29T21:15:05.835Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","examples":{"codes":[]},"method":"post","auth":"required","params":[],"url":""},"isReference":true,"order":21,"body":"This call adds a new user to a specified project. It can only be successfully made by a user who has admin permissions in the project.\n\nUsers may have the following permissions on the Platform:\n  * Read\n  * Write\n  * Copy\n  * Execute\n  * Admin\n\nFor more information, see the documentation on [setting project member permissions](doc:set-permissions). Note that some user permissions imply others: for example, if you give a user admin permission, then they automatically receive read, write, copy and execute permissions.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"https://f4c-api.sbgenomics.com/v2/projects/{project_owner}/{project}/members\",\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/projects/rjfranklin/my-project/members HTTP/1.1\\nHost: f4c-api.sbgenomics.com\\nX-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74\\n\",\n      \"language\": \"http\",\n      \"name\": null\n    },\n    {\n      \"code\": \"curl --data '{\\\"username\\\": \\\"Jane-Doe\\\", \\\"permissions\\\": { \\\"read\\\": true, \\\"write\\\": true, \\\"execute\\\": false}}' -s -H \\\"X-SBG-Auth-Token: 6282d5e2121d43e7900e9d52b15845e7\\\" -H \\\"content-type: application/json\\\" -X POST \\\"https://f4c-api.sbgenomics.com/v2/projects/RFranklin/my-project/members\\\"\",\n      \"language\": \"curl\",\n      \"name\": \"cURL\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"success\",\n  \"title\": \"Member permissions\",\n  \"body\": \"Requests to add a project 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. The exception to this rule is the `read` permission, which is the default permission on a project. It enables a user to read project data, including file names, but access file contents.\\n\\nFor more information, see the documentation on [setting permissions](doc:set-permissions).\"\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<span style=\\\"color:red\\\"><i>required</i></span>\",\n    \"0-1\": \"Your Platform [authentication token](doc:get-your-authentication-token).\",\n    \"h-2\": \"\"\n  },\n  \"cols\": 2,\n  \"rows\": 1\n}\n[/block]\n###Path parameters\n[block:parameters]\n{\n  \"data\": {\n    \"0-0\": \"`project`\",\n    \"1-0\": \"`project_owner`\",\n    \"h-0\": \"Name\",\n    \"h-1\": \"Description\",\n    \"0-1\": \"The ID of the project you are adding someone to.\",\n    \"1-1\": \"The owner of the project you are adding someone to.\"\n  },\n  \"cols\": 2,\n  \"rows\": 2\n}\n[/block]\n###Query parameters\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Name\",\n    \"h-1\": \"Data type\",\n    \"h-2\": \"Description\",\n    \"0-0\": \"`fields`\",\n    \"0-1\": \"string\",\n    \"0-2\": \"Selector specifying a subset of fields to include in the response.\"\n  },\n  \"cols\": 3,\n  \"rows\": 1\n}\n[/block]\n##Request body\nInside the body of the call you should enter a set of key-value pairs. The following table describes the values you should enter.\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\": \"The Platform username of the person you want to add to the project\",\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       `\\\"write\\\"`\\n       `\\\"read\\\"`\\n       `\\\"copy\\\"`\\n       `\\\"execute\\\"`\\n       `\\\"admin\\\"`\\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\": \"success\",\n  \"title\": \"Read permissions\",\n  \"body\": \"All members of a project have `read` permissions by default. Even if you try setting `read` permissions to `false`, they will still default to `true`.\"\n}\n[/block]\n###Example request body\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n    \\\"username\\\" : \\\"John_Smith\\\",\\n    \\\"permissions\\\": {\\n        \\\"read\\\" : true,\\n        \\\"write\\\": true,\\n        \\\"execute\\\": false\\n    }\\n}\",\n      \"language\": \"json\"\n    }\n  ]\n}\n[/block]\n##Response\n\n[See a list of 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://f4c-api.sbgenomics.com/v2/projects/RFranklin/my-project/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    }\n  ],\n  \"sidebar\": true\n}\n[/block]","excerpt":"/projects/{project_owner}/{project}/members","slug":"add-a-member-to-a-project","type":"endpoint","title":"Add a member to a project"}

postAdd a member to a project

/projects/{project_owner}/{project}/members

This call adds a new user to a specified project. It can only be successfully made by a user who has admin permissions in the project. Users may have the following permissions on the Platform: * Read * Write * Copy * Execute * Admin For more information, see the documentation on [setting project member permissions](doc:set-permissions). Note that some user permissions imply others: for example, if you give a user admin permission, then they automatically receive read, write, copy and execute permissions. [block:code] { "codes": [ { "code": "https://f4c-api.sbgenomics.com/v2/projects/{project_owner}/{project}/members", "language": "text", "name": "Path" } ] } [/block] ##Request ###Example request [block:code] { "codes": [ { "code": "POST /v2/projects/rjfranklin/my-project/members HTTP/1.1\nHost: f4c-api.sbgenomics.com\nX-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74\n", "language": "http", "name": null }, { "code": "curl --data '{\"username\": \"Jane-Doe\", \"permissions\": { \"read\": true, \"write\": true, \"execute\": false}}' -s -H \"X-SBG-Auth-Token: 6282d5e2121d43e7900e9d52b15845e7\" -H \"content-type: application/json\" -X POST \"https://f4c-api.sbgenomics.com/v2/projects/RFranklin/my-project/members\"", "language": "curl", "name": "cURL" } ], "sidebar": true } [/block] [block:callout] { "type": "success", "title": "Member permissions", "body": "Requests to add a project 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. The exception to this rule is the `read` permission, which is the default permission on a project. It enables a user to read project data, including file names, but access file contents.\n\nFor more information, see the documentation on [setting permissions](doc:set-permissions)." } [/block] ###Header Fields [block:parameters] { "data": { "h-0": "Name", "h-1": "Description", "0-0": "`X-SBG-Auth-Token`\n<span style=\"color:red\"><i>required</i></span>", "0-1": "Your Platform [authentication token](doc:get-your-authentication-token).", "h-2": "" }, "cols": 2, "rows": 1 } [/block] ###Path parameters [block:parameters] { "data": { "0-0": "`project`", "1-0": "`project_owner`", "h-0": "Name", "h-1": "Description", "0-1": "The ID of the project you are adding someone to.", "1-1": "The owner of the project you are adding someone to." }, "cols": 2, "rows": 2 } [/block] ###Query parameters [block:parameters] { "data": { "h-0": "Name", "h-1": "Data type", "h-2": "Description", "0-0": "`fields`", "0-1": "string", "0-2": "Selector specifying a subset of fields to include in the response." }, "cols": 3, "rows": 1 } [/block] ##Request body Inside the body of the call you should enter a set of key-value pairs. The following table describes the values you should enter. [block:parameters] { "data": { "h-0": "Key", "h-1": "Datatype of value", "h-2": "Description of value", "0-0": "`username`", "0-1": "string", "0-2": "The Platform username of the person you want to add to the project", "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 `\"write\"`\n `\"read\"`\n `\"copy\"`\n `\"execute\"`\n `\"admin\"`\nEach key may have the values `true` or `false`." }, "cols": 3, "rows": 2 } [/block] [block:callout] { "type": "success", "title": "Read permissions", "body": "All members of a project have `read` permissions by default. Even if you try setting `read` permissions to `false`, they will still default to `true`." } [/block] ###Example request body [block:code] { "codes": [ { "code": "{\n \"username\" : \"John_Smith\",\n \"permissions\": {\n \"read\" : true,\n \"write\": true,\n \"execute\": false\n }\n}", "language": "json" } ] } [/block] ##Response [See a list of 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://f4c-api.sbgenomics.com/v2/projects/RFranklin/my-project/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" } ], "sidebar": true } [/block]