臭名昭著aTrust隔离计划1.臭名昭著aTrust隔离计划2.VPN原理与aTrust隔离网络实践3.docker-easyconnect到底做了什么4.TUN(tunnel-隧道-虚拟网卡)模式
个人项目
personal(个人展示)GitHub Actions 自动部署个人展示项目
基于Quartz搭建的个人博客1.Quartz个人博客使用教程2.使用 rsync 增量部署 Quartz 博客3.使用 GitHub Actions 自动部署 Quartz 博客5.域名绑定6.CDN加速Obsidian、双向链接与知识图谱
旅行
行程攻略青岛三日游行程攻略
前端
NginxNginx配置与反向代理入门
Nodenpm与npx的区别
中华财险-公司项目
对外接口文档
基础数据码表对外接口(仅支持rpc调用)业务码表对外接口应用主数据对外接口
基础运营查询版本更新日志详情消息中心对外接口站内信对外接口站内信模板配置手册
权限中心权限中心对外接口文档(最新)权限中心对外接口文档前端ACL-CORE FACADE依赖版本
审计中心审计中心对外接口文档audit-center-facade版本
审批中心工作流迁审批流现状工作流迁审批流API能力替换方案老审批流接口文档审批中心接口文档审批中心业务回调FAQ
账号中心内部系统对接单点登录内部系统对接认证中心三方网页应用登录授权账号中心对外接口文档前端账号中心RPC接口文档账户变更对外广播消息文档账户中心对外接口HRMS外部员工变更广播消息文档HRMS外部员工对外接口
组织员工岗位🔥机构映射SDK接口文档员工岗位变更通知说明组织机构管营一体概念与用法组织员工对外广播消息文档组织员工岗位对外接口文档组织员工岗位对外接口文档前端组织员工岗位数据模型组织员工主数据业务场景案例organization-facade版本
hrms(大型人力资源外包管理系统)
项目架构说明HRMS Maven模块与依赖说明
项目说明0.流程中心模块0.组织模块说明1.业务线模块2.计划模块3.项目模块4.协议模块5.供应商模块6.合约域模块7.外包人员模块*核心:外包人员生命周期
项目运维外包人员项目编制差异排查与修复2.HRMS相关问题排查4.修改externalId(externalId和accountId不一致)
需求-系分
1.内部转外包0723外包人员关联历史内部账号系分新增外包人员关联历史账号内容(紧急0723上线)需求
2.工作岗位0820工作岗位0820需求工作岗位0820需求-系分
3.用工模式调整0917内部人员转外包用工系统需求2内部人员转外包用工系统需求-系分
sso(账号中心-单点登录)
项目架构说明aboss-sso项目架构入门AOP统一日志打印链路Maven多模块项目高级知识OAuth2.0
项目说明1.SSO-OAuth2.0与IDaaS登录流程2.外部账号创建流水号并发问题分析
AI
使用说明
第三方插件&技能简介Archify使用与安装指南Ponytail使用指南
CodexCodex CLI与IDE区别及使用指南Codex Hook单独配置与提交通知Codex MCP安装与使用指南Codex第三方插件安装与使用指南
Agent开发1.LLM、Token、上下文窗口与模型参数2.大模型 API、请求参数与响应结构3.Spring AI ChatClient4.Prompt、System Prompt、Prompt 模板6.结构化输出、JSON Schema7.SSE 流式响应8.会话 ID、聊天记录、Redis9.超时、重试、限流、降级10.完成可运行聊天接口
GitGit常用命令与Obsidian推送排查
Java
面试题Java基础与集合面试题
AtomicInteger原子计数与并发安全ConcurrentHashMap并发安全与计数Java线程、线程池与Future
python
基础Python基础语法
HTTPXHRMS员工详情接口调用(Python HTTPX)

https://cic_irc.yuque.com/tyl581/ggwv9w/xhap0wi0mdbab9sa

一、pom坐标

<dependency>
  <groupId>com.aliyun.fsi.insurance</groupId>
  <artifactId>aboss-sso-client</artifactId>
  <version>1.3.5-RELEASE</version>
</dependency>

二、接口列表

1. 账号查询相关

1.1. 根据账户id查询用户详细信息

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#accountInfo(com.aliyun.fsi.insurance.sso.dto.AccountIdQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
accIdstring账户idtrue-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/account-info --data '{
  "accId": "96"
}'

Response-fields:

FieldTypeDescriptionSince
accIdstring账户Id-
accountNamestring登录名称-
externalIdstring外部id-
displayNamestring显示名称-
accountRolestring账户角色(1:普通用户,2:超级管理员)-
accountTypestring账户类型(0:内部账户,1:外部账户)-
phoneNostring手机号-
emailstring邮箱-
accountStartDtstring账户有效期-起期-
accountEndDtstring账户有效期-止期-
faceIdstring人脸识别图片fileid-
avatarIdstring账户图片fileid-
branchOrgCodestring归属组织编码-
branchOrgNamestring归属组织名称-
operatingOrgCodestring所属经营组织编码-
operatingOrgNamestring所属经营组织名称-
externalSourcestring外部id所属来源(应用名)-
externalHeadstring外部负责人-
externalClassificationstring外部账户业务分类-
enabledboolean账户状态(true:启用,false:禁用)-
isValidboolean在职状态(true:在职,false:离职)-
twoFactorboolean二次认证状态(true:开启,false:关闭)-
dingUserIdstring钉钉userId-
beforePhoneNostring之前使用的手机号-
beforeEmailstring之前使用的邮箱-
gmtModifiedstring修改时间-

Response-example:

{
  "accId": "96",
  "accountName": "andy.rath",
  "externalId": "96",
  "displayName": "andy.rath",
  "accountRole": "2znc0k",
  "accountType": "83ioez",
  "phoneNo": "obwtq4",
  "email": "thurman.satterfield@gmail.com",
  "accountStartDt": "7hivso",
  "accountEndDt": "un2djf",
  "faceId": "96",
  "avatarId": "96",
  "branchOrgCode": "68766",
  "branchOrgName": "andy.rath",
  "operatingOrgCode": "68766",
  "operatingOrgName": "andy.rath",
  "externalSource": "9omcfx",
  "externalHead": "gq5cld",
  "enabled": true,
  "isValid": true,
  "twoFactor": true,
  "dingUserId": "96",
  "beforePhoneNo": "pidyoi",
  "beforeEmail": "thurman.satterfield@gmail.com",
  "gmtModified": "2024-02-29 16:47:06"
}

1.2. 根据账户id集合查找用户详细信息列表

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#accountListByAccountIds(com.aliyun.fsi.insurance.sso.dto.AccountListByAccountIdsQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
accIdsarray账户id集合(最多100条)true-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/account-list-by-accountIds --data '{
  "accIds": [
    "dae7la"
  ]
}'

Response-fields:

FieldTypeDescriptionSince
accIdstring账户Id-
accountNamestring登录名称-
externalIdstring外部id-
displayNamestring显示名称-
accountRolestring账户角色(1:普通用户,2:超级管理员)-
accountTypestring账户类型(0:内部账户,1:外部账户)-
phoneNostring手机号-
emailstring邮箱-
accountStartDtstring账户有效期-起期-
accountEndDtstring账户有效期-止期-
faceIdstring人脸识别图片fileid-
avatarIdstring账户图片fileid-
branchOrgCodestring归属组织编码-
branchOrgNamestring归属组织名称-
operatingOrgCodestring所属经营组织编码-
operatingOrgNamestring所属经营组织编码-
externalSourcestring外部id所属来源(应用名)-
externalHeadstring外部负责人-
externalClassificationstring外部账户业务分类-
enabledboolean账户状态(true:启用,false:禁用)-
isValidboolean是否有效-
twoFactorboolean二次认证状态(true:开启,false:关闭)-
dingUserIdstring钉钉userId-
beforePhoneNostring之前使用的手机号-
beforeEmailstring之前使用的邮箱-
gmtModifiedstring修改时间-

Response-example:

[
  {
    "accId": "96",
    "accountName": "andy.rath",
    "externalId": "96",
    "displayName": "andy.rath",
    "accountRole": "sxdzt6",
    "accountType": "s8yjtp",
    "phoneNo": "06uqzm",
    "email": "thurman.satterfield@gmail.com",
    "accountStartDt": "zvfvsu",
    "accountEndDt": "gbkp0j",
    "faceId": "96",
    "avatarId": "96",
    "branchOrgCode": "68766",
    "branchOrgName": "andy.rath",
    "operatingOrgCode": "68766",
    "operatingOrgName": "andy.rath",
    "externalSource": "81xx8q",
    "externalHead": "2ig6wh",
    "enabled": true,
    "isValid": true,
    "twoFactor": true,
    "dingUserId": "96",
    "beforePhoneNo": "3oay9d",
    "beforeEmail": "thurman.satterfield@gmail.com",
    "gmtModified": "2024-02-29 16:47:06"
  }
]

1.3. 根据归属组织编码查找用户详细信息集合(不包含下级机构)

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#accountListByBranchOrgCode(com.aliyun.fsi.insurance.sso.dto.BranchOrgCodeQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
branchOrgCodestring归属组织编码true-
isValidboolean在职状态(true:在职,false:离职,不传返回所有)false-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/account-list-by-branch-org-code --data '{
  "branchOrgCode": "68766",
  "isValid": true
}'

Response-fields:

FieldTypeDescriptionSince
dataarrayNo comments found.-
└─accIdstring账户Id-
└─accountNamestring登录名称-
└─externalIdstring外部id-
└─displayNamestring显示名称-
└─accountRolestring账户角色(1:普通用户,2:超级管理员)-
└─accountTypestring账户类型(0:内部账户,1:外部账户)-
└─phoneNostring手机号-
└─emailstring邮箱-
└─accountStartDtstring账户有效期-起期-
└─accountEndDtstring账户有效期-止期-
└─faceIdstring人脸识别图片fileid-
└─avatarIdstring账户图片fileid-
└─branchOrgCodestring归属组织编码-
└─branchOrgNamestring归属组织名称-
└─operatingOrgCodestring所属经营组织编码-
└─operatingOrgNamestring所属经营组织编码-
└─externalSourcestring外部id所属来源(应用名)-
└─externalHeadstring外部负责人-
externalClassificationstring外部账户业务分类-
└─enabledboolean账户状态(true:启用,false:禁用)-
└─isValidboolean是否有效-
└─twoFactorboolean二次认证状态(true:开启,false:关闭)-
└─dingUserIdstring钉钉userId-
└─beforePhoneNostring之前使用的手机号-
└─beforeEmailstring之前使用的邮箱-
└─gmtModifiedstring修改时间-
pageSizeint32No comments found.-
totalCountint32No comments found.-
pageIndexint32No comments found.-
messageobjectNo comments found.-
statusint32No comments found.-

Response-example:

{
  "data": [
    {
      "accId": "96",
      "accountName": "andy.rath",
      "externalId": "96",
      "displayName": "andy.rath",
      "accountRole": "y6tmdr",
      "accountType": "qzlsac",
      "phoneNo": "k82j6o",
      "email": "thurman.satterfield@gmail.com",
      "accountStartDt": "j7uu8w",
      "accountEndDt": "oq71y5",
      "faceId": "96",
      "avatarId": "96",
      "branchOrgCode": "68766",
      "branchOrgName": "andy.rath",
      "operatingOrgCode": "68766",
      "operatingOrgName": "andy.rath",
      "externalSource": "ua1asz",
      "externalHead": "zfm5z9",
      "enabled": true,
      "isValid": true,
      "twoFactor": true,
      "dingUserId": "96",
      "beforePhoneNo": "beascp",
      "beforeEmail": "thurman.satterfield@gmail.com",
      "gmtModified": "2024-02-29 16:47:06"
    }
  ],
  "pageSize": 10,
  "totalCount": 283,
  "pageIndex": 1,
  "message": {},
  "status": 994
}

1.4. 根据关键字模糊查询(分页)

Description: com.aliyun.fsi.insurance.sso.impl.AccountRpcFacadeImpl#accountListByKeyword(com.aliyun.fsi.insurance.sso.dto.KeywordQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
pageSizeint32每页展示条数(最大100条)true-
pageIndexint32当前页码true-
keywordstring模糊查询关键字
账号名
用户名
true-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/account-list-by-keyword --data '{
  "pageSize": 10,
  "pageIndex": 1,
  "keyword": "vtr6qw"
}'

Response-fields:

FieldTypeDescriptionSince
dataarrayNo comments found.-
└─accIdstring账户Id-
└─accountNamestring登录名称-
└─externalIdstring外部id-
└─displayNamestring显示名称-
└─accountRolestring账户角色(1:普通用户,2:超级管理员)-
└─accountTypestring账户类型(0:内部账户,1:外部账户)-
└─phoneNostring手机号-
└─emailstring邮箱-
└─accountStartDtstring账户有效期-起期-
└─accountEndDtstring账户有效期-止期-
└─faceIdstring人脸识别图片fileid-
└─avatarIdstring账户图片fileid-
└─branchOrgCodestring归属组织编码-
└─branchOrgNamestring归属组织名称-
└─operatingOrgCodestring所属经营组织编码-
└─operatingOrgNamestring所属经营组织编码-
└─externalSourcestring外部id所属来源(应用名)-
└─externalHeadstring外部负责人-
externalClassificationstring外部账户业务分类-
└─enabledboolean账户状态(true:启用,false:禁用)-
└─isValidboolean是否有效-
└─twoFactorboolean二次认证状态(true:开启,false:关闭)-
└─dingUserIdstring钉钉userId-
└─beforePhoneNostring之前使用的手机号-
└─beforeEmailstring之前使用的邮箱-
└─gmtModifiedstring修改时间-
pageSizeint32No comments found.-
totalCountint32No comments found.-
pageIndexint32No comments found.-
messageobjectNo comments found.-
statusint32No comments found.-
needRetrybooleanNo comments found.-
extendInfomapNo comments found.-
└─any objectobjectany object.-

Response-example:

{
  "data": [
    {
      "accId": "96",
      "accountName": "andy.rath",
      "externalId": "96",
      "displayName": "andy.rath",
      "accountRole": "z4z851",
      "accountType": "j1cfzu",
      "phoneNo": "xba6ux",
      "email": "thurman.satterfield@gmail.com",
      "accountStartDt": "ckzwmv",
      "accountEndDt": "05ls8c",
      "faceId": "96",
      "avatarId": "96",
      "branchOrgCode": "68766",
      "branchOrgName": "andy.rath",
      "operatingOrgCode": "68766",
      "operatingOrgName": "andy.rath",
      "externalSource": "n8h7yv",
      "externalHead": "kgvzkl",
      "enabled": true,
      "isValid": true,
      "twoFactor": true,
      "dingUserId": "96",
      "beforePhoneNo": "57fzsr",
      "beforeEmail": "thurman.satterfield@gmail.com",
      "gmtModified": "2024-02-29 16:47:06"
    }
  ],
  "pageSize": 10,
  "totalCount": 475,
  "pageIndex": 1,
  "message": {},
  "status": 792,
  "needRetry": true,
  "extendInfo": {
    "mapKey": {}
  }
}

1.5. 根据账户手机号查询账户详情

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#accountInfoByPhoneNo(com.aliyun.fsi.insurance.sso.dto.AccountPhoneNoQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
phoneNostring手机号true-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/account-info-by-phone-no --data '{
  "phoneNo": "nuoyhv"
}'

Response-fields:

FieldTypeDescriptionSince
dataobjectNo comments found.-
└─accIdstring账户Id-
└─accountNamestring登录名称-
└─externalIdstring外部id-
└─displayNamestring显示名称-
└─accountRolestring账户角色(1:普通用户,2:超级管理员)-
└─accountTypestring账户类型(0:内部账户,1:外部账户)-
└─phoneNostring手机号-
└─emailstring邮箱-
└─accountStartDtstring账户有效期-起期-
└─accountEndDtstring账户有效期-止期-
└─faceIdstring人脸识别图片fileid-
└─avatarIdstring账户图片fileid-
└─branchOrgCodestring归属组织编码-
└─branchOrgNamestring归属组织名称-
└─operatingOrgCodestring所属经营组织编码-
└─operatingOrgNamestring所属经营组织编码-
└─externalSourcestring外部id所属来源(应用名)-
└─externalHeadstring外部负责人-
externalClassificationstring外部账户业务分类-
└─isValidboolean是否有效(true在职,false离职)-
└─beforePhoneNostring之前使用的手机号-
└─beforeEmailstring之前使用的手机号-
└─gmtModifiedstring修改时间-
└─twoFactorboolean二次认证状态(true:开启,false:关闭)-
pageSizeint32No comments found.-
totalCountint32No comments found.-
pageIndexint32No comments found.-
messageobjectNo comments found.-
statusint32No comments found.-

Response-example:

{
  "data": {
    "accId": "75",
    "accountName": "huey.nader",
    "externalId": "75",
    "displayName": "huey.nader",
    "accountRole": "nchqlb",
    "accountType": "wk2mz3",
    "phoneNo": "lc33x8",
    "email": "rutha.pagac@yahoo.com",
    "accountStartDt": "vdxae8",
    "accountEndDt": "j9gw2a",
    "faceId": "75",
    "avatarId": "75",
    "branchOrgCode": "86060",
    "branchOrgName": "huey.nader",
    "operatingOrgCode": "86060",
    "operatingOrgName": "huey.nader",
    "externalSource": "rdkji2",
    "externalHead": "f1ec8k",
    "isValid": true,
    "beforePhoneNo": "i36qx7",
    "beforeEmail": "rutha.pagac@yahoo.com",
    "gmtModified": "2023-11-15 15:07:58",
    "twoFactor": true
  },
  "pageSize": 10,
  "totalCount": 611,
  "pageIndex": 1,
  "message": {},
  "status": 389
}

1.6. 根据钉钉userId获取账号信息

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#accountInfoByDingUserId(com.aliyun.fsi.insurance.sso.dto.AccountDingUserIdQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
dingUserIdstring钉钉idtrue-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/cic.aboss.sso.v2.getAccountInfoByDingUserId/2 --data '{
  "dingUserId": "58"
}'

Response-fields:

FieldTypeDescriptionSince
dataobjectNo comments found.-
└─accIdstring账户Id-
└─accountNamestring登录名称-
└─externalIdstring外部id-
└─displayNamestring显示名称-
└─accountRolestring账户角色(1:普通用户,2:超级管理员)-
└─accountTypestring账户类型(0:内部账户,1:外部账户)-
└─phoneNostring手机号-
└─emailstring邮箱-
└─accountStartDtstring账户有效期-起期-
└─accountEndDtstring账户有效期-止期-
└─faceIdstring人脸识别图片fileid-
└─avatarIdstring账户图片fileid-
└─branchOrgCodestring归属组织编码-
└─branchOrgNamestring归属组织名称-
└─operatingOrgCodestring所属经营组织编码-
└─operatingOrgNamestring所属经营组织编码-
└─externalSourcestring外部id所属来源(应用名)-
└─externalHeadstring外部负责人-
externalClassificationstring外部账户业务分类-
└─enabledboolean账户状态(true:启用,false:禁用)-
└─isValidboolean在职离职

true-在职

false-离职
-
└─twoFactorboolean二次认证状态(true:开启,false:关闭)-
└─dingUserIdstring钉钉userId-
└─beforePhoneNostring之前使用的手机号-
└─beforeEmailstring之前使用的邮箱-
└─gmtModifiedstring修改时间-
pageSizeint32No comments found.-
pageIndexint32No comments found.-
totalCountint32No comments found.-
messageobjectNo comments found.-
statusint321-SUCCESS

2-FAIL

3-UNKNOWN
-

Response-example:

{
  "data": {
    "accId": "58",
    "accountName": "miriam.mertz",
    "externalId": "58",
    "displayName": "miriam.mertz",
    "accountRole": "jh93n7",
    "accountType": "bqk10a",
    "phoneNo": "p2xsjy",
    "email": "ernesto.farrell@hotmail.com",
    "accountStartDt": "r73d61",
    "accountEndDt": "955odb",
    "faceId": "58",
    "avatarId": "58",
    "branchOrgCode": "29192",
    "branchOrgName": "miriam.mertz",
    "operatingOrgCode": "29192",
    "operatingOrgName": "miriam.mertz",
    "externalSource": "gjchaz",
    "externalHead": "2zp3vo",
    "enabled": true,
    "isValid": true,
    "twoFactor": true,
    "dingUserId": "58",
    "beforePhoneNo": "ejcpia",
    "beforeEmail": "ernesto.farrell@hotmail.com",
    "gmtModified": "2024-03-06 17:37:53"
  },
  "pageSize": 10,
  "pageIndex": 1,
  "totalCount": 75,
  "message": {},
  "status": 1
}

1.7. 根据账户id查询人脸识别图片

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#accountFaceImage(com.aliyun.fsi.insurance.sso.dto.AccountFullIdQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
accountIdstring账户idtrue-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/account-face-image --data '{
  "accountId": "75"
}'

Response-fields:

FieldTypeDescriptionSince
dataobjectNo comments found.-
└─fileIdstring文件id-
└─fileNamestring文件名-
└─sizeint64文件大小-
└─mimeTypestring文件mime类型-
└─gmtCreatestring创建(上传)时间-
└─urlstringurl-
└─thnUrlstring缩略图url-
└─accountIdstring账户Id-
└─accountNamestring登录名称-
pageSizeint32No comments found.-
totalCountint32No comments found.-
pageIndexint32No comments found.-
messageobjectNo comments found.-
statusint32No comments found.-

Response-example:

{
  "data": {
    "fileId": "75",
    "fileName": "huey.nader",
    "size": 910,
    "mimeType": "mxjkq0",
    "gmtCreate": "2023-11-15 15:07:57",
    "url": "www.alexandria-pfannerstill.com",
    "thnUrl": "www.alexandria-pfannerstill.com",
    "accountId": "75",
    "accountName": "huey.nader"
  },
  "pageSize": 10,
  "totalCount": 613,
  "pageIndex": 1,
  "message": {},
  "status": 401
}

1.8. 根据账户信息查询账户信息列表(分页,最多返回100条)

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#accountListByAccount(com.aliyun.fsi.insurance.sso.dto.AccountFullQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
pageSizeint32每页展示条数(最大100条)true-
pageIndexint32当前页码true-
accIdstring账户idfalse-
displayNamestring显示名(模糊查询左匹配)false-
accountTypestring账户类型(0:内部账户,1:外部账户)false-
branchOrgCodestring归属组织编码(返回当前机构以及子机构)false-
enabledboolean是否启用(true:启用,false:停用)false-
isValidboolean在职状态(true:在职,false:离职)false-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/account-list-by-account --data '{
  "pageSize": 10,
  "pageIndex": 1,
  "accId": "160",
  "displayName": "paul.hoeger",
  "branchOrgCode": "7279",
  "enabled": true,
  "isValid": true
}'

Response-fields:

FieldTypeDescriptionSince
dataarrayNo comments found.-
└─accIdstring账户Id-
└─accountNamestring登录名称-
└─externalIdstring外部id-
└─displayNamestring显示名称-
└─accountRolestring账户角色(1:普通用户,2:超级管理员)-
└─accountTypestring账户类型(0:内部账户,1:外部账户)-
└─phoneNostring手机号-
└─emailstring邮箱-
└─accountStartDtstring账户有效期-起期-
└─accountEndDtstring账户有效期-止期-
└─faceIdstring人脸识别图片fileid-
└─avatarIdstring账户图片fileid-
└─branchOrgCodestring归属组织编码-
└─branchOrgNamestring归属组织名称-
└─operatingOrgCodestring所属经营组织编码-
└─operatingOrgNamestring所属经营组织编码-
└─externalSourcestring外部id所属来源(应用名)-
└─externalHeadstring外部负责人-
externalClassificationstring外部账户业务分类-
└─enabledboolean账户状态(true:启用,false:禁用)-
└─isValidboolean是否有效-
└─twoFactorboolean二次认证状态(true:开启,false:关闭)-
└─dingUserIdstring钉钉userId-
└─beforePhoneNostring之前使用的手机号-
└─beforeEmailstring之前使用的邮箱-
└─gmtModifiedstring修改时间-
pageSizeint32No comments found.-
pageIndexint32No comments found.-
totalCountint32No comments found.-
messageobjectNo comments found.-
└─codestringNo comments found.-
└─messagestringNo comments found.-
└─errorContextobjectNo comments found.-
└─errorStackarrayNo comments found.-
└─thirdPartyErrorstringNo comments found.-
└─errorVariableMapmapNo comments found.-
└─any objectobjectany object.-
statusint32No comments found.-
needRetrybooleanNo comments found.-
extendInfomapNo comments found.-
└─any objectobjectany object.-

Response-example:

{
  "data": [
    {
      "accId": "160",
      "accountName": "paul.hoeger",
      "externalId": "160",
      "displayName": "paul.hoeger",
      "accountRole": "w81roe",
      "accountType": "xrdirp",
      "phoneNo": "rhgzfk",
      "email": "spencer.lakin@yahoo.com",
      "accountStartDt": "iakvwj",
      "accountEndDt": "6w5zo3",
      "faceId": "160",
      "avatarId": "160",
      "branchOrgCode": "7279",
      "branchOrgName": "paul.hoeger",
      "operatingOrgCode": "7279",
      "operatingOrgName": "paul.hoeger",
      "externalSource": "yfj8mi",
      "externalHead": "d26vov",
      "enabled": true,
      "isValid": true,
      "twoFactor": true,
      "dingUserId": "160",
      "beforePhoneNo": "eviqhw",
      "beforeEmail": "spencer.lakin@yahoo.com",
      "gmtModified": "2024-03-26 17:32:42"
    }
  ],
  "pageSize": 10,
  "pageIndex": 1,
  "totalCount": 940,
  "message": {
    "code": "7279",
    "message": "success",
    "errorContext": {
      "errorStack": [
        {
          "object": "any object"
        }
      ],
      "thirdPartyError": "cw1ity",
      "errorVariableMap": {
        "mapKey": {}
      }
    }
  },
  "status": 393,
  "needRetry": true,
  "extendInfo": {
    "mapKey": {}
  }
}

2. 外部账号相关

2.1. 根据外部id+外部来源查询外部账户集合

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#accountListByExternalIds(com.aliyun.fsi.insurance.sso.dto.AccountExternalIdsQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
externalIdsarray外部id集合true-
externalSourcestring外部来源true-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/account-list-by-external-ids --data '{
  "externalIds": [
    "3rlyb6"
  ],
  "externalSource": "bjimxy"
}'

Response-fields:

FieldTypeDescriptionSince
dataarrayNo comments found.-
└─accIdstring账户Id-
└─accountNamestring登录名称-
└─externalIdstring外部id-
└─displayNamestring显示名称-
└─accountRolestring账户角色(1:普通用户,2:超级管理员)-
└─accountTypestring账户类型(0:内部账户,1:外部账户)-
└─phoneNostring手机号-
└─emailstring邮箱-
└─accountStartDtstring账户有效期-起期-
└─accountEndDtstring账户有效期-止期-
└─faceIdstring人脸识别图片fileid-
└─avatarIdstring账户图片fileid-
└─branchOrgCodestring归属组织编码-
└─branchOrgNamestring归属组织名称-
└─operatingOrgCodestring所属经营组织编码-
└─operatingOrgNamestring所属经营组织编码-
└─externalSourcestring外部id所属来源(应用名)-
└─externalHeadstring外部负责人-
externalClassificationstring外部账户业务分类-
└─enabledboolean账户状态(true:启用,false:禁用)-
└─isValidboolean是否有效-
└─twoFactorboolean二次认证状态(true:开启,false:关闭)-
└─dingUserIdstring钉钉userId-
└─beforePhoneNostring之前使用的手机号-
└─beforeEmailstring之前使用的邮箱-
└─gmtModifiedstring修改时间-
pageSizeint32No comments found.-
totalCountint32No comments found.-
pageIndexint32No comments found.-
messageobjectNo comments found.-
statusint32No comments found.-

Response-example:

{
  "data": [
    {
      "accId": "96",
      "accountName": "andy.rath",
      "externalId": "96",
      "displayName": "andy.rath",
      "accountRole": "zftidj",
      "accountType": "8kp0n7",
      "phoneNo": "3d4cju",
      "email": "thurman.satterfield@gmail.com",
      "accountStartDt": "14fux9",
      "accountEndDt": "wfoivp",
      "faceId": "96",
      "avatarId": "96",
      "branchOrgCode": "68766",
      "branchOrgName": "andy.rath",
      "operatingOrgCode": "68766",
      "operatingOrgName": "andy.rath",
      "externalSource": "azdcbc",
      "externalHead": "7g2mwv",
      "enabled": true,
      "isValid": true,
      "twoFactor": true,
      "dingUserId": "96",
      "beforePhoneNo": "gwgq4h",
      "beforeEmail": "thurman.satterfield@gmail.com",
      "gmtModified": "2024-02-29 16:47:06"
    }
  ],
  "pageSize": 10,
  "totalCount": 612,
  "pageIndex": 1,
  "message": {},
  "status": 714
}

2.2. 根据外部账户来源查询账户信息(分页,最多返回100条)

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#accountListByExternalSource(com.aliyun.fsi.insurance.sso.dto.ExternalSourceQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
pageSizeint32每页展示条数true-
pageIndexint32当前页码true-
externalSourcestring外部来源true-
isValidboolean在职状态(true:在职,false:离职,不传返回所有)false-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/account-list-by-keyword --data '{
  "pageSize": 10,
  "pageIndex": 1,
  "externalSource": "ey9w96",
  "isValid": true
}'

Response-fields:

FieldTypeDescriptionSince
dataarrayNo comments found.-
└─accIdstring账户Id-
└─accountNamestring登录名称-
└─externalIdstring外部id-
└─displayNamestring显示名称-
└─accountRolestring账户角色(1:普通用户,2:超级管理员)-
└─accountTypestring账户类型(0:内部账户,1:外部账户)-
└─phoneNostring手机号-
└─emailstring邮箱-
└─accountStartDtstring账户有效期-起期-
└─accountEndDtstring账户有效期-止期-
└─faceIdstring人脸识别图片fileid-
└─avatarIdstring账户图片fileid-
└─branchOrgCodestring归属组织编码-
└─branchOrgNamestring归属组织名称-
└─operatingOrgCodestring所属经营组织编码-
└─operatingOrgNamestring所属经营组织编码-
└─externalSourcestring外部id所属来源(应用名)-
└─externalHeadstring外部负责人-
externalClassificationstring外部账户业务分类-
└─isValidboolean是否有效(true在职,false离职)-
└─twoFactorboolean二次认证状态(true:开启,false:关闭)
└─beforePhoneNostring之前使用的手机号-
└─beforeEmailstring之前使用的手机号-
pageIndexint32No comments found.-
totalCountint32No comments found.-
pageSizeint32No comments found.-
messageobjectNo comments found.-
statusint32No comments found.-
needRetrybooleanNo comments found.-
extendInfomapNo comments found.-
└─any objectobjectany object.-

Response-example:

{
  "data": [
    {
      "accId": "57",
      "accountName": "stacey.olson",
      "externalId": "57",
      "displayName": "stacey.olson",
      "accountRole": "dzoaj9",
      "accountType": "ko3by4",
      "phoneNo": "1xyweo",
      "email": "devin.hilll@yahoo.com",
      "accountStartDt": "hfimy0",
      "accountEndDt": "8lrd8l",
      "faceId": "57",
      "avatarId": "57",
      "branchOrgCode": "63368",
      "branchOrgName": "stacey.olson",
      "operatingOrgCode": "63368",
      "operatingOrgName": "stacey.olson",
      "externalSource": "t0eqh0",
      "externalHead": "lqj3uh",
      "isValid": true,
      "twoFactor": true,
      "beforePhoneNo": "hfaoms",
      "beforeEmail": "devin.hilll@yahoo.com"
    }
  ],
  "pageIndex": 1,
  "totalCount": 185,
  "pageSize": 10,
  "message": {},
  "status": 897,
  "needRetry": true,
  "extendInfo": {
    "mapKey": {}
  }
}

2.3. 创建外部账户

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#createExternalAccount(com.aliyun.fsi.insurance.sso.dto.ExternalAccountCmd)

Body-parameters:

ParameterTypeDescriptionRequiredSince
customCodestring自定义编码(账户名=zhex+2位账号来源简称+4位customCode+5位随机流水号)false-
externalIdstring外部idtrue
displayNamestring显示名true-
joinCompDtstring入司日期(yyyy-MM-dd)false-
leaveCompDtstring过期时间(yyyy-MM-dd,不填默认当前时间延后三个月过期)false-
phoneNostring手机号true-
emailstring邮箱false-
branchOrgCodestring机构编码true-
externalHeadstring外部负责人true-
externalSourcestring外部来源true-
externalClassificationstring外部账户业务分类false

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/create-external-account --data '{
  "externalId": "101",
  "displayName": "lavona.marks",
  "joinCompDt": "vvnq7u",
  "leaveCompDt": "czk9gr",
  "phoneNo": "nj5lwe",
  "email": "shaun.leffler@yahoo.com",
  "branchOrgCode": "24011",
  "externalHead": "lmkzf5",
  "externalSource": "j85z4l"
}'

Response-example:

string

2.4. 修改外部账户

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#updateExternalAccount(com.aliyun.fsi.insurance.sso.dto.ExternalAccountUpdateCmd)

Body-parameters:

ParameterTypeDescriptionRequiredSince
externalIdstring外部idtrue-
displayNamestring显示名false-
accountStartDtstring入司日期(yyyy-MM-dd)false-
accountEndDtstring过期时间(yyyy-MM-dd,不填默认当前时间延后三个月过期)false-
phoneNostring手机号false-
emailstring邮箱false-
branchOrgCodestring机构编码false-
externalHeadstring外部负责人false-
externalSourcestring外部来源true-
externalClassificationstring外部账户业务分类false

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/update-external-account --data '{
  "externalId": "31",
  "displayName": "miesha.gibson",
  "accountStartDt": "957371",
  "accountEndDt": "4vt22r",
  "phoneNo": "cr2qbv",
  "email": "ignacio.cremin@yahoo.com",
  "branchOrgCode": "98659",
  "externalHead": "6m5oqa",
  "externalSource": "bu5mxw"
}'

Response-example:

string

2.5. 离职外部账户

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#invalidExternalAccount(com.aliyun.fsi.insurance.sso.dto.ExternalAccountInvalidCmd)

Body-parameters:

ParameterTypeDescriptionRequiredSince
externalIdstring外部idtrue-
externalSourcestring外部来源true-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/invalid-external-account --data '{
  "externalId": "75",
  "externalSource": "gn75ie"
}'

Response-fields:

FieldTypeDescriptionSince
dataobjectNo comments found.-
pageSizeint32No comments found.-
totalCountint32No comments found.-
pageIndexint32No comments found.-
messageobjectNo comments found.-
statusint32No comments found.-

Response-example:

{
  "data": "u7jzxe",
  "pageSize": 10,
  "totalCount": 391,
  "pageIndex": 1,
  "message": {},
  "status": 438
}

2.6. 返聘外部账户

Description: com.aliyun.fsi.insurance.sso.api.AccountRpcFacade#rehiredExternalAccount(com.aliyun.fsi.insurance.sso.dto.ExternalAccountRehiredCmd)

Body-parameters:

ParameterTypeDescriptionRequiredSince
externalIdstring外部idtrue-
accountStartDtstring入司日期(yyyy-MM-dd)true-
accountEndDtstring离司时间(yyyy-MM-dd)true-
phoneNostring手机号true-
externalSourcestring外部来源true-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/rehired-external-account --data '{
  "externalId": "75",
  "accountStartDt": "urco0u",
  "accountEndDt": "7vnz00",
  "phoneNo": "gkgr4v",
  "externalSource": "4w89pv"
}'

Response-fields:

FieldTypeDescriptionSince
dataobjectNo comments found.-
pageSizeint32No comments found.-
totalCountint32No comments found.-
pageIndexint32No comments found.-
messageobjectNo comments found.-
statusint32No comments found.-

Response-example:

{
  "data": "hl1bu2",
  "pageSize": 10,
  "totalCount": 61,
  "pageIndex": 1,
  "message": {},
  "status": 758
}

3. 账号扩展属性

3.1. 添加账户扩展属性

Description: com.aliyun.fsi.insurance.sso.impl.AccountExtendRpcFacadeImpl#addAccountExtend(com.aliyun.fsi.insurance.sso.dto.AccountExtendAddCmd)

Body-parameters:

ParameterTypeDescriptionRequiredSince
accIdstring账户idtrue-
keystring扩展keytrue-
valuestring扩展valuetrue-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/add-account-extend --data '{
  "accId": "75",
  "key": "dxkqt9",
  "value": "xce6rt"
}'

Response-example:

true

3.2. 修改账户扩展属性

Description: com.aliyun.fsi.insurance.sso.api.AccountExtendRpcFacade#updateAccountExtend(com.aliyun.fsi.insurance.sso.dto.AccountExtendUpdateCmd)

Body-parameters:

ParameterTypeDescriptionRequiredSince
accIdstring账户idtrue-
keystring扩展keytrue-
valuestring扩展valuetrue-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/update-account-extend --data '{
  "accId": "75",
  "key": "g2wsmz",
  "value": "51fhx7"
}'

Response-example:

true

3.3. 删除账户扩展属性

Description: com.aliyun.fsi.insurance.sso.api.AccountExtendRpcFacade#deleteAccountExtend(com.aliyun.fsi.insurance.sso.dto.AccountExtendDeleteCmd)

Body-parameters:

ParameterTypeDescriptionRequiredSince
accIdstring账户idtrue-
keystring扩展keytrue-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/delete-account-extend --data '{
  "accId": "75",
  "key": "3swaym"
}'

Response-example:

true

3.4. 查询账户扩展属性列表

Description: com.aliyun.fsi.insurance.sso.api.AccountExtendRpcFacade#queryAccountExtends(com.aliyun.fsi.insurance.sso.dto.AccountIdsQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
accIdsarray账户id集合(最多50条记录)true-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/query-account-extends --data '{
  "accIds": [
    "ie6hd4"
  ]
}'

Response-fields:

FieldTypeDescriptionSince
Map<String, Map<String, String>>object键值对集合

{“accId”: {“key1”: “value1”,“key2”: “value2” }}
-

Response-example:

{
  "1234561": {
    "key1": "value111111",
    "key11": "value1111111"
  },
  "123456": {
    "key11": "value11",
    "key": "value"
  }
}

3.5. 根据扩展key和扩展value查询账户id集合(分页)

Description: com.aliyun.fsi.insurance.sso.api.AccountExtendRpcFacade#queryAccountIdsByKeyAndValue(com.aliyun.fsi.insurance.sso.dto.AccountExtendKeyAndValueQry)

Body-parameters:

ParameterTypeDescriptionRequiredSince
pageSizeint32每页展示条数(最大100条)true-
pageIndexint32当前页码true-
keystring拓展keytrue-
valuestring拓展valuetrue-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/query-account-extends-by-key-and-value --data '{
  "pageSize": 10,
  "pageIndex": 1,
  "key": "d21hkw",
  "value": "xsgmjv"
}'

Response-fields:

FieldTypeDescriptionSince
dataarrayNo comments found.-
pageIndexint32No comments found.-
totalCountint32No comments found.-
pageSizeint32No comments found.-
messageobjectNo comments found.-
statusint32No comments found.-
needRetrybooleanNo comments found.-
extendInfomapNo comments found.-
└─any objectobjectany object.-

4. 签名

4.1.查询签名

URL: /platform/api/aboss/sso/rpc/sign/query-signature

Type: POST

com.aliyun.fsi.insurance.sso.api.AccountSignatureRpcFacade#querySignatureByAccountId(AccountIdQry)

Content-Type: application/json; charset=utf-8

Description: 查询签名

Body-parameters:

ParameterTypeDescriptionRequiredSince
accIdstring账户idtrue-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/sign/query-signature --data '{
  "accId": "128"
}'

Response-fields:

FieldTypeDescriptionSince
accountIdstring账户Id-
displayNamestring账户 名-
signstring签名-

Response-example:

{
  "accountId": "128",
  "displayName": "booker.stanton",
  "sign": "ac1qac"
}

4.2.存储签名

URL: /platform/api/aboss/sso/rpc/sign/save-signature

Type: POST

com.aliyun.fsi.insurance.sso.api.AccountSignatureRpcFacade#saveSignature(InsertAccountSignCmd)Content-Type: application/json; charset=utf-8

Description: 存储签名

Body-parameters:

ParameterTypeDescriptionRequiredSince
accountIdstring账号Idtrue-
signstring账号签名true-

Request-example:

curl -X POST -H 'Content-Type: application/json; charset=utf-8' -i /platform/api/aboss/sso/rpc/sign/save-signature --data '{
  "accountId": "128",
  "sign": "ke0nwe"
}'

Response-example:

true

三、常见问题及处理方法

1.如果调用附录中的几个接口可能会报如下错误:

REQUESTSOURCE不存在,非法请求!

访问路由REQUESTSOURCE未配置!

解决方法:见附录

四、附录

2.6-2.10、2.14、2.15有权限控制,需填写如下申请单

访问方法请求来源备注
com.aliyun.fsi.insurance.sso.impl.AccountRpcFacadeImpl#accountListByKeywordaboss-ssorpc请求填写的是应用名
com.aliyun.fsi.insurance.sso.impl.AccountRpcFacadeImpl#accountListByKeyword/support/basicData/association/queryhttp请求填写的是referer