组端点
此端点允许创建、编辑或删除组。在 Tagetik 中,组的概念与引用用户相关联:每个用户即为一个组,继承该用户的用户代表该组的成员
<api-root>/scim/v2/Groups
操作
| 操作 |
Http 方法 |
请求正文 |
路径变量 |
查询字符串参数 |
应答正文 |
HTTP 响应正文 |
响应状态(SCIM 异常) |
| 创建 |
POST |
Group |
- |
- |
Group |
201(已创建) |
405(方法不允许) 409(冲突) |
| 读取 |
GET |
- |
groupId |
- |
Group |
200(成功) |
404(未找到) |
| 删除 |
DELETE |
- |
groupId |
- |
- |
200(成功) |
404(未找到) |
| 搜索 |
GET |
- |
- |
filter sortBy sortOrder startIndex count excludedAttributes=members (所有参数均为可选) |
组列表 |
200(成功) |
400(无效请求) 405(方法不允许) |
| 更新 |
PATCH |
PatchRequest |
groupId |
- |
Group |
200(成功) |
400(无效请求) 404(未找到) |
SCIM 异常
调用示例
| HTTP 状态 |
描述 |
| 400(无效请求) |
当请求不符合服务规范时发生,例如在过滤器定义不正确(参数错误/语法错误)时调用“搜索”方法,或在 Patch 请求无效时调用“更新”方法。 |
| 404(未找到) |
当请求的资源不存在时发生;例如,尝试替换、更新、搜索或删除某个组,但不存在与所用 ID 代码匹配的组(引用用户)。 |
| 405(方法不允许) |
当请求的端点不允许使用该 HTTP 方法时发生,或者所提供的序列化对象与该方法的预期对象不匹配时发生。例如,在请求正文中提供了不正确的组对象。 |
| 409(冲突) |
例如,当使用系统中已存在的组 ID 代码请求创建新组时发生。 |
支持的标准 SCIM 字段
下表列出了支持的标准 SCIM 组字段。
| SCIM 用户字段 |
支持的基数(仅集合) |
支持的值 |
| id |
- |
string |
| displayName |
- |
string |
| members |
n |
"value" 元素 |
| value |
1 |
string(用户 id) |
响应附加字段
| SCIM 用户字段 |
SCIM 用户字段 |
| totalResults |
integer |
| startIndex |
integer |
| Resources |
所有请求组的集合 |
示例
| 显示所有组的列表 |
|
| 方法 |
GET |
| URL |
<api-root>/scim/v2/Groups |
| Body |
- |
| 说明 |
|
| 获取单个组 |
|
| 方法 |
GET |
| URL |
<api-root>/scim/v2/Groups/MYGROUP |
| Body |
|
| 示例应答 |
{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:Group" ], "id": "MYGROUP", "displayName": "MYGROUPdesc", "members": [ { "value": "NEW_" }, { "value": "NEW_USER" } ] } |
| 说明 |
此请求返回现有 MYGROUP 组的成员 |
| 创建新组 |
|
| 方法 |
POST |
| URL |
<api-root>/scim/v2/Groups |
| Body |
{ "id": "MYGROUP", "displayName": "MYGROUP_desc", "members": [ { "value": "NEW_USER" } ] } |
| 说明 |
此请求添加一个 MYGROUP 组并设置成员 "NEW_USER" |
| 对现有组应用更改 |
|
| 方法 |
PATCH |
| URL |
<api-root>/scim/v2/Groups/MYGROUP |
| Body |
{ "Operations": [ { "op": "add", "path": "members", "value": [ { "value": "NEW" }, { "value": "NEW_USER" } ] } ] } |
| 说明 |
此请求将成员 'NEW' 和 'NEW_USER' 添加到现有组 'MYGROUP'。 要替换现有成员,请使用 ' "op":"replace" 而非 "op":"add"。 |
| 对现有组应用更改 |
|
| 方法 |
PATCH |
| URL |
<api-root>/scim/v2/GroupsUsers/MYGROUP |
| Body |
{ "Operations": [ { "op": "remove", "path": "members[value eq \"NEW\"]" } ] } |
| 说明 |
此请求从现有 MYGROUP 组中移除成员 'NEW'。支持的运算符为 'eq' 和 'ne'。 成员 'NEW' 和 'NEW_USER' 将引用用户 'REF_USER_CODE' 添加到现有组 'MYGROUPUSER'。 |
| 删除组 |
|
| 方法 |
DELETE |
| URL |
<api-root>/scim/v2/Groups/MYGROUP |
| Body |
- |
| 说明 |
此请求删除 MYGROUP 组。 |