修改个人签署账号(通过accountId修改)

更新时间:2022-06-28 17:41:03

接口描述

此接口支持通过在【创建个人签署账号】接口返回的个人账号accounId来更新账号信息。

例如:

1. 更新账号的联系方式:手机号、邮箱

2. 若需更新姓名,则该账号会变为未实名状态,需要用户重新实名;

【注意】接口不支持变更证件类型证件号,建议开发者先调用【注销个人签署账号】接口,重新创建。

接口

/v1/accounts/{accountId}

请求方式

PUT

请求头

提供两种安全接入方式,开发者可选择其中一种方式进行对接,对应参数如何获取,参考文档【请点击】。

方式一:请求签名鉴权(优先推荐)

请求头入参示例如下:

参数名称

类型

必选

参数说明

X-Tsign-Open-App-Id

string

项目ID

Content-Type

string

application/json;charset=UTF-8

X-Tsign-Open-Ca-Timestamp

string

API 调用者传递时间戳,值为当前时间的毫秒数,也就是从1970年1月1日起至今的时间转换为毫秒,时间戳有效时间为15分钟,为了防重放攻击

Accept

string

建议统一填写 */*

X-Tsign-Open-Ca-Signature

string

签名字符串

Content-MD5

string

当请求 Body 非 Form 表单时,可以计算 Body 的 MD5 值传递给云网关进行 Body MD5 校验。建议当请求 Body 非 Form 表单时,加上此请求头。

X-Tsign-Open-Auth-Mode

string

选择请求方式进行鉴权,固定值,Signature

方式二:OAuth2.0鉴权(不推荐使用)

当安全接入选择OAuth2.0鉴权方式请点击查阅详情,请求头入参示例如下:

参数名称

类型

必选

参数说明

X-Tsign-Open-App-Id

string

项目ID

X-Tsign-Open-Token

string

通过获取鉴权Token接口返回

Content-Type

string

application/json; charset=UTF-8


请求参数

参数名称

类型

必选

参数类型

参数说明

accountId

string

path

账号id

email

string

body

联系方式,邮箱地址,默认不变

mobile

string

body

联系方式,手机号码,默认不变

name

string

body

姓名,默认不变

idType

string

body

证件类型,默认CRED_PSN_CH_IDCARD
CRED_PSN_CH_IDCARD 大陆身份证,默认值

CRED_PSN_CH_TWCARD 台湾来往大陆通行证

CRED_PSN_CH_MACAO 澳门来往大陆通行证CRED_PSN_CH_HONGKONG 香港来往大陆通行证CRED_PSN_PASSPORT 护照

(该字段只有为空才允许修改)

idNumber

string

body

证件号(该字段只有为空才允许修改)

公共响应参数

参数名称

类型

必选

参数说明

code

int

业务码,0表示成功

message

string

信息

data

object

业务信息

响应参数

参数名称

类型

必选

参数说明

accountId

string

个人账号id

name

string

姓名

idType

string

证件类型,枚举类型如下:

CRED_PSN_CH_IDCARD 大陆身份证,默认值

CRED_PSN_CH_TWCARD 台湾来往大陆通行证

CRED_PSN_CH_MACAO 澳门来往大陆通行证CRED_PSN_CH_HONGKONG 香港来往大陆通行证CRED_PSN_PASSPORT 护照

idNumber

string

证件号

mobile

string

联系方式,手机号码

email

string

联系方式,邮箱地址

thirdPartyUserId

string

第三方平台的用户id

请求示例  

{
    "email": "xxx@tsign.com",
    "mobile": "182681xxxxx",
    "name": "**"
}

Postman请求示例


Java请求示例

	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub

		// body请求参数
		String param = updatePersonAcctParam("xx@esign.cn", "182681xxxxx", "**");
		// 请求方式
		RequestType reqType = RequestType.PUT;
		// 请求URL
		String url = "https://smlopenapi.esign.cn/v1/accounts/1c04a729df94422ab8c8b664b5b13xxx";

		// 鉴权Token,注意token有效时长为120分钟。如果有多台机器建议使用分布式存储,新旧token会共存5分钟
		String token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJnSWQiOiI4N2I4YmJhNGY2N2U0ZjRiODQ3Njc2M2FmNTRjZGYxYSIsImFwcElkIjoiNDQzODc3MTgwOSIsIm9JZCI6ImJiZDNlYTExZWY0ZDQyNmI4NTYzNDhmYjg1MDYxM2ZmIiwidGltZXN0YW1wIjoxNTY5Mjg5MTUzOTIxfQ.GZ2aerBxk1QfB589BAtNGvDgT1nsMtrK0hOvguW-9GI";
		// 向指定URL发送http方法的请求
		JSONObject json = sendHttp(reqType, url, buildCommHeader(token), param);
		System.out.println(json.toJSONString());
	}

	/**
	 * @description 个人账号修改 参数
	 * 
	 *              待填充参数:
	 *              <p>
	 *              email:邮箱地址【可空】
	 *              <p>
	 *              mobile:联系手机号【可空】
	 *              <p>
	 *              name:姓名【可空】
	 * @return
	 */
	public static String updatePersonAcctParam(String email, String mobile, String name) {
		JSONObject json = new JSONObject();
		json.put("email", email);
		json.put("mobile", mobile);
		json.put("name", name);
		return json.toString();
	}

	/**
	 * @description 创建常规请求头
	 * @param token
	 * @return
	 */
	private static Map<String, String> buildCommHeader(String token) {
		Map<String, String> header = Maps.newHashMap();
		header.put("X-Tsign-Open-App-Id", "項目id");
		header.put("X-Tsign-Open-Token", token);
		header.put("Content-Type", "application/json");
		return header;
	}

	/**
	 * @description 发起HTTP / HTTPS 请求
	 *
	 * @param reqType {@link RequestType} 请求类型 GET、 POST 、 DELETE 、 PUT
	 * @param url     {@link String} 请求目标地址
	 * @param headers {@link Map} 请求头
	 * @param param   {@link Object} 参数
	 * @return
	 * @throws Exception
	 */
	public static JSONObject sendHttp(RequestType reqType, String url, Map<String, String> headers, Object param)
			throws Exception {
        ... ...
        }


响应示例

{
    "code":0,
    "message":"成功",
    "data":{
        "mobile":"182681xxxx",
        "email":"test@esign.cn",
        "cardNo":null,
        "name":"**",
        "accountId":"1eaf205d5d6d4e579a9d221d775xxxx",
        "idType":"CRED_PSN_CH_IDCARD",
        "idNumber":"372xxxxxxxxxxx3829",
        "thirdPartyUserId":"20xxxxxx111",
        "thirdPartyUserType":"_DEFAULT_USER"
    }
}


我要纠错