PARAMETERS方式接口 概述
本篇主要说明如何针对PARAMETERS方式的API接口请求参数进行签名。
API权限开通后,客户开发者可根据enterpriseId
与secretKey
(可咨询客户经理获取),将所有请求参数按照键值对、按字典序升序排序,并加上secretKey后,获得其32位大写MD5签名字符串,其中requestToken不参与签名。待MD5加密的拼接字符串格式为:
key1=value1&key2=value2&key3=value3{secretKey}
举例
以 getSalesWechatCustomers
接口为例,其请求参数包括:enterpriseId、queryIndicator、queryType、requestToken,假设账户的secretKey为1524ABDADB,enterpriseId为157204,queryIndicator与queryType都赋值为0,requestToken不参与加密
则拼接后待加密的字符串为:
enterpriseId=157204&queryIndicator=0&queryType=01524ABDADB
对其进行32位MD5大写加密后,获得的 requestToken为:
004CCD313F996CB69EAA121CB6CA3CB9
JSON方式接口 概述
本篇主要说明如何针对JSON方式的API接口请求参数进行签名。
API权限开通后,客户开发者可根据enterpriseId
与secretKey
(可咨询客户经理获取),将去除requestToken后的JSON字符串,在其尾部加上secretKey后,获得其32位大写MD5签名字符串,其中requestToken不参与签名。待MD5加密的拼接字符串格式为:
{"item1":"key1","item2":"key2"}{secretKey}
举例
以 delContactList
接口为例,假设账户的secretKey为1524ABDADB,enterpriseId为589083
则拼接后待加密的字符串为:
{"enterpriseId":"589083","delContents":[{"phoneId":"15900159000","contactNametoDel":["Alice","Tommy"]},{"phoneId":"15900159002","contactNametoDel":["Rubby","Justin"]}]}1524ABDADB
(请确保待MD5加密的字符串内,不存在 \r \n \t类特殊字符)
对其进行32位MD5大写加密后,获得的 requestToken为:
D648B906EDBF25E2866FFF78D3E659CC