用户组相关API
1. 用户组相关API 概述
Public API,是指观远数据为系统集成提供的标准化开放接口。系统集成,通常是指将各个分离的设备(如个人电脑)、系统、功能和信息等集成到相互关联的、统一和协调的系统之中,使资源达到充分共享,实现集中、高效、便利的管理。系统集成实现的关键在于解决系统之间的互连和互操作性问题,是一个多厂商、多协议和面向各种应用的体系结构。
观远数据提供一套简便的验证机制,来供私有化部署用户进行外部系统和账户对接集成,实现集中、高效、便利的管理。本文将为您详细介绍观远数据为您提供的与用户组相关的 Public API。
2. 用户组相关API 列表速览
目前,与用户组相关的 Public API 共包含4个,列表如下:
| 序号 | 接口描述 | PATH | 
| 1 | 批量创建用户组 | POST /public-api/user-groups/add | 
| 2 | 批量修改用户组 | POST /public-api/user-groups/modify | 
| 3 | 删除指定用户组 | POST /public-api/user-group/:ugId/delete | 
| 4 | 获取用户组列表 | POST /public-api/user-group/list | 
3. 用户组相关API 具体说明
3.1 批量创建用户组
3.1.1 接口简介
请求方式: POST
请求地址:/public-api/user-groups/add
3.1.2 参数说明
| 参数名 | 参数值说明 | Location | 类型 | 是否必填 | 备注 | 
| token | 应用Token | Body | String | 是 | 在观远平台中获得 | 
| userGroups | 需要创建的用户组列表,包含用户组ID(外部系统的唯一ID),显示名称及上级用户组ID | Body | Json Object List | 是 | name:用户组名;externalGroupId:用户组id; externalParentGroupId:上级用户组ID,可缺省 | 
3.1.3 请求与响应示例
POST Body Sample:
{
    "token":"sdjfghfodjgjshgfiw23ehrt43",
    "userGroups": [
        {
            "name": "groupA",
            "externalGroupId": "gId1"
        },
        {
            "name": "groupB",
            "externalGroupId": "gId2",
            "externalParentGroupId":"gId1"
        }
    ]
}
若请求中有用户组的externalParentGroupId在当前用户组以及请求userGroups中都不存在,或者用户组父子关系逻辑成环,都将导致本次用户组创建失败(全部都不创建)。
3.2 批量修改用户组
3.2.1 接口简介
请求方式: POST
请求地址:/public-api/user-groups/modify
3.2.1 参数说明
| 参数名 | 参数值说明 | Location | 类型 | 是否必填 | 备注 | 
| token | 应用Token | Body | String | 是 | 在观远平台中获得 | 
| userGroups | 需要创建的用户组列表,包含用户组ID(外部系统的唯一ID),显示名称及上级用户组ID | Body | Json Object List | 是 | name:用户组名;externalGroupId:用户组id; externalParentGroupId:上级用户组ID,可缺省 | 
3.2.3 请求与响应示例
POST Body Sample:
{
    "token":"sdjfghfodjgjshgfiw23ehrt43",
    "userGroups": [
        {
            "name": "groupA",
            "externalGroupId": "gId1",
            "externalParentGroupId":"parent_gId1"
        },
        {
            "name": "groupB",
            "externalGroupId": "gId2",
            "externalParentGroupId":"parent_gId2"
        }
    ]
}
3.3 删除指定用户组
3.3.1 接口简介
请求方式: POST
请求地址:/public-api/user-group/:ugId/delete
3.3.2 参数说明
| 参数名 | 参数值说明 | Location | 类型 | 是否必填 | 备注 | 
| token | 应用Token | Body | String | 是 | 在观远平台中获得 | 
3.3.3 请求与响应示例
POST Body Sample:
{
	"token":"sdjfghfodjgjshgfiw23ehrt43",
}
Response Sample:
返回最新的用户组列表
{
    "result": "ok",
    "response": [
        {
            "ugId": "f2c4fcc38d9c8490581e9510",
            "domId": "demo",
            "parentId": "",     //父用户组ID
            "name": "Test Group 1111",
            "externalGroupId": "", //外部系统关联用户组ID
            "externalParentGroupId": ""  //外部系统关联父用户组ID
        },
        ……
    ]
}
3.4 获取用户组列表
3.4.1 接口简介
请求方式: POST
请求地址:POST /public-api/user-group/list
3.4.2 参数说明
| 参数名 | 参数值说明 | Location | 类型 | 是否必填 | 备注 | 
| token | 应用Token | Body | String | 是 | 在观远平台中获得 | 
3.4.3 请求与响应示例
POST Body Sample:
{
	"token":"sdjfghfodjgjshgfiw23ehrt43",
}
Response Sample:
返回最新的用户组列表
{
    "result": "ok",
    "response": [
        {
            "ugId": "f2c4fcc38d9c8490581e9510",
            "domId": "demo",
            "parentId": "",     //父用户组ID
            "name": "Test Group 1111",
            "externalGroupId": "", //外部系统关联用户组ID
            "externalParentGroupId": ""  //外部系统关联父用户组ID
        },
        ……
    ]
}