获取客户端API访问凭证
POST
/keyguard/authorization_code在调用向日葵客户端API前,您必须先使用该服务端API获取访问凭证
什么是访问凭证
访问凭证(code)是由向日葵平台颁发的,用来校验调用者身份信息,确保调用者拥有要执行的操作的权限。
参见:接口返回响应code
如何使用访问凭证
要调用客户端提供的开放能力,请将获取到的访问令牌作为Bearer令牌附加到HTTP请求中的Authorization
标头中。例如:
GET http://127.0.0.1:12138/get_deviceinfo
Authorization: Bearer {code}
请求参数
Header 参数
Content-Md5
string
必需
当前请求体参数的MD5摘要
如:MD5({"method": "GET","path": "/get_deviceinfo"})
示例值:
5c675c57cdc14da5ce77d90322ab78e2
X-Ca-Api-Key
string
必需
参见【系统管理】-【API集成】-【API KEY】
示例值:
YkZzaExwb0lnJDNmOTNhNzBi
X-Ca-Timestamp
integer
必需
当前时间戳,秒级(与北京时间误差不可超过5分钟)
示例值:
1708426191
X-Ca-Nonce
string
随机字符串
示例值:
c9f15cbf-f4ac-4a6c-b54d-f51abf4b5b44
X-Ca-Signature
string
必需
当前请求签名,简单概括为
BASE64(HMAC_SHA256("Content-Md5\nX-Ca-Timestamp\nX-Ca-Nonce\n", ApiSecret))
请参考:服务端API/开发指南/如何调用服务端API/接口签名算法
Body 参数application/json
method
string
Method
需要访问的客户端API Method
path
string
Path
需要访问的客户端API Path
示例
{
"method": "GET",
"path": "/get_deviceinfo"
}
示例代码
返回响应
成功(200)
HTTP 状态码: 200
内容格式: JSONapplication/json
数据结构
code
string
访问凭证
只可使用一次,60秒到期
aes_key
string
随机密钥
expire_time
integer
过期时间
示例
成功示例
{
"code": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJtZXRob2QiOiJHRVQiLCJwYXRoIjoiL3JlbW90ZXMiLCJlbnRpZCI6MTcsInVzZXJpZCI6MTIzLCJmdW5jIjpbInVzZXJfYWRkIiwidXNlcl9lZGl0Il0sImlzcyI6Ik9yYXkvU3VubG9naW4iLCJleHAiOjE3MDg0MDY5OTUsImp0aSI6ImZkNGY5OWMzLTAxMjktNGRjYi1iOTEyLWJkODQ0YWE5ZGVlZiJ9.30f-uG50XYWDplkegWnKKgiKnTAuIqW_70UiNGjE810",
"aes_key": "jDLt9vv4i8u3DVjq",
"expire_time": 1708240320
}
修改于 4 个月前