Starting September 8, 2025, every new line item will need to declare whether or not they will serve Eurpoean Union (EU) political ads. Display & Video 360 API and SDF uploads that don't provide declarations will fail. See our deprecations page for more details on how to update your integration to make this declaration.
The assigned user roles to delete in batch, specified as a list of assigned_user_role_ids. The format of assignedUserRoleId is entityType-entityid, for example partner-123.
[null,null,["Last updated 2025-04-02 UTC."],[[["\u003cp\u003eThis method enables bulk editing of user roles by deleting and creating assigned roles in batches.\u003c/p\u003e\n"],["\u003cp\u003eIt requires the \u003ccode\u003euserId\u003c/code\u003e as a path parameter to identify the target user.\u003c/p\u003e\n"],["\u003cp\u003eThe request body specifies roles to delete (\u003ccode\u003edeletedAssignedUserRoles\u003c/code\u003e) and create (\u003ccode\u003ecreatedAssignedUserRoles\u003c/code\u003e).\u003c/p\u003e\n"],["\u003cp\u003eSuccessful responses include a list of the successfully created assigned user roles (\u003ccode\u003ecreatedAssignedUserRoles\u003c/code\u003e).\u003c/p\u003e\n"],["\u003cp\u003eIt requires authorization with the \u003ccode\u003ehttps://www.googleapis.com/auth/display-video-user-management\u003c/code\u003e scope.\u003c/p\u003e\n"]]],["This API operation performs bulk edits to a user's roles. It uses a POST request to the specified URL, including the user's ID in the path. The request body contains two key arrays: `deletedAssignedUserRoles`, listing user role IDs to remove, and `createdAssignedUserRoles`, listing new roles to assign. The response returns a list of successfully created assigned user roles in `createdAssignedUserRoles`. This operation requires specific authorization scopes and prerequisites, and the \"Try it!\" feature is unavailable.\n"],null,["# Method: users.bulkEditAssignedUserRoles\n\n| Display \\& Video 360 API is deprecated and will sunset on **October 7, 2025** . Migrate to [Display \\& Video 360 API v4](/display-video/api/reference/rest/v4) before sunset to avoid an interruption in service.\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Path parameters](#body.PATH_PARAMETERS)\n- [Request body](#body.request_body)\n - [JSON representation](#body.request_body.SCHEMA_REPRESENTATION)\n- [Response body](#body.response_body)\n - [JSON representation](#body.BulkEditAssignedUserRolesResponse.SCHEMA_REPRESENTATION)\n- [Authorization scopes](#body.aspect)\n- [Try it!](#try-it)\n\nBulk edits user roles for a user.\n\nThe operation will delete the assigned user roles provided in [BulkEditAssignedUserRolesRequest.deletedAssignedUserRoles](/display-video/api/reference/rest/v3/users/bulkEditAssignedUserRoles#body.request_body.FIELDS.deleted_assigned_user_roles) and then assign the user roles provided in [BulkEditAssignedUserRolesRequest.createdAssignedUserRoles](/display-video/api/reference/rest/v3/users/bulkEditAssignedUserRoles#body.request_body.FIELDS.created_assigned_user_roles).\n\nThis method has unique authentication requirements. Read the prerequisites in our [Managing Users guide](/display-video/api/guides/users/overview#prerequisites) before using this method.\n\nThe \"Try this method\" feature does not work for this method.\n\n### HTTP request\n\n`POST https://displayvideo.googleapis.com/v3/users/{userId}:bulkEditAssignedUserRoles`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Path parameters\n\n| Parameters ||\n|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `userId` | `string (`[int64](https://developers.google.com/discovery/v1/type-format)` format)` Required. The ID of the user to which the assigned user roles belong. |\n\n### Request body\n\nThe request body contains data with the following structure:\n\n| JSON representation |\n|--------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"deletedAssignedUserRoles\": [ string ], \"createdAssignedUserRoles\": [ { object (/display-video/api/reference/rest/v3/users#AssignedUserRole) } ] } ``` |\n\n| Fields ||\n|------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `deletedAssignedUserRoles[]` | `string` The assigned user roles to delete in batch, specified as a list of [assigned_user_role_ids](/display-video/api/reference/rest/v3/users#AssignedUserRole.FIELDS.assigned_user_role_id). The format of assignedUserRoleId is `entityType-entityid`, for example `partner-123`. |\n| `createdAssignedUserRoles[]` | `object (`[AssignedUserRole](/display-video/api/reference/rest/v3/users#AssignedUserRole)`)` The assigned user roles to create in batch, specified as a list of [AssignedUserRoles](/display-video/api/reference/rest/v3/users#AssignedUserRole). |\n\n### Response body\n\nIf successful, the response body contains data with the following structure:\n\n| JSON representation |\n|----------------------------------------------------------------------------------------------------------------------|\n| ``` { \"createdAssignedUserRoles\": [ { object (/display-video/api/reference/rest/v3/users#AssignedUserRole) } ] } ``` |\n\n| Fields ||\n|------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `createdAssignedUserRoles[]` | `object (`[AssignedUserRole](/display-video/api/reference/rest/v3/users#AssignedUserRole)`)` The list of assigned user roles that have been successfully created. This list will be absent if empty. |\n\n### Authorization scopes\n\nRequires the following OAuth scope:\n\n- `https://www.googleapis.com/auth/display-video-user-management`\n\nFor more information, see the [OAuth 2.0 Overview](/identity/protocols/OAuth2)."]]