Update user's membership

put
https://api.box.com/2.0
/group_memberships/:group_membership_id

Updates a user's group membership.

Request

application/json

Path Parameters

stringin pathrequired
434534

The ID of the group membership.

Query Parameters

string arrayin queryoptional
id,type,name

A comma-separated list of attributes to include in the response. This can be used to request fields that are not normally returned in a standard response.

Be aware that specifying this parameter will have the effect that none of the standard fields are returned in the response unless explicitly specified, instead only fields for the mini representation are returned, additional to the fields requested.

Request Body

associative array in body

Custom configuration for the permissions an admin if a group will receive. This option has no effect on members with a role of member.

Setting these permissions overwrites the default access levels of an admin.

Specifying a value of "null" for this object will disable all configurable permissions. Specifying permissions will set them accordingly, omitted permissions will be enabled by default.

booleanin bodyoptional
true

A key value pair of custom permissions.

stringin bodyoptional
member

The role of the user in the group.

Value is one of "member", "admin"

Response

application/jsonMembership

Returns a new group membership object.

You can now try out some of our APIs live, right here in the documentation.
Log In

Request Example

cURL
curl -X PUT https://api.box.com/2.0/group_memberships/434534 \
     -H "Authorization: Bearer <ACCESS_TOKEN>" \
     -H "Content-Type: application/json" \
     -d '{
       "role": "admin"
     }'
.NET
var updates = new BoxGroupMembershipRequest()
{
    Role = "admin"
};
BoxGroupMembership updatedMembership = await client.GroupsManager
    .UpdateGroupMembershipAsync("33333", updates);
Java
BoxGroupMembership membership = new BoxGroupMembership(api, id);
BoxGroupMembership.Info info = membership.new Info();
info.addPendingChange("role", role);
membership.updateInfo(info);
Python
membership_id = '1234'
membership_update = {'role': 'admin'}
updated_membership = client.group_membership(membership_id).update_info(membership_update)
print('Updated {0}\'s group role to {1}'.format(updated_membership.user.name, updated_membership.role))
Node
// Promote a user to group admin
client.groups.updateMembership('12345', {role: client.groups.userRoles.ADMIN})
	.then(membership => {
		/* membership -> {
			type: 'group_membership',
			id: '33333',
			user: 
			{ type: 'user',
				id: '22222',
				name: 'Alison Wonderland',
				login: 'alice@example.com' },
			group: { type: 'group', id: '11111', name: 'Employees' },
			role: 'admin',
			configurable_permissions: 
			{ can_run_reports: false,
				can_instant_login: false,
				can_create_accounts: false,
				can_edit_accounts: false },
			created_at: '2013-05-16T15:27:57-07:00',
			modified_at: '2013-05-16T15:27:57-07:00' }
		*/
	});

Response Example

{
  "id": 11446498,
  "type": "group_membership",
  "user": {
    "id": 11446498,
    "type": "user",
    "name": "Aaron Levie",
    "login": "ceo@example.com"
  },
  "group": {
    "id": 11446498,
    "type": "group",
    "name": "Support",
    "group_type": "managed_group"
  },
  "role": "member",
  "created_at": "2012-12-12T10:53:43-08:00",
  "modified_at": "2012-12-12T10:53:43-08:00"
}