注意事项
1.调用业务接口使用Bearer token,Bearer token的含义是 在请求的header中添加Authorization参数并且值是Bearer {access_token},注意Bearer和access_token之间有空格
2.若查询分页携带参数
参数名 | 类型 | 含义 | 示例 |
---|---|---|---|
pageNum | String | 页码 | 0 |
pageSize | String | 页数 | 15 |
域名说明
https://open.apps.paas.se-unicloud.com
用户权限
1.同步应用下订阅租户
请求URL
{domain}/iot-open-manager/open/syncAppSubscriberTenantInfo
请求方式
GET
请求参数
参数名 | 类型 | 含义 | 示例 |
---|---|---|---|
times | Sting类型 | 时间戳 | 0,1629940925000 |
返回示例
{
"code": 1,
"message": "success",
"data": [
{
"createUserId": null,
"applicationUniqueId": "w4j2q9wcyt",
"updateUserId": null,
"remark": null,
"version": 0,
"createDateTime": "2021-08-24T16:02:01",
"deleted": false,
"tenantName": "youke",
"updateUserType": 1,
"createUserType": 1,
"id": 575,
"updateDateTime": "2021-08-24T16:02:01",
"tenantUniqueId": "youke",//租户id
"tenantName": "上海电气集团数字科技有限公司",
"applicationName": "0819-test-lin03"
}
],
"error": ""
}
2.同步应用下角色信息
注意:
此接口数据为应用在平台上角色管理中创建的角色。
请求URL
{domain}/open/syncAppRoleInfo
请求方式
GET
请求参数
参数名 | 类型 | 含义 | 类型 |
---|---|---|---|
times | String | 时间戳 | 0,1629940925000 |
返回示例
{
"code": 1,
"success": true,
"error": "",
"message": "",
"data": [
{
"createUserId": null,
"updateUserId": null,
"id": 55,
"remark": null,
"deleted": false,
"version": 0,
"createDateTime": "2020-12-01T14:07:17",
"updateDateTime": "2020-12-01T14:07:17",
"createUserType": 1,
"updateUserType": 1,
"uniqueId": "suvfli26l5",
"applicationUniqueId": "ieqiia6zgm",
"code": "BASEUSER",//角色code
"name": "普通用户",//角色名称
"tenantUniqueId": "testabc" //租户Id
},
{
"createUserId": null,
"updateUserId": null,
"id": 53,
"remark": null,
"deleted": false,
"version": 0,
"createDateTime": "2020-12-01T14:07:13",
"updateDateTime": "2020-12-01T14:07:13",
"createUserType": 1,
"updateUserType": 1,
"uniqueId": "qb9flph5rs",
"applicationUniqueId": "ieqiia6zgm",
"code": "TENANTADMIN",
"name": "租户管理员",
"tenantUniqueId": "testabc"
}
]
}
3.同步订阅租户的用户
请求URL
{domain}/iot-open-manager/open/getSyncTenantInfo?tenantUniqueId=1×=&pageNum=1&pageSize=10
请求方式
GET
请求参数
参数名 | 类型 | 含义 | 示例 |
---|---|---|---|
tenantUniqueId | String | 租户唯一id | zpoq2 |
times | String | 时间戳 | 0,1629940925000 |
pageNum | Integer | 页码(从0开始) | 0 |
pageSize | Integer | 每页显示的数量 | 10 |
返回示例
{
"code": 1,
"message": "success",
"data": {
"total": 2,
"totalSize": 4,
"pageCurrent": 0,
"pageSize": 2,
"pageTotal": 2,
"data": [
{
"createUserId": "3",
"updateUserId": "3",
"id": 15,
"remark": null,
"deleted": false,
"version": 3,
"createDateTime": "2020-12-02T16:24:27",
"updateDateTime": "2020-12-03T13:18:06",
"createUserType": "0",
"updateUserType": "0",
"uniqueId": "lqna61ka6l",//普通用户的唯一识别码
"tenantUsername": "zhang0001",//普通用户的用户名
"identifiedName": "张二",//普通用户的身份证名
"identifiedCode": "110101199003071111",///普通用户的身份证号码
"mobileNumber": "177****1111",//普通用户的手机号
"mailAddress": "zhanger@xxx.com",//普通用户的邮箱
"tenantUniqueId": "abcde",//普通用户所属的租户唯一识别码
"lastName": "张",//普通用户的姓
"firstName": "二",//普通用户的名
"displayName": "张二-测试部",//普通用户展示名
"spellName": "zhanger",// 普通用户名字拼音
"type": "1",//普通用户类型 --0编外 1为正式
"status": "1",//普通用户状态 --0为离职 1为在职 2为退休
"code":null,//角色code
"name":null//角色name
},
{
"createUserId": "1707",
"updateUserId": "1707",
"id": 1707,
"remark": null,
"deleted": false,
"version": 1,
"createDateTime": "2021-07-28T16:54:19",
"updateDateTime": "2021-07-28T16:54:19",
"createUserType": "1",
"updateUserType": "1",
"uniqueId": "d41w2k2i4z",
"tenantUsername": "devel03",
"identifiedName": "开发者",
"identifiedCode": "devel03",
"mobileNumber": "131****3516",
"mailAddress": "131****3516@xxx.com",
"tenantUniqueId": "abcde",
"lastName": "开",
"firstName": "发者",
"displayName": "开发者-devel03",
"spellName": "开发者",
"type": "1",
"status": "1",
"code": null,
"name": null
}
]
},
"error": ""
}
4.判断用户是否有访问应用的权限
请求URL
{domain}/iot-open-manager/open/checkAuth?uniqueId
请求方式
GET
请求参数
uniqueId:String类型用户唯一id
返回示例
{
"code": 1,
"message": "success",
"data": {
"createUserId": null,
"updateUserId": null,
"id": 63,
"remark": null,
"deleted": false,
"version": 0,
"createDateTime": "2020-12-11T15:15:11",
"updateDateTime": "2020-12-11T15:15:11",
"createUserType": 1,
"updateUserType": 1,
"uniqueId": "tnhqqf3fnk",//角色唯一识别码,有角色且有访问权限时才有数据
"applicationUniqueId": "n89vnnsort",//应用唯一识别码e
"code": "TENANTADMIN",//角色code,有角色且有访问权限时才有数据
"name": "租户管理员",//角色name,有角色且有访问权限时才有数据
"tenantUniqueId": "wniko",//租户id,有访问权限时才有数据
"isAuth":"true"//true 有权限 false 无权限,有权限不一定有角色code,有角色code则一定有权限
},
"error": ""
}
5.事件推送
租户操作订阅、用户权限变动等通知
场景:
1、租户在平台订阅了应用,租户订阅的应用到期或者退订应用,平台会通知应用;
2、租户在平台上设置了用户访问应用的权限,平台会通知应用;
加密规则:
应用id+时间戳+随机数,secret是应用的appsecret
举例:
加密:String token = AESUtil.encrypt(portalProductByKey.getId()+t+rs, secret);
解密:String token = AESUtil.decrypt(portalProductByKey.getId()+t+rs, secret);
请求URL
应用创建时开发人员设置的回调接口地址
请求方式
POST
请求参数
{
"appId": "612dcebac48407cface6cc10",//应用id
"secret": "7C08774E07ADA1C4518156D4A816A9CEF1CECCF22C7D8D7C7828B6F98CFF9369235FA76E652F19423BD91A8674E76A1DE7CA07C223993E55B8FCD5B6B6757086",//密钥
"nonce": "TMpn5Hjt65q9pgNJ",//随机数
如果status = 0,1,3,conente如下:
"content": {
"date": 1631148793534,
"productId": "612dcebac48407cface6cc10",//应用id
"uniqueId": "vk1io",//租户id
"status": 1 //0:退订 1:过期 2:用户权限变更 3:订阅
},
如果status = 2 conente如下:
"content": {
"date": 1631148793534,
"productId": "612dcebac48407cface6cc10",//应用id
"uniqueId": "vk1io",//租户id
"status": 2 //0:退订 1:过期 2:用户权限变更 3:订阅
"userId":"119928879640088576",//用户id
"appRoleCode": "TENANTADMIN",//角色code
"appRoleName": "租户管理员",//角色名称
"roleBindStatus": 1,//0:角色解绑 1:角色绑定 2:权限绑定 3:权限解绑
},
"timestamp": 1631148793576 //时间戳
}
返回示例
{
"code": 1,
"message": "success",
"data": "成功",
"error": ""
}