钥匙管理

查询钥匙数据

http 请求方式:POST(请使用 https 协议)https://api.kdware.cn/hapi/v1.1/loadKeys

功能简介:用于按条件查询钥匙数据

请求示例

参数说明

{
"sessionid": "d5ecec7a-099d-4114-8d95-a553dc833bb6"
}
参数类型可选说明
sessionidstring必须会话凭证
offsetnumber可选指定返回记录行的偏移量
countnumber可选指定返回记录行的最大数目
byOwnerstring可选按持有人名称查询
byOwnerIDstring可选按持有人证件号码查询
byMakerstring可选按授权人名称查询
byDevicestring可选按所属设备的名称查询
byDeviceIDstring可选按所属设备ID查询
byDeviceIDsarray可选按设备ID列表查询,数组子项为 string 类型,该参数同时查询ID总数不能大于100
byStatenumber可选按钥匙状态查询: 1 为查询所有状态为全部有效、部份有效、部份过期、部份撤销。 2 为查询所有状态为全部过期、全部撤销。 3 为查询所有状态为全部有效、全部过期、全部撤销。 4 为查询所有状态为部份有效、部份过期、部份撤销。
注意:当进行钥匙操作时,有时会由于通信原因,部份设备的操作 没有成功,调用者可使用 redoKey 调用对未成功的设备进行自动二次修复(未完成状态包括:部分有效、部分过期和部份撤销
byProjectIDstring可选按所属项目 ID 查询
byCardIDstring可选按钥匙卡号查询,格式需为 16 进制格式的数据,如:1a2b3c4d
byPasswdstring可选按钥匙密码查询
byIDstring可选按 ID 查询
byTypenumber可选按类型查询: 1 为卡片, 2 为密码

返回结果

正确时的返回 JSON 数据包如下:

{
"resultCode": 0,
"keyList": [
{
"id": "5176",
"projectID": "141",
"type": 1,
"state": 8,
"maker": "kdwareUser",
"owner": "121212",
"ownerID": "121212",
"canceller": "kdwareUser",
"beginDate": "2017-11-02T16:05:00.000",
"endDate": "2017-11-03T12:00:00.000",
"value": "121212",
"details": [
{
"id": "5177",
"deviceID": "5150",
"deviceName": "",
"valid": false
}
]
},
{
"id": "5180",
"projectID": "141",
"type": 1,
"state": 8,
"maker": "kdwareUser",
"owner": "121212",
"ownerID": "121212",
"canceller": "kdwareUser",
"beginDate": "2017-11-02T16:34:00.000",
"endDate": "2017-11-03T12:00:00.000",
"value": "121212",
"details": [
{
"id": "5181",
"deviceID": "5153",
"deviceName": "P93",
"valid": false
}
]
}
]
}
参数类型说明
resultCodenumber0 为成功,其它值为失败
keyListarray
参数 类型 说明
id string ID 号
type number 钥匙类型:0 为卡片, 1 为密码, 2 为电子钥匙
state number 钥匙状态: 2 为全部有效, 4 为部份有效, 5 为全部过期, 7 为部份过期, 8 为全部撤销, 10 为部分撤销
maker string 授权人名称
owner string 持有人名称
ownerID string 持有人证件号码(注意:不可出现重复证件号码)
canceller string 撤销人名称,当该钥匙为系统自动过期时,撤销人名称为 system
beginDate string 该钥匙的生成时间,格式为 ISO 时间格式
endDate string 该钥匙的过期时间,格式为 ISO 时间格式
value string 当该钥匙类型为卡片时,该值为卡号的十六进制格式数据。 当该要是类型为密码时,该值为密码的十进制格式数据。
isUnlockDeadbolt boolean 指示该钥匙是否被允许开启反锁状态的门锁,true 为是,false 为否
details array
参数 类型 说明
id string 钥匙关联 ID
deviceID string 该钥匙所关联的设备 ID
deviceName string 该钥匙所关联的设备名称
valid boolean 该钥匙是否可开门:
true 为有效可开门
false 为无效不可开门

设置钥匙

http 请求方式:POST(请使用 https 协议)https://api.kdware.cn/hapi/v1.1/setKey

功能简介:用于向系统添加钥匙

请求示例

参数说明

{
"sessionid": "690d01fd-e2b5-4167-85ed-c507d5f35679",
"projectID": "344",
"keyType": 1,
"keyValue": "888125",
"owner": "kdware",
"beginDate": "2017-11-29T13:29:00.000",
"endDate": "2017-11-29T13:35:00.000",
"devices": ["347", "5301"]
}
参数类型可选说明
sessionidstring必须会话凭证
projectIDstring必须目标设备的项目 ID
keyTypenumber必须钥匙类型:
0 为卡片
1 为密码
2 为电子钥匙
keyValuestring必须当该钥匙类型为卡片时,该值为十六进制的物理卡号。
当该要是类型为密码时,该值为 4 ~ 8 位数字密码。
ownerstring必须持有人名称
ownerIDstring可选持有人证件号码
beginDatestring必须当前时间。 格式请使用 ISO 时间格式。如:2018-01-01T01:02:03
endDatestring必须钥匙失效时间。 格式请使用 ISO 时间格式。如:2018-01-01T01:02:03
如果需要长期钥匙,请填 2099-12-31T23:59:59
isUnlockDeadboltstring可选当为 true 时表示该钥匙可以打开处理反锁状态的门锁,为 false 则不可以,不带此参数则默认都是可打开的
devicesarray必须该钥匙需要关联的设备 ID,请只添加与当前钥匙所属项目相同的设备 ID 号,数组子项为 string 类型

返回结果

正确时的返回 JSON 数据包如下:

{
"resultCode": 0,
"requestID": "123",
"resultList": [
{
"deviceID": "347",
"state": 0
},
{
"deviceID": "5301",
"state": -1
}
]
}
参数类型说明
resultCodenumber0 为成功,其它值为失败
requestIDstring添加钥匙的 ID
resultListarray
参数 类型 说明
deviceID string 本次操作的设备 ID
state number 0 为成功,其它值为失败
注意:调用后检查是否每个关联设备的操作都为成功, 如果某个设备失败,请调用 redoKey 做二次修复

向钥匙添加新关联设备

http 请求方式:POST(请使用 https 协议)https://api.kdware.cn/hapi/v1.1/attachDevicesToKey

功能简介:用于向指定钥匙添加新的关联设备

请求示例

参数说明

{
"sessionid": "a9cee528-b7ee-4564-ab6a-d464bca18bd7",
"keyID": "5371",
"devices": ["12075", "12076"]
}
参数类型可选说明
sessionidstring必须会话凭证
keyIDstring必须当前要修改的钥匙 ID
devicesarray必须该钥匙需要关联的设备 ID,请只添加与当前钥匙所属项目相同的设备 ID 号,数组子项为 string 类型

返回结果

正确时的返回 JSON 数据包如下:

{
"resultCode": 0,
"resultList": [
{
"deviceID": "347",
"state": 0
},
{
"deviceID": "5301",
"state": -1
}
]
}
参数类型说明
resultCodenumber0 为成功,其它值为失败
resultListarray
参数 类型 说明
deviceID string 本次操作的设备 ID
state number 0 为成功,其它值为失败
注意:调用后检查是否每个关联设备的操作都为成功, 如果某个设备失败,请调用 redoKey 做二次修复

从钥匙删除某关联设备

http 请求方式:POST(请使用 https 协议)https://api.kdware.cn/hapi/v1.1/detachDevicesFromKey

功能简介:用于从指定钥匙上删除某关联设备

请求示例

参数说明

{
"sessionid": "a9cee528-b7ee-4564-ab6a-d464bca18bd7",
"keyID": "5371",
"devices": ["12075", "12076"]
}
参数类型可选说明
sessionidstring必须会话凭证
keyIDstring必须当前要修改的钥匙 ID
devicesarray必须该钥匙需要关联的设备 ID,请只添加与当前钥匙所属项目相同的设备 ID 号,数组子项为 string 类型

返回结果

正确时的返回 JSON 数据包如下:

{
"resultCode": 0,
"resultList": [
{
"deviceID": "347",
"state": 0
},
{
"deviceID": "5301",
"state": -1
}
]
}
参数类型说明
resultCodenumber0 为成功,其它值为失败
resultListarray
参数 类型 说明
deviceID string 本次操作的设备 ID
state number 0 为成功,其它值为失败
注意:调用后检查是否每个关联设备的操作都为成功, 如果某个设备失败,请调用 redoKey 做二次修复

修改钥匙

http 请求方式:POST(请使用 https 协议)https://api.kdware.cn/hapi/v1.1/modifyKey

功能简介:用于修改指定钥匙除了关联设备外的其它参数

请求示例

参数说明

{
"sessionid": "a9cee528-b7ee-4564-ab6a-d464bca18bd7",
"keyID": "5371",
"owner": "test",
"ownerID": "123456",
"endDate": "2018-10-13T13:00:00"
}
参数类型可选说明
sessionidstring必须会话凭证
keyIDstring必须当前要撤销的钥匙 ID
ownerstring可选新的持有人名称
ownerIDstring可选新的持有人证件号码(注意:不可出现重复证件号码)
endDatestring可选新的钥匙失效时间。 格式请使用 ISO 时间格式。如:2018-01-01T01:02:03 如果需要长期钥匙,请填 2099-12-31T23:59:59

返回结果

正确时的返回 JSON 数据包如下:

{
"resultCode": 0,
"errorString": "",
"requestID": "5371"
}
参数类型说明
resultCodenumber0 为成功,其它值为失败
errorStringstring错误描述
requestIDstring保留参数

撤销钥匙

http 请求方式:POST(请使用 https 协议)https://api.kdware.cn/hapi/v1.1/unsetKey

功能简介:用于主动撤销指定的钥匙

请求示例

参数说明

{
"sessionid": "a9cee528-b7ee-4564-ab6a-d464bca18bd7",
"keyID": "5371"
}
参数类型可选说明
sessionidstring必须会话凭证
keyIDstring必须当前要撤销的钥匙 ID

返回结果

正确时的返回 JSON 数据包如下:

{
"resultCode": 0,
"resultList": [
{
"deviceID": "347",
"state": 0
},
{
"deviceID": "5301",
"state": -1
}
]
}
参数类型说明
resultCodenumber0 为成功,其它值为失败
resultListarray
参数 类型 说明
deviceID string 本次操作的设备 ID
state number 0 为成功,其它值为失败
注意:调用后检查是否每个关联设备的操作都为成功, 如果某个设备失败,请调用 redoKey 做二次修复

重做一次当前操作

http 请求方式:POST(请使用 https 协议)https://api.kdware.cn/hapi/v1.1/redoKey

功能简介:用于快速修复处理部份有效、部份过期和部份撤销的钥匙。如果在添加钥匙时,由于通信原因部份钥匙没有设置成功,则该调用会单独针对未成功的钥匙进行二次设置。其它同理。

请求示例

参数说明

{
"sessionid": "26210a68-111a-4267-860c-82d56768ea91",
"keyID": "5366"
}
参数类型可选说明
sessionidstring必须会话凭证
keyIDstring必须当前要修复的钥匙 ID

返回结果

正确时的返回 JSON 数据包如下:

{
"resultCode": 0,
"resultList": [
{
"deviceID": "347",
"state": -1
},
{
"deviceID": "5301",
"state": -1
}
]
}
参数类型说明
resultCodenumber0 为成功,其它值为失败
resultListarray
参数 类型 说明
deviceID string 本次操作的设备 ID
state number 0 为成功,其它值为失败
注意:调用后检查是否每个关联设备的操作都为成功, 如果某个设备失败,请调用 redoKey 做二次修复