API 通用说明
接入点
https://api-cn.unimtx.com
访问 区域及接入点 查看更多全球接入点。
公共参数
公共参数为调用 API 请求时必须携带的参数,统一使用 URL Query 参数传输。
参数名 | 类型 | 必须 | 描述 | 示例值 |
---|---|---|---|---|
action | string | 是 | 接口名 | sms.message.send |
accessKeyId | string | 是 | 请求 AccessKey ID | MvMa9eLy3BBpZqTj49vuAB |
访问鉴权
Unimatrix 提供以下两种鉴权方式共开发者选择,可在控制台-凭证管理中设置,默认为简易模式。
- 简易模式 [默认]:此模式仅核验
AccessKey ID
,不对请求参数进行验签,方便开发者快速接入。 - HMAC模式:此模式要求使用
AccessKey Secret
对请求参数进行验签,以加强保障请求的安全与真实性。
简易模式
使用简易模式完成访问认证,仅需将从控制台-凭证管理中获得 AccessKey ID
值传入 URL Query 参数 accessKeyId
即可完成鉴权。
HMAC模式
使用 HMAC 模式完成访问认证,需将所有 URL Query 参数按字典顺序排列作为待签文本串,并根据指定签名哈希算法进行签名。
新增所须公共参数 (Query) 如下:
参数名 | 类型 | 必须 | 描述 | 示例值 |
---|---|---|---|---|
algorithm | string | 是 | 签名哈希算法,目前仅支持 hmac-sha256 | hmac-sha256 |
timestamp | number | 是 | 时间戳 (ms),接受容差时间 10 分钟 | 1620243278785 |
nonce | string | 是 | 随机字符串,接受 8-64 个字符间的随机字符串 | e1098a414d09d2f6 |
signature | string | 是 | 签名串 | ZlbgmnCqB7Cgb3WI57Q4zrqq50xiQfi/LPbeL2kC |
签名生成步骤
-
提取请求中所有 URL Query 参数对,根据参数 Key 按字典顺序排序 (正序),以
=
连接 Key-Value,以&
连接参数对组成待签文本串,示例如下:accessKeyId=MvMa9eLy3BBpZqTj49vuAB&action=sms.message.send&algorithm=hmac-sha256&nonce=e1098a414d09d2f6×tamp=1620269782258
-
使用
HmacSHA256
算法,以AccessKey ID
对应的AccessKey Secret
作为签名秘钥,对待签文本串生成签名,输出为 Base64 (或 Hex) 字符串,示例如下:ZlbgmnCqB7Cgb3WI57Q4zrqq50xiQfi/LPbeL2kC
-
将签名串作为
signature
的值增加到请求 URL Query 参数中发送请求,最终完整的请求 URL 示例如下:https://api-cn.unimtx.com/?action=sms.message.send&accessKeyId=MvMa9eLy3BBpZqTj49vuAB&algorithm=hmac-sha256×tamp=1620269782258&nonce=e1098a414d09d2f6&signature=xvv9UjzOrQFWe7fFS5IUU9iqIZrncvF093SqXsnfcK8%3D