人员与认证管理 API

管理企业成员信息、状态,以及处理个人实名认证流程

人员与认证管理

这些API用于管理企业内部的人员信息,以及处理个人用户的实名认证流程。您可以添加新成员、查询信息、发起或更新认证状态、获取认证链接以及进行访问授权和删除操作。

重要提示: 调用本分类下所有接口时,请务必在 HTTP 请求 Header 中携带有效的 appId, accessToken, userId (操作人ID), 和 source (来源标识) 作为通用认证参数。关于 source 参数的详细说明和取值,请参考快速开始章节。文档中的请求示例将仅展示放入 Body 中的业务参数。

POST /member/create 添加人员

在指定企业下添加一个新的成员信息。

请求 Header (通用认证参数)

参数名类型必填描述
appIdstring您的应用ID
accessTokenstring获取到的有效访问令牌
userIdinteger (int64)执行此操作的用户ID (操作人)
sourcestring来源标识 (pc, app, h5, wx, alipay)

请求参数 (Body - 新增人员实体类)

参数名 类型 必填 描述
userName string 用户名称(昵称)
mobile string 手机号
jobNum string 工号

请求示例

CURL
curl -X POST 'https://your-api-host.com/member/create' \
-H 'Content-Type: application/json' \
-H 'appId: YOUR_APP_ID' \
-H 'accessToken: YOUR_ACCESS_TOKEN' \
-H 'userId: OPERATOR_USER_ID' \
-H 'source: pc' \
-d '{
  "userName": "王五",
  "mobile": "13700137000",
  "jobNum": "EMP003"
}'
									

响应

成功响应 (200 OK)
错误响应
{
  "code": "200",
  "msg": "成功",
  "data": { // 用户状态实体类 (具体字段见下表)
    "userId": 20003,
    "userName": "王五",
    "mobile": "13700137000",
    "realName": null,
    "realNameStatus": 0,
    "userStatus": 0
    // 注意:JSON 定义中没有 roles 相关字段,但旧HTML有,此处以JSON为准
  }
}
									
{
  "code": "MEMBER_MOBILE_EXIST", // 示例错误码,具体以实际为准
  "msg": "手机号已被注册",
  "data": null
}
									

成功响应参数 (data 字段内 - 用户状态实体类)

参数名类型描述
userIdinteger (int64)用户id
userNamestring用户名称(昵称)
mobilestring手机号
realNamestring真实姓名 (认证后才有值)
realNameStatusinteger (int32)实名状态 (0: 未实名, 1: 已实名)
userStatusinteger (int32)用户状态 (0: 有效, 1: 无效)
POST /member/infoByCorpId 查询企业成员信息

根据用户ID、姓名或手机号查询指定企业下的成员信息列表。

请求 Header (通用认证参数)

参数名类型必填描述
appIdstring您的应用ID
accessTokenstring获取到的有效访问令牌
userIdinteger (int64)执行此操作的用户ID (操作人)

请求参数 (Body - 查询企业下人员信息实体类)

参数名类型必填描述
userIdinteger (int64)用户ID (用于筛选)
userNamestring用户名称(昵称) (用于筛选)
mobilestring手机号 (用于筛选)
realNameStatusstring实名状态 (0: 未实名, 1: 已实名) (用于筛选)

注意: 至少提供一个查询参数进行筛选。

请求示例

CURL
curl -X POST 'https://your-api-host.com/member/infoByCorpId' \
-H 'Content-Type: application/json' \
-H 'appId: YOUR_APP_ID' \
-H 'accessToken: YOUR_ACCESS_TOKEN' \
-H 'userId: OPERATOR_USER_ID' \
-d '{
  "mobile": "13800138000"
}'
									

响应

成功响应 (200 OK)
错误响应
{
  "code": "200",
  "msg": "成功",
  "data": [ // 用户状态实体类列表
    {
      "userId": 20001,
      "userName": "张三",
      "mobile": "13800138000",
      "userStatus": 0,
      "realName": "张三",
      "realNameStatus": 1
    }
    // ... 其他匹配的用户
  ]
}
									
{
  "code": "MEMBER_NOT_FOUND", // 示例
  "msg": "未查询到匹配的用户",
  "data": null
}
									

成功响应参数 (data 字段内数组元素的结构 - 用户状态实体类)

参数名类型描述
userIdinteger (int64)用户id
userNamestring用户名称(昵称)
mobilestring手机号
userStatusinteger (int32)用户状态 (0: 有效, 1: 无效)
realNamestring真实姓名
realNameStatusinteger (int32)实名状态
POST /member/infoByUserId 个人信息查询

根据用户ID查询详细的个人信息,包括实名状态、联系方式、证件信息(脱敏)等。

请求 Header (通用认证参数)

参数名类型必填描述
appIdstring您的应用ID
accessTokenstring获取到的有效访问令牌
userIdinteger (int64)执行此操作的用户ID (操作人)

请求参数 (Body - 个人实名状态查询实体类)

参数名 类型 必填 描述
userId integer (int64) 需要查询的用户ID

请求示例

CURL
curl -X POST 'https://your-api-host.com/member/infoByUserId' \
-H 'Content-Type: application/json' \
-H 'appId: YOUR_APP_ID' \
-H 'accessToken: YOUR_ACCESS_TOKEN' \
-H 'userId: OPERATOR_USER_ID' \
-d '{
  "userId": 20002
}'
									

响应

成功响应 (200 OK)
错误响应
{
  "code": "200", // 注意: JSON 定义返回码是字符串"200", 但旧HTML是数字0, 这里遵循JSON
  "msg": "成功",
  "data": { // 用户信息实体类 (具体字段见下表)
    "userId": 20002,
    "userCode": "M0002", // JSON中有, 旧HTML无
    "userName": "李四",
    "mobile": "13800138001",
    "jobNum": "EMP002", // JSON中有, 旧HTML无
    "userStatus": 0,
    "realName": "李四",
    "realNameStatus": 1,
    "identMethod": "face",
    "identSuccessTime": "2023-11-01T10:00:00.000+0800",
    "signPwdSet": 1,
    "createTime": "2023-10-31T15:00:00.000+0800"
    // 省略了旧HTML中有但JSON定义没有的字段,如email, headerImg, identType, identNum, signPwdData, updateTime, wxOpenId, extendInfo, deleted, version, createBy, updateBy
  }
}
									
{
  "code": "MEMBER_NOT_FOUND", // 示例
  "msg": "用户不存在",
  "data": null
}
									

成功响应参数 (data 字段内 - 用户信息实体类)

参数名类型描述
userIdinteger (int64)主键ID
userCodestring用户编码
userNamestring用户名称(昵称)
mobilestring手机
jobNumstring工号
userStatusinteger (int32)用户状态 (0: 有效, 1: 无效)
realNamestring真实姓名
realNameStatusinteger (int32)实名状态
identMethodstring用户实名认证时方式 (mobile, face, bank, offline)
identSuccessTimestring (date-time)身份验证通过时间
signPwdSetinteger (int32)签署密码是否已设置 (0: 未设置, 1: 已设置)
createTimestring (date-time)创建时间
POST /member/infoByMobileOrName 根据手机号/姓名查询

根据手机号或姓名(昵称)模糊查询企业下的成员信息列表。常用于发起合同时选择签署方。

请求 Header (通用认证参数)

参数名类型必填描述
appIdstring您的应用ID
accessTokenstring获取到的有效访问令牌
userIdinteger (int64)执行此操作的用户ID (操作人)

请求参数 (Body - 查询-根据手机号,或用户名称查询会员实体类)

参数名 类型 必填 描述
paramString string 查询参数,支持手机号、姓名模糊查询

请求示例

CURL
curl -X POST 'https://your-api-host.com/member/infoByMobileOrName' \
-H 'Content-Type: application/json' \
-H 'appId: YOUR_APP_ID' \
-H 'accessToken: YOUR_ACCESS_TOKEN' \
-H 'userId: OPERATOR_USER_ID' \
-d '{
  "paramString": "李"
}'
									

响应

成功响应 (200 OK)
错误响应
{
  "code": "200", // JSON 定义为字符串
  "msg": "成功",
  "data": [ // 用户状态实体类列表 (具体字段见下表)
    {
      "userId": 20002,
      "userName": "李四",
      "mobile": "13800138001",
      "realNameStatus": 1
    }
    // ... 可能有更多匹配的用户
  ]
}
									
{
  "code": "PARAM_EMPTY", // 示例
  "msg": "查询参数不能为空",
  "data": null
}
									

成功响应参数 (data 字段内数组元素的结构 - 用户状态实体类)

参数名类型描述
userIdinteger (int64)用户id
userNamestring用户名称(昵称)
mobilestring手机号
realNameStatusinteger (int32)实名状态 (0: 未实名, 1: 已实名)
POST /member/memberAuth 个人认证更新

为当前操作用户(由 Header 中的 `userId` 决定)更新实名认证信息,并设置签署密码。通常用于对接第三方认证结果或后台补录场景。

请求 Header (通用认证参数)

参数名类型必填描述
appIdstring您的应用ID
accessTokenstring获取到的有效访问令牌
userIdinteger (int64)要更新认证信息的用户ID

请求参数 (Body - 个人认证更新实体类)

参数名 类型 必填 描述
realName string 真实姓名
identNum string 证件号码
signPwd string 签署密码(6位数字)

请求示例

CURL
curl -X POST 'https://your-api-host.com/member/memberAuth' \
-H 'Content-Type: application/json' \
-H 'appId: YOUR_APP_ID' \
-H 'accessToken: USER_TO_AUTH_ACCESS_TOKEN' \
-H 'userId: 20002' \
-d '{
  "realName": "李四",
  "identNum": "110101199001011234",
  "signPwd": "666888"
}'
									

响应

成功响应 (200 OK)
错误响应
{
  "code": "200", // JSON 定义为字符串
  "msg": "成功",
  "data": {} // 成功更新通常不返回具体业务数据
}
									
{
  "code": "AUTH_INFO_INVALID", // 示例
  "msg": "实名信息校验失败",
  "data": null
}
									
POST /member/getPersonalAuthUrl 获取个人实名链接

为当前操作用户(由 Header 中的 `userId` 决定)生成一个用于进行个人实名认证的页面链接。

请求 Header (通用认证参数)

参数名类型必填描述
appIdstring您的应用ID
accessTokenstring获取到的有效访问令牌
userIdinteger (int64)需要获取实名链接的用户ID

请求参数 (Body)

此接口请求 Body 为空。

请求示例

CURL
curl -X POST 'https://your-api-host.com/member/getPersonalAuthUrl' \
-H 'Content-Type: application/json' \
-H 'appId: YOUR_APP_ID' \
-H 'accessToken: USER_NEEDS_AUTH_URL_TOKEN' \
-H 'userId: 20003' \
-d '{}'
									

响应

成功响应 (200 OK)
错误响应
{
  "code": "200", // JSON 定义为字符串
  "msg": "成功",
  "data": "https://your-system-url.com/auth/personal?token=generated_auth_session_token" // 返回实名认证页面链接
}
									
{
  "code": "USER_ALREADY_AUTHENTICATED", // 示例
  "msg": "用户已实名,无需重复认证",
  "data": null
}
									
POST /member/fetchAuth 获取人脸认证地址

为当前操作用户(由 Header 中的 `userId` 决定)获取一个用于进行人脸识别认证的地址(通常用于实名认证环节)。

请求 Header (通用认证参数)

参数名类型必填描述
appIdstring您的应用ID
accessTokenstring获取到的有效访问令牌
userIdinteger (int64)需要获取人脸认证地址的用户ID

请求参数 (Body)

此接口请求 Body 为空。

请求示例

CURL
curl -X POST 'https://your-api-host.com/member/fetchAuth' \
-H 'Content-Type: application/json' \
-H 'appId: YOUR_APP_ID' \
-H 'accessToken: USER_NEEDS_FACE_AUTH_TOKEN' \
-H 'userId: 20003' \
-d '{}'
									

响应

成功响应 (200 OK)
错误响应
{
  "code": "200", // JSON 定义为字符串
  "msg": "成功",
  "data": "https://face-recognition-provider.com/verify?session_id=unique_face_session" // 返回人脸识别服务地址/链接
}
									
{
  "code": "FACE_SERVICE_UNAVAILABLE", // 示例
  "msg": "人脸识别服务暂不可用",
  "data": null
}
									
POST /fetchAuth/faceAuth 公共方法获取个人/法人人脸认证地址

根据不同的业务场景(如个人认证、法人认证、合同签署等),获取指定渠道的人脸识别认证H5页面地址。

请求 Header (通用认证参数)

参数名类型必填描述
appIdstring您的应用ID
accessTokenstring获取到的有效访问令牌
userIdinteger (int64)执行此操作的用户ID (操作人)

请求参数 (Body)

参数名类型必填描述
idstring关联的业务ID。根据authType不同而不同:
- person: 用户ID
- legal: 企业ID
- signContract: 流程ID (flowId)
- approvalSign: 审批ID (approvalId)
- receiveCorp: 企业ID
(批量业务单ID以逗号分隔)
authTypestring人脸认证类型。可选值: person, legal, signContract, approvalSign, receiveCorp
channelstring渠道标识。可选值: tencent (腾讯云), cdp (数据宝)
callbackUrlstring认证完成后前端跳转的回调地址 (URL需要进行Encode)。

请求示例 (获取个人认证地址)

CURL
curl -X POST 'https://your-api-host.com/fetchAuth/faceAuth' \
-H 'Content-Type: application/json' \
-H 'appId: YOUR_APP_ID' \
-H 'accessToken: YOUR_ACCESS_TOKEN' \
-H 'userId: REQUESTING_USER_ID' \
-d '{
  "id": "USER_ID_TO_AUTH",
  "authType": "person",
  "channel": "tencent",
  "callbackUrl": "https%3A%2F%2Fyourapp.com%2Fauth%2Fcallback"
}'
									

响应参数

参数名类型描述
codestring响应码,"200" 表示成功,其他表示错误。
msgstring响应消息。
dataobject响应数据,结构见下方的 人脸认证地址返回

响应示例

成功响应 (200 OK)
{
  "code": "200",
  "msg": "success",
  "data": {
    "url": "https://faceid.qq.com/h5/...",
    "corpName": null,
    "isLegal": false,
    "realNameStatus": null
  }
}
									

成功响应参数 (data 字段内 - 人脸认证地址返回)

参数名类型描述
urlstring人脸认证H5地址
corpNamestring企业名称 (法人认证时返回)
isLegalboolean是否法人 (法人认证时返回)
realNameStatusinteger (int32)实名状态 (找回企业时返回)

错误码

HTTP状态码/业务码描述
200成功
400请求参数错误 (如authType无效, 渠道不支持)
401未授权
403禁止访问
404关联的业务ID(用户/企业/流程等)不存在
500服务器内部错误 (如生成URL失败)
POST /member/accessAuth 人员访问授权

为指定的人员(通过 Body 中的 `userId` 指定)生成一个临时的访问令牌或带令牌的 URL,允许其访问某些受限资源或执行操作。

请求 Header (通用认证参数)

参数名类型必填描述
appIdstring您的应用ID
accessTokenstring获取到的有效访问令牌 (操作人凭证)
userIdinteger (int64)执行此操作的用户ID (操作人)

请求参数 (Body - 人员访问授权实体类)

参数名 类型 必填 描述
userId integer (int64) 需要授权访问的用户ID

请求示例

CURL
curl -X POST 'https://your-api-host.com/member/accessAuth' \
-H 'Content-Type: application/json' \
-H 'appId: YOUR_APP_ID' \
-H 'accessToken: ADMIN_ACCESS_TOKEN' \
-H 'userId: 20001' \
-d '{
  "userId": 20002 // 需要授权的李四ID
}'
									

响应

成功响应 (200 OK)
错误响应
{
  "code": "200", // JSON 定义为字符串
  "msg": "成功",
  "data": "https://your-system-url.com/resource/access?temp_token=generated_access_token_for_member_20002" // 返回带令牌的访问链接或仅令牌
}
									
{
  "code": "AUTH_GENERATE_FAILED", // 示例
  "msg": "生成授权凭证失败",
  "data": null
}
									
POST /member/delete 删除人员

从指定企业中逻辑删除一个成员(通常是将其状态置为无效)。

请求 Header (通用认证参数)

参数名类型必填描述
appIdstring您的应用ID
accessTokenstring获取到的有效访问令牌 (操作人凭证)
userIdinteger (int64)执行此操作的用户ID (操作人)

请求参数 (Body - 删除人员实体类)

参数名 类型 必填 描述
userId integer (int64) 需要删除的用户ID

请求示例

CURL
curl -X POST 'https://your-api-host.com/member/delete' \
-H 'Content-Type: application/json' \
-H 'appId: YOUR_APP_ID' \
-H 'accessToken: ADMIN_ACCESS_TOKEN' \
-H 'userId: 20001' \
-d '{
  "userId": 20003 // 需要删除的王五ID
}'
									

响应

成功响应 (200 OK)
错误响应
{
  "code": "200", // JSON 定义为字符串
  "msg": "成功",
  "data": {} // 成功删除通常不返回具体数据
}
									
{
  "code": "MEMBER_DELETE_FAILED", // 示例
  "msg": "删除用户失败,可能有关联数据",
  "data": null
}