lms.backend.canvas.courses.groups.memberships.subtract
1import typing 2 3import lms.backend.canvas.common 4 5BASE_ENDPOINT = "/api/v1/groups/{group_id}/users" 6 7def request(backend: typing.Any, 8 course_id: int, 9 groupset_id: int, 10 group_id: int, 11 user_ids: typing.List[int], 12 ) -> int: 13 """ Subtract users from a group. """ 14 15 url = backend.server + BASE_ENDPOINT.format(group_id = group_id) 16 headers = backend.get_standard_headers(write = True) 17 18 data = { 19 'user_ids[]': sorted(user_ids), 20 } 21 22 raw_object = lms.backend.canvas.common.make_delete_request(url, headers = headers, data = data) 23 if (raw_object is None): 24 identifiers = { 25 'course_id': course_id, 26 'groupset_id': groupset_id, 27 'group_id': group_id, 28 'user_ids': user_ids, 29 } 30 backend.not_found('subtract group memberships', identifiers) 31 32 return 0 33 34 return len(raw_object['deleted_user_ids'])
BASE_ENDPOINT =
'/api/v1/groups/{group_id}/users'
def
request( backend: Any, course_id: int, groupset_id: int, group_id: int, user_ids: List[int]) -> int:
8def request(backend: typing.Any, 9 course_id: int, 10 groupset_id: int, 11 group_id: int, 12 user_ids: typing.List[int], 13 ) -> int: 14 """ Subtract users from a group. """ 15 16 url = backend.server + BASE_ENDPOINT.format(group_id = group_id) 17 headers = backend.get_standard_headers(write = True) 18 19 data = { 20 'user_ids[]': sorted(user_ids), 21 } 22 23 raw_object = lms.backend.canvas.common.make_delete_request(url, headers = headers, data = data) 24 if (raw_object is None): 25 identifiers = { 26 'course_id': course_id, 27 'groupset_id': groupset_id, 28 'group_id': group_id, 29 'user_ids': user_ids, 30 } 31 backend.not_found('subtract group memberships', identifiers) 32 33 return 0 34 35 return len(raw_object['deleted_user_ids'])
Subtract users from a group.