From f7bea1a1ef699664dd9e0d3f5a49d8cfa122e6c4 Mon Sep 17 00:00:00 2001 From: Frédéric Guillot Date: Wed, 17 Sep 2014 15:43:04 +0200 Subject: Improve API calls for project permissions --- docs/api-json-rpc.markdown | 65 +++++++++++++++++++++++++++++++++++++++------- jsonrpc.php | 2 +- 2 files changed, 56 insertions(+), 11 deletions(-) diff --git a/docs/api-json-rpc.markdown b/docs/api-json-rpc.markdown index 61ea9d85..efb13d7c 100644 --- a/docs/api-json-rpc.markdown +++ b/docs/api-json-rpc.markdown @@ -424,7 +424,7 @@ Request example: Response example: ```json - +{ "jsonrpc": "2.0", "id": 942472945, "result": true @@ -434,58 +434,103 @@ Response example: ### getAllowedUsers - Purpose: **Get allowed users for a given project** -- Parameters: **project_id** (integer) +- Note: Only people explicitly allowed are part of this list, administrators are always authorized +- Parameters: + - **project_id** (integer, required) - Result on success: Key/value pair of user_id and username - Result on failure: **false** Request example: ```json - +{ + "jsonrpc": "2.0", + "method": "getAllowedUsers", + "id": 1944388643, + "params": [ + 1 + ] +} ``` Response example: ```json - +{ + "jsonrpc": "2.0", + "id": 1944388643, + "result": { + "1": "user1", + "2": "user2", + "3": "user3" + } +} ``` ### revokeUser - Purpose: **Revoke user access for a given project** -- Parameters: **project_id** (integer), **user_id** (integer) +- Parameters: + - **project_id** (integer, required) + - **user_id** (integer, required) - Result on success: **true** - Result on failure: **false** Request example: ```json - +{ + "jsonrpc": "2.0", + "method": "revokeUser", + "id": 251218350, + "params": [ + 1, + 2 + ] +} ``` Response example: ```json - +{ + "jsonrpc": "2.0", + "id": 251218350, + "result": true +} ``` ### allowUser - Purpose: **Grant user access for a given project** -- Parameters: **project_id** (integer), **user_id** (integer) +- Parameters: + - **project_id** (integer, required) + - **user_id** (integer, required) - Result on success: **true** - Result on failure: **false** Request example: ```json - +{ + "jsonrpc": "2.0", + "method": "allowUser", + "id": 2111451404, + "params": [ + 1, + 2 + ] +} ``` Response example: ```json - +{ + "jsonrpc": "2.0", + "id": 2111451404, + "result": true +} ``` diff --git a/jsonrpc.php b/jsonrpc.php index 72c9c297..1f3cf650 100644 --- a/jsonrpc.php +++ b/jsonrpc.php @@ -140,7 +140,7 @@ $server->register('removeColumn', function($column_id) use ($board) { /** - * Projects permissions procedures + * Project permissions procedures */ $server->register('getAllowedUsers', function($project_id) use ($project) { return $project->getUsersList($project_id, false, false); -- cgit v1.2.3