.. _user-group-methods-ref: user_group methods ================== add_user_to_user_group ---------------------- .. py:function:: add_user_to_user_group(apiuser, usergroupid, userid) Adds a user to a `user group`. If the user already exists in the group this command will return false. This command can only be run using an |authtoken| with admin rights to the specified user group. This command takes the following options: :param apiuser: This is filled automatically from the |authtoken|. :type apiuser: AuthUser :param usergroupid: Set the name of the `user group` to which a user will be added. :type usergroupid: int :param userid: Set the `user_id` of the user to add to the group. :type userid: int Example output: .. code-block:: bash id : <id_given_in_input> result : { "success": True|False # depends on if member is in group "msg": "added member `<username>` to user group `<groupname>` | User is already in that group" } error : null Example error output: .. code-block:: bash id : <id_given_in_input> result : null error : { "failed to add member to user group `<user_group_name>`" } create_user_group ----------------- .. py:function:: create_user_group(apiuser, group_name, description=<Optional:''>, owner=<Optional:<OptionalAttr:apiuser>>, active=<Optional:True>, sync=<Optional:None>) Creates a new user group. This command can only be run using an |authtoken| with admin rights to the specified repository. This command takes the following options: :param apiuser: This is filled automatically from the |authtoken|. :type apiuser: AuthUser :param group_name: Set the name of the new user group. :type group_name: str :param description: Give a description of the new user group. :type description: str :param owner: Set the owner of the new user group. If not set, the owner is the |authtoken| user. :type owner: Optional(str or int) :param active: Set this group as active. :type active: Optional(``True`` | ``False``) :param sync: Set enabled or disabled the automatically sync from external authentication types like ldap. :type sync: Optional(``True`` | ``False``) Example output: .. code-block:: bash id : <id_given_in_input> result: { "msg": "created new user group `<groupname>`", "user_group": <user_group_object> } error: null Example error output: .. code-block:: bash id : <id_given_in_input> result : null error : { "user group `<group name>` already exist" or "failed to create group `<group name>`" } delete_user_group ----------------- .. py:function:: delete_user_group(apiuser, usergroupid) Deletes the specified `user group`. This command can only be run using an |authtoken| with admin rights to the specified repository. This command takes the following options: :param apiuser: filled automatically from apikey :type apiuser: AuthUser :param usergroupid: :type usergroupid: int Example output: .. code-block:: bash id : <id_given_in_input> result : { "msg": "deleted user group ID:<user_group_id> <user_group_name>" } error : null Example error output: .. code-block:: bash id : <id_given_in_input> result : null error : { "failed to delete user group ID:<user_group_id> <user_group_name>" or "RepoGroup assigned to <repo_groups_list>" } get_user_group -------------- .. py:function:: get_user_group(apiuser, usergroupid) Returns the data of an existing user group. This command can only be run using an |authtoken| with admin rights to the specified repository. :param apiuser: This is filled automatically from the |authtoken|. :type apiuser: AuthUser :param usergroupid: Set the user group from which to return data. :type usergroupid: str or int Example error output: .. code-block:: bash { "error": null, "id": <id>, "result": { "active": true, "group_description": "group description", "group_name": "group name", "permissions": [ { "name": "owner-name", "origin": "owner", "permission": "usergroup.admin", "type": "user" }, { { "name": "user name", "origin": "permission", "permission": "usergroup.admin", "type": "user" }, { "name": "user group name", "origin": "permission", "permission": "usergroup.write", "type": "user_group" } ], "permissions_summary": { "repositories": { "aa-root-level-repo-1": "repository.admin" }, "repositories_groups": {} }, "owner": "owner name", "users": [], "users_group_id": 2 } } get_user_groups --------------- .. py:function:: get_user_groups(apiuser) Lists all the existing user groups within RhodeCode. This command can only be run using an |authtoken| with admin rights to the specified repository. This command takes the following options: :param apiuser: This is filled automatically from the |authtoken|. :type apiuser: AuthUser Example error output: .. code-block:: bash id : <id_given_in_input> result : [<user_group_obj>,...] error : null grant_user_group_permission_to_user_group ----------------------------------------- .. py:function:: grant_user_group_permission_to_user_group(apiuser, usergroupid, sourceusergroupid, perm) Give one user group permissions to another user group. :param apiuser: This is filled automatically from the |authtoken|. :type apiuser: AuthUser :param usergroupid: Set the user group on which to edit permissions. :type usergroupid: str or int :param sourceusergroupid: Set the source user group to which access/permissions will be granted. :type sourceusergroupid: str or int :param perm: (usergroup.(none|read|write|admin)) :type perm: str Example output: .. code-block:: bash id : <id_given_in_input> result : { "msg": "Granted perm: `<perm_name>` for user group: `<source_user_group_name>` in user group: `<user_group_name>`", "success": true } error : null grant_user_permission_to_user_group ----------------------------------- .. py:function:: grant_user_permission_to_user_group(apiuser, usergroupid, userid, perm) Set permissions for a user in a user group. :param apiuser: This is filled automatically from the |authtoken|. :type apiuser: AuthUser :param usergroupid: Set the user group to edit permissions on. :type usergroupid: str or int :param userid: Set the user from whom you wish to set permissions. :type userid: str :param perm: (usergroup.(none|read|write|admin)) :type perm: str Example output: .. code-block:: bash id : <id_given_in_input> result : { "msg": "Granted perm: `<perm_name>` for user: `<username>` in user group: `<user_group_name>`", "success": true } error : null remove_user_from_user_group --------------------------- .. py:function:: remove_user_from_user_group(apiuser, usergroupid, userid) Removes a user from a user group. * If the specified user is not in the group, this command will return `false`. This command can only be run using an |authtoken| with admin rights to the specified user group. :param apiuser: This is filled automatically from the |authtoken|. :type apiuser: AuthUser :param usergroupid: Sets the user group name. :type usergroupid: str or int :param userid: The user you wish to remove from |RCE|. :type userid: str or int Example output: .. code-block:: bash id : <id_given_in_input> result: { "success": True|False, # depends on if member is in group "msg": "removed member <username> from user group <groupname> | User wasn't in group" } error: null revoke_user_group_permission_from_user_group -------------------------------------------- .. py:function:: revoke_user_group_permission_from_user_group(apiuser, usergroupid, sourceusergroupid) Revoke the permissions that one user group has to another. :param apiuser: This is filled automatically from the |authtoken|. :type apiuser: AuthUser :param usergroupid: Set the user group on which to edit permissions. :type usergroupid: str or int :param sourceusergroupid: Set the user group from which permissions are revoked. :type sourceusergroupid: str or int Example output: .. code-block:: bash id : <id_given_in_input> result : { "msg": "Revoked perm for user group: `<user_group_name>` in user group: `<target_user_group_name>`", "success": true } error : null revoke_user_permission_from_user_group -------------------------------------- .. py:function:: revoke_user_permission_from_user_group(apiuser, usergroupid, userid) Revoke a users permissions in a user group. :param apiuser: This is filled automatically from the |authtoken|. :type apiuser: AuthUser :param usergroupid: Set the user group from which to revoke the user permissions. :type: usergroupid: str or int :param userid: Set the userid of the user whose permissions will be revoked. :type userid: str Example output: .. code-block:: bash id : <id_given_in_input> result : { "msg": "Revoked perm for user: `<username>` in user group: `<user_group_name>`", "success": true } error : null update_user_group ----------------- .. py:function:: update_user_group(apiuser, usergroupid, group_name=<Optional:''>, description=<Optional:''>, owner=<Optional:None>, active=<Optional:True>, sync=<Optional:None>) Updates the specified `user group` with the details provided. This command can only be run using an |authtoken| with admin rights to the specified repository. :param apiuser: This is filled automatically from the |authtoken|. :type apiuser: AuthUser :param usergroupid: Set the id of the `user group` to update. :type usergroupid: str or int :param group_name: Set the new name the `user group` :type group_name: str :param description: Give a description for the `user group` :type description: str :param owner: Set the owner of the `user group`. :type owner: Optional(str or int) :param active: Set the group as active. :type active: Optional(``True`` | ``False``) :param sync: Set enabled or disabled the automatically sync from external authentication types like ldap. :type sync: Optional(``True`` | ``False``) Example output: .. code-block:: bash id : <id_given_in_input> result : { "msg": 'updated user group ID:<user group id> <user group name>', "user_group": <user_group_object> } error : null Example error output: .. code-block:: bash id : <id_given_in_input> result : null error : { "failed to update user group `<user group name>`" }