Skip to content

Commit 70bb973

Browse files
committed
Add bulk EP operation-scopes definition.
1 parent 7979e1e commit 70bb973

File tree

1 file changed

+91
-12
lines changed

1 file changed

+91
-12
lines changed

en/identity-server/next/docs/apis/scim2/scim2-batch-operations.md

Lines changed: 91 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,81 @@ The SCIM2 API allows you to send multiple resource operations in a single reques
1111
[scim2]
1212
max_bulk_operations = 500
1313
```
14-
14+
15+
## Scope(permission) required for batch operations
16+
17+
{{ product_name }} now introduces operation-wise scopes for batch operations. This allows you to enforce more granular access control for each SCIM2 operation within a batch request.
18+
19+
Though the `internal_bulk_resource_create` scope continues to support, it's advised to use the new operation-wise scopes.
20+
21+
22+
23+
<table>
24+
<tr>
25+
<th>Operation</th>
26+
<th>Scope</th>
27+
</tr>
28+
<tr>
29+
<td>Create Users</td>
30+
<td>internal_bulk_user_create</td>
31+
</tr>
32+
<tr>
33+
<td>Update Users</td>
34+
<td>internal_bulk_user_update</td>
35+
</tr>
36+
<tr>
37+
<td>Replace Users</td>
38+
<td>internal_bulk_user_update</td>
39+
</tr>
40+
<tr>
41+
<td>Delete Users</td>
42+
<td>internal_bulk_user_delete</td>
43+
</tr>
44+
<tr>
45+
<td>Create Groups</td>
46+
<td>internal_bulk_group_create</td>
47+
</tr>
48+
<tr>
49+
<td>Update Groups</td>
50+
<td>internal_bulk_group_update</td>
51+
</tr>
52+
<tr>
53+
<td>Replace Groups</td>
54+
<td>internal_bulk_group_update</td>
55+
</tr>
56+
<tr>
57+
<td>Delete Groups</td>
58+
<td>internal_bulk_group_delete</td>
59+
</tr>
60+
<tr>
61+
<td>Create Roles</td>
62+
<td>internal_bulk_role_create</td>
63+
</tr>
64+
<tr>
65+
<td>Update Roles</td>
66+
<td>internal_bulk_role_update</td>
67+
</tr>
68+
<tr>
69+
<td>Replace Roles</td>
70+
<td>internal_bulk_role_update</td>
71+
</tr>
72+
<tr>
73+
<td>Delete Roles</td>
74+
<td>internal_bulk_role_delete</td>
75+
</tr>
76+
</table>
77+
1578
## Manage users in bulk
16-
79+
1780
You can use the **bulk** operations to add, remove, update, and replace users in bulk.
1881

1982
!!! Info
2083
The examples given below show individual resource operations (POST, PATCH, PUT, or DELETE) handled in a single request. However, note that a single request can execute a combination of operation types simultaneously.
21-
84+
2285
### Add users
23-
86+
87+
**Scope (permission) required**: `internal_bulk_user_create`
88+
2489
Given below is an example request payload to manage users in bulk. This request includes an array of operations that adds multiple new users.
2590

2691
```json
@@ -184,7 +249,9 @@ The parameters in the request body are explained below.
184249
</table>
185250

186251
### Update users
187-
252+
253+
**Scope (permission) required**: `internal_bulk_user_update`
254+
188255
Given below is an example request payload to update users in bulk. This request includes an array of operations that updates multiple details of multiple users.
189256

190257
```json
@@ -353,7 +420,9 @@ The parameters in the request body are explained below.
353420
</table>
354421

355422
### Replace users
356-
423+
424+
**Scope (permission) required**: `internal_bulk_user_update`
425+
357426
Given below is an example request payload to replace existing users in bulk. This request includes an array of operations that replace multiple users.
358427

359428
```json
@@ -509,7 +578,9 @@ The parameters in the request body are explained below.
509578
</table>
510579

511580
### Delete users
512-
581+
582+
**Scope (permission) required**: `internal_bulk_user_delete`
583+
513584
Given below is an example request payload to delete existing users in bulk. This request includes an array of operations that delete multiple users.
514585

515586
```json
@@ -596,7 +667,9 @@ You can use **bulk** operations to add, update, replace, and delete user groups
596667
The examples given below show individual resource operations (POST, PATCH, PUT, or DELETE) handled in a single request. However, note that a single request can execute a combination of operation types simultaneously.
597668

598669
### Add user groups
599-
670+
671+
**Scope (permission) required**: `internal_bulk_group_create`
672+
600673
Given below is an example request payload to add user groups in bulk. This request includes an array of operations that adds multiple new user groups.
601674

602675
```json
@@ -756,7 +829,9 @@ The parameters in the request body are explained below.
756829
</table>
757830

758831
### Update groups
759-
832+
833+
**Scope (permission) required**: `internal_bulk_group_update`
834+
760835
Given below is an example request payload to update user groups in bulk. This request includes an array of operations that update multiple details in multiple user groups.
761836

762837
```json
@@ -946,7 +1021,9 @@ The parameters in the request body are explained below.
9461021
</table>
9471022

9481023
### Replace groups
949-
1024+
1025+
**Scope (permission) required**: `internal_bulk_group_update`
1026+
9501027
Given below is an example request payload to replace existing user groups in bulk. This request includes an array of operations that replace multiple user groups.
9511028

9521029
```json
@@ -1100,8 +1177,10 @@ The parameters in the request body are explained below.
11001177
</tr>
11011178
</table>
11021179

1103-
### Delete users
1104-
1180+
### Delete groups
1181+
1182+
**Scope (permission) required**: `internal_bulk_group_delete`
1183+
11051184
Given below is an example request payload to delete existing user groups in bulk. This request includes an array of operations that delete multiple user groups.
11061185

11071186
```json

0 commit comments

Comments
 (0)