Box Developerドキュメント

グループメンバーシップを更新

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

ユーザーのグループメンバーシップを更新します。このグループの管理者、または管理者レベルの権限を持つユーザーのみがこのAPIを使用できます。

リクエスト

bearer [ACCESS_TOKEN]
application/json

パスパラメータ

stringパス内必須
434534

グループメンバーシップのID。

クエリパラメータ

string arrayクエリ内省略可能
id,type,name

レスポンスに含める属性のコンマ区切りリスト。このパラメータを使用すると、標準のレスポンスには通常含まれないフィールドをリクエストできます。

このパラメータを指定すると、明示的に指定しない限り標準フィールドはレスポンスに含まれず、リクエストしたフィールドのほかには、Mini版の表示のフィールドしか返されないことに注意してください。

リクエスト本文

associative array本文内

管理者権限のカスタム設定 (グループが受け入れる場合)。このオプションは、ロールがmemberであるメンバーには影響しません。

これらの権限を設定すると、管理者のデフォルトのアクセスレベルが上書きされます。

このオブジェクトの値としてnullを指定すると、設定可能なすべての権限が無効になります。権限を指定すると、それに応じて権限が設定され、省略した権限はデフォルトで有効になります。

boolean本文内省略可能
true

カスタム権限のキーと値のペア。

string本文内省略可能
"member"

グループ内のユーザーのロール。

次の値のいずれか1つ: member,admin

レスポンス

新しいグループメンバーシップオブジェクトを返します。

予期しないクライアントエラー。

put
グループメンバーシップを更新
このドキュメント内で一部のAPIを試せるようになりました。
ログイン

リクエストの例

cURL
curl -i -X PUT "https://api.box.com/2.0/group_memberships/434534" \
     -H "authorization: Bearer <ACCESS_TOKEN>" \
     -H "content-type: application/json" \
     -d '{
       "role": "admin"
     }'
TypeScript Gen
await client.memberships.updateGroupMembershipById(groupMembership.id!, {
  requestBody: {
    role: 'admin' as UpdateGroupMembershipByIdRequestBodyRoleField,
  } satisfies UpdateGroupMembershipByIdRequestBody,
} satisfies UpdateGroupMembershipByIdOptionalsInput);
Python Gen
client.memberships.update_group_membership_by_id(
    group_membership.id, role=UpdateGroupMembershipByIdRole.ADMIN.value
)
.NET Gen
await client.Memberships.UpdateGroupMembershipByIdAsync(groupMembershipId: NullableUtils.Unwrap(groupMembership.Id), requestBody: new UpdateGroupMembershipByIdRequestBody() { Role = UpdateGroupMembershipByIdRequestBodyRoleField.Admin });
Java
BoxGroupMembership membership = new BoxGroupMembership(api, id);
BoxGroupMembership.Info info = membership.new Info();
info.setGroupRole(BoxGroupMembership.GroupRole.MEMBER);
membership.updateInfo(info);
Python
membership_id = '1234'
membership_update = {'role': 'admin'}
updated_membership = client.group_membership(membership_id).update_info(data=membership_update)
print(f'Updated {updated_membership.user.name}\'s group role to {updated_membership.role}')
.NET
var updates = new BoxGroupMembershipRequest()
{
    Role = "admin"
};
BoxGroupMembership updatedMembership = await client.GroupsManager
    .UpdateGroupMembershipAsync("33333", updates);
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' }
		*/
	});
iOS
client.groups.updateMembership(membershipId: "12345", role: .admin, configurablePermission: .value(ConfigurablePermissionData(canRunReports: true, canInstantLogin: true, canCreateAccounts: false, canEditAccounts: true))) { 
(result: Result<GroupMembership, BoxSDKError>) in
    guard case let .success(membership) = result else {
        print("Error updating group membership")
        return
    }

    print("Group membership with ID \(membership.id) was updated")
}

レスポンスの例

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