传统门禁服务API

更新时间:2020-08-31 19:06:39

传统门禁通行解决方案

边缘解决方案
边缘模式/设备直连云 API

接口文档

接口以阿里云IoT统一网关HTTP接口的形式提供(使用方法参考API网关客户端)。

访问域名:api.link.aliyun.com,接口协议:HTTPS。

通用对象

人员信息UserDTO

字段 类型 备注
identityId String 统一身份ID。
name String 人员称谓。
extInfo String 自定义信息。

门禁卡权限CardDTO

字段 类型 备注
iotId String 门禁设备的iotId
expiryTime String 密码有效期,时间格式 yyyy-MM-dd HH:mm:ss"
cardId String 门禁卡id
identityId String 统一身份ID

接口列表

模块 接口名称 接口说明
人员信息管理 添加或更新人员信息 添加或更新人员信息
删除人员信息 删除某人员信息
查询人员信息 查询人员信息
查询人员列表 查询人员列表
刷卡门禁权限管理 批量设置门禁卡权限 批量设置门禁卡权限
删除刷卡门禁上某用户的权限 删除刷卡门禁上某用户的权限
查询用户的门禁卡权限信息 查询人在指定门禁卡设备上的门禁卡权限信息
查询门禁设备上的权限信息 查询门禁设备上的权限信息
查询门禁设备的常开门状态 查询门禁设备的常开门状态
设置门禁设备的常开门状态 设置门禁设备的常开门状态
二维码门禁通行方式 生成二维码 分配二维码
二维码权限配置 为指定门禁设备配置二维码权限
二维码权限删除 删除刷卡门禁上某用户的权限
生成二维码并配置权限(旧) 生成二维码并为指定门禁设备配置权限
密码门禁通行方式 设置门禁密码 为密码门禁通行设置门禁密码
远程控制开门 远程控制开门 远程控制开门
设备消息订阅 增加设备消息推送订阅 授权租户想接收设备上报的事件
查询订阅消息推送设备列表 查询订阅消息推送设备列表
删除设备消息推送订阅 删除设备消息推送订阅

人员信息管理

添加或更新人员信息

接口定义

path 版本 是否需要登录
/entrance/paas/user/modify 1.0.0

入参

字段 类型 是否必传 备注
identityId String 统一身份ID。若identityId在库里存在走更新流程,若identityId在库里不存在走创建流程
name String 人员称谓。在更新的时候,如不传不会对原有值做修改。在创建的时候必须传。
extInfo String 自定义信息。在更新的时候,如不传不会对原有值做修改。在创建时候可以不填。

出参

返回结果使用通用结果类型,data域为空。

示例

请求示例

{
  "identityId":"50acopfd3a94900494085ed2699e052432c34452",
  "name":"王先生",
  "extInfo":{}
}

返回示例

{
  "code": 200,
  "id":"4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "message": null,
  "localizedMsg": null
}

删除人员信息

path 版本 是否需要登录
/entrance/paas/user/delete 1.0.0

入参

字段 类型 是否必传 备注
identityId String 统一身份ID。

示例

请求示例

{
  "identityId":"50acopfd3a94900494085ed2699e052432c34452"
}

返回示例

{
  "code": 200,
  "id":"4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "message": null,
  "localizedMsg": null
}

查询人员信息

接口定义

path 版本 是否需要登录
/entrance/paas/user/get 1.0.0

入参

字段 类型 是否必传 备注
identityId String 统一身份ID。

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data JSON 人员信息

示例

请求示例

{
    "identityId":"50acopfd3a94900494085ed2699e052432c34452"
}

返回示例

{
  "code": 200,
  "data": {{
      "identityId":"50acopfd3a94900494085ed2699e052432c34452"
      "name": "馄饨面",
      "extInfo":{}
  },
  "id": "4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "message": null,
  "localizedMsg": null
}

人员列表

接口定义

path 版本 是否需要登录
/entrance/paas/user/query 1.0.0

入参

pageSize Integer 分页查询一页内的记录数,上限100
pageNo Integer 分页数,从1开始

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data JSONObject 返回的分页数据对象

分页数据对象PageDTO

pageSize Integer 传入的pageSize
pageNo Integer 传入的pageNo
total Long 总记录数
data JSONArray 人员信息

示例

请求示例

{
  "pageSize":10,
  "pageNo":1
}

返回示例

{
  "code": 200,
  "data": {
    "total": 1,
    "data": [{
      "identityId":"50acopfd3a94900494085ed2699e052432c34452"
      "name": "馄饨面",
      "extInfo":{}
  }]
  },
  "id": "4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "message": null,
  "localizedMsg": null
}

刷卡门禁权限管理

批量设置门禁卡权限

接口定义

path 版本 是否需要登录
/entrance/paas/perm/card/batchmodify 1.0.2

入参

字段 类型 是否必传 备注
cards JSONArray 待创建对象列表,上限1000

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data JSONArray 处理失败的记录,建议可以依照这个列表重新添加

FailureResultDTO

字段 类型 备注
iotId String 门禁设备的iotId
cardId String 门禁卡id
identityId String 统一身份ID

示例

请求示例

{
    "cards": [{
    "identityId": "50acopfd3a94900494085ed2699e052432c34452",
        "iotId": "p2OsgId2N2kXMWThRCQP000101",
        "expiryTime": "2020-03-04 18:00:00",
    "cardId":"3d8deae9402d38adfji38"
    }]
}

返回示例

{
  "code": 200,
  "id":"4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "data":[{
    "identityId": "50acopfd3a94900494085ed2699e052432c34452",
      "iotId":"p2OsgId2N2kXMWThRCQP000101",
    "cardId":"3d8deae9402d38adfji38"
  }],
  "message": null,
  "localizedMsg": null
}

删除刷卡门禁上某用户的权限

删除门禁卡的权限实际是删除这个设备上的人的权限

path 版本 是否需要登录
/entrance/paas/perm/card/batchdelete 1.0.1

入参

字段 类型 是否必传 备注
list JSONArray 待删除对象列表

PermDTO

字段 类型 是否必传 备注
identityId String 统一身份ID
iotId String 门禁id
cardId String 门禁卡id,最大长度255字符

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data JSONArray 删除失败的列表

ModifyResultDTO

字段 类型 备注
iotId String 门禁设备的iotId
cardId String 门禁卡id
identityId String 统一身份ID

示例

请求示例

{
    "list": [{
        "iotId": "p2OsgId2N2kXMWThRCQP000101",
        "identityId": "50acopfd3a94900494085ed2699e052432c34452",
    "cardId":"3d8deae9402d38adfji38"
    }]
}

返回示例

{
  "code": 200,
  "id":"4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "data":[],
  "message": null,
  "localizedMsg": null
}

查询用户的门禁卡权限信息

接口定义

path 版本 是否需要登录
/entrance/paas/user/perm/query 1.0.0

入参

字段 类型 是否必传 备注
identityId String 统一身份ID
iotIds JSONArray 门禁设备列表,上限100

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data JSONObject 分页对象

分页数据对象PermDTO

identityId String 统一身份ID
data JSONArray 门禁卡权限对象

示例

请求示例

{
  "identityId":"50acopfd3a94900494085ed2699e052432c34452",
  "iotIds":[
      "p2OsgId2N2kXMWThRCQP000101"
  ]
}

返回示例

{
  "code": 200,
  "message": null,
  "localizedMsg": null,
  "data":{
    "identityId": "p2OsgId2N2kXMWThRCQP000101",
      "data":[{
        "iotId": "50acopfd3a94900494085ed2699e052432c34452",
        "identityId": "p2OsgId2N2kXMWThRCQP000101",
        "expiryTime": "2020-03-04 18:00:00",
        "cardId":"3d8deae9402d38adfji38"
        }]
    }
}

查询门禁设备上的权限信息

接口定义

path 版本 是否需要登录
/entrance/paas/device/perm/query 1.0.0

入参

字段 类型 是否必传 备注
iotId String 刷卡门禁设备的iotId
pageSize Integer 分页查询一页内的记录数,上限100
pageNo Integer 分页数,从1开始

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data JSONObject 分页对象

分页数据对象PageDTO

pageSize Integer 传入的pageSize
pageNo Integer 传入的pageNo
total Long 总记录数
data JSONArray 门禁卡权限对象列表

示例

请求示例

{
   "iotId":"p2OsgId2N2kXMWThRCQP000101",
   "pageSize":10,
   "pageNo":1 
}

返回示例

{
  "code": 200,
  "message": null,
  "localizedMsg": null
  "data":{
  "total":1,
  "pageSize":10,
  "pageNo":1,
  "data":[{
        "identityId": "50acopfd3a94900494085ed2699e052432c34452",
            "iotId": "p2OsgId2N2kXMWThRCQP000101",
            "expiryTime": "2020-03-04 18:00:00",
        "cardId":"3d8deae9402d38adfji38"
        }],
    }
}

查询门禁设备的常开门状态

接口定义

path 版本 是否需要登录
/entrance/paas/keepopen/get 1.0.0

入参

字段 类型 是否必传 备注
iotId String 刷卡门禁设备的iotId

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data Boolean 设备是否处于常开状态

示例

请求示例

{
   "iotId":"p2OsgId2N2kXMWThRCQP000101"
}

返回示例

{
  "code": 200,
  "message": null,
  "data": false
}

设置门禁设备的常开门状态

接口定义

path 版本 是否需要登录
/entrance/paas/keepopen/set 1.0.0

入参

字段 类型 是否必传 备注
iotId String 刷卡门禁设备的iotId
keepOpen Boolean 是否常开

出参

字段 类型 备注
code Integer 返回码
message String 返回信息

示例

请求示例

{
   "iotId":"p2OsgId2N2kXMWThRCQP000101",
  "keepOpen":true
}

返回示例

{
  "code": 200,
  "message": null
}

二维码门禁通行方式

生成二维码

path 版本 是否需要登录
/homelink/common/qrcode/generate 1.0.0

入参

字段 类型 是否必传 备注
identityId String 申请二维码人员的统一身份ID

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data String 二维码

示例

请求示例

{
  "identityId":"50acopfd3a94900494085ed2699e052432c34452"
}

返回示例

{
  "code": 200,
  "id":"4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "data":"24DD9END8CD3",
  "message": null,
  "localizedMsg": null
}

二维码权限配置

path 版本 是否需要登录
/entrance/paas/perm/qrcode/config 1.0.1

入参

字段 类型 是否必传 备注
qrCode String 二维码
iotIds JSONArray 待配置权限的门禁设备iotId
identityId String 申请二维码人员的统一身份ID
effectiveTime String 二维码生效期,时间格式 yyyy-MM-dd HH:mm:ss 默认为当前时间
expiryTime String 二维码失效期,时间格式 yyyy-MM-dd HH:mm:ss
maxScanTimes Integer 最大刷卡次数,默认为-1不做次数限制
maxScanScope String 最大刷码次数作用范围,默认为每个设备独立计数。SHARE – 共享; DEVICE – 设备

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data JSONArray 权限配置结果
->iotId String 门禁设备ID
->code Integer 成功为200
->message String 错误信息

示例

请求示例

{
  "qrCode": "24DD9END8CD3",
  "identityId":"50acopfd3a94900494085ed2699e052432c34452",
  "iotIds": [
      "p2OsgId2N2kXMWThRCQP000101"
  ],
  "effectiveTime":"2019-03-04 18:00:00",
  "expiryTime":"2020-03-04 18:00:00"    
}

返回示例

{
  "code": 200,
  "id":"4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "message": null,
  "localizedMsg": null,
  "data": [
    {
      "iotId": "p2OsgId2N2kXMWThRCQP000101",
      "code": "200"
    }
  ]
}

二维码权限删除

path 版本 是否需要登录
/entrance/paas/perm/qrcode/remove 1.0.1

入参

字段 类型 是否必传 备注
qrCode String 二维码
identityId String 申请二维码人员的统一身份ID
iotIds JSONArray 门禁设备iotId

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data JSONArray 权限配置结果
->iotId String 门禁设备ID
->code Integer 成功为200
->message String 错误信息

示例

请求示例

{
  "qrCode": "24DD9END8CD3",
  "iotIds": [
      "p2OsgId2N2kXMWThRCQP000101"
  ],  
  "identityId":"50acopfd3a94900494085ed2699e052432c34452"
}

返回示例

{
  "code": 200,
  "id":"4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "message": null,
  "localizedMsg": null,
    "data": [
    {
      "iotId": "p2OsgId2N2kXMWThRCQP000101",
      "code": "200"
    }
  ]
}

生成二维码并配置权限(旧)

该接口有限流,每个租户每秒最多设置2000次门禁二维码

path 版本 是否需要登录
/entrance/paas/perm/qrcode/generate 1.0.1

入参

字段 类型 是否必传 备注
iotIds JSONArray 待配置权限的门禁设备iotId,最多支持500个设备
identityId String 申请二维码人员的统一身份ID
expiryTime String 二维码有效期,时间格式 yyyy-MM-dd HH:mm:ss 不能超过生效期时间+24h
effectiveTime String 二维码生效期,时间格式 yyyy-MM-dd HH:mm:ss 不能小于当前时间,如为空则取当前时间

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data String 二维码

示例

请求示例

{
  "identityId":"50acopfd3a94900494085ed2699e052432c34452",
  "iotIds":[
      "p2OsgId2N2kXMWThRCQP000101"
  ],
  "expiryTime":"2020-03-04 18:00:00",
  "effectiveTime":"2020-03-03 18:00:01"
}

返回示例

{
  "code": 200,
  "id":"4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "data":"24DD9END8CD3",
  "message": null,
  "localizedMsg": null
}

密码门禁通行方式

设置门禁密码

该接口有限流,每个租户每秒最多设置2000次门禁密码

path 版本 是否需要登录
/entrance/paas/perm/passwd/modify 1.0.0

入参

字段 类型 是否必传 备注
passwords JSONArray 密码信息。最长100条记录

PasswordDTO对象

字段 类型 是否必传 备注
identityId String 统一身份ID。若identityId+iotId在数据库中存在走更新流程,若identityId+iotId不存在走创建流程
iotId String 门禁设备的iotId
password String 密码信息。最大长度255字符
number Integer 密码编号,一个密码门禁有可能有多个密码。
expiredDate String 密码有效期,时间格式 yyyy-MM-dd HH:mm:ss

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data JSONArray 设置失败的记录列表

ModifyResultDTO

字段 类型 备注
iotId String 门禁设备的iotId

示例

请求示例

{
    "identityId": "50acopfd3a94900494085ed2699e052432c34452",
    "passwords": [{
        "iotId": "p2OsgId2N2kXMWThRCQP000101",
        "password": "a2d34f84dfafe",
        "number": "030",
        "expiryDate": "2020-03-04 18:00:00"
    }]
}

返回示例

{
  "code": 200,
  "id":"4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "data":[
      "iotId":"p2OsgId2N2kXMWThRCQP000101"
  ],
  "message": null,
  "localizedMsg": null
}

远程控制开门

远程控制开门

接口定义

path 版本 是否需要登录
/cloud/thing/service/invoke 1.0.1

入参

字段 类型 是否必传 备注
iotId String 门禁设备的iotId
identifier String 固定值“remoteOpen”
args JSNOObject 固定值{}

出参

返回结果使用通用结果类型,data域为空。

示例

请求示例

{
    "identifier": "remoteOpen",
    "iotId": "p2OsgId2N2kXMWThRCQP000101",
    "args": {}
}

返回示例

{
  "code": 200,
  "id":"4a70179d-47d8-4fdf-9067-8a5eedf63483",
  "message": null,
  "localizedMsg": null
}

传统门禁通行事件

传统门禁通行数据模型

设备消息订阅(推荐使用数据模型订阅)

增加设备消息推送订阅

当存在跨租户给设备授权的时候,被授权租户想接收设备上报的事件,需要调用这个接口来做授权

path 版本 是否需要登录
/entrance/paas/device/subscription/modify 1.0.0

入参

字段 类型 是否必传 备注
iotIds JASONArray 待订阅的设备iotId列表,上限50
subscribed Integer 1 订阅,0取消订阅;默认是1

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data JSONArray 订阅设置失败的设备iotId

ModifyResultDTO

字段 类型 备注
iotId String 门禁设备的iotId

示例

请求示例

{
    "iotId": "50acopfd3a94900494085ed2699e052432c34452",
    "passwords": [{
        "iotId": "p2OsgId2N2kXMWThRCQP000101"
    }]
}

查询订阅消息推送设备列表

查询已经订阅消息的设备列表,包括已经取消了订阅的设备

path 版本 是否需要登录
/entrance/paas/device/subscription/query 1.0.0

入参

pageSize Integer 分页查询一页内的记录数,上限100
pageNo Integer 分页数,从1开始

出参

字段 类型 备注
code Integer 返回码
message String 返回信息
data JSONObject 返回的分页数据对象

分页数据对象PageDTO

pageSize Integer 传入的pageSize
pageNo Integer 传入的pageNo
total Long 总记录数
data JSONArray 订阅数据列表

DeviceTenantRelationDTO

字段 类型 备注
iotId String 设备iotId
deviceName String 设备dn
productKey String 设备pk
categoryKey String 设备品类
tenantId String 租户Id
subscribed Integer 是否订阅消息
gmtCreate Date 订阅创建时间
gmtModified Date 订阅更新时间

示例

请求示例

{
  "pageSize":10,
  "pageNo":1
}

返回示例

{
    "code": 200,
    "data": {
        "total": 1,
        "data": [{
            "bizCode": "bizTypeTest",
            "categoryKey": "categoryKeyTest",
            "deviceName": "deviceNameTest",
            "gmtCreate": 1556517249000,
            "gmtModified": 1556517249000,
            "iotId": "iotTest",
            "productKey": "productKeyTest",
            "subscribed": 1,
            "tenantId": "tenantTest"
        }]
    },
    "id": "4a70179d-47d8-4fdf-9067-8a5eedf63483",
    "message": null,
    "localizedMsg": null
}

删除设备消息推送订阅

删除订阅关系

path 版本 是否需要登录
/entrance/paas/device/subscription/delete 1.0.0

入参

字段 类型 是否必传 备注
iotIds JASONArray 待订阅的设备iotId列表,上限50

出参

返回结果使用通用结果类型,data域为空。

示例

请求示例

{
    "iotIds":[
        "p2OsgId2N2kXMWThRCQP000101"
    ]
}

返回示例

{
    "code": 200,
    "id": "4a70179d-47d8-4fdf-9067-8a5eedf63483",
    "message": null,
    "localizedMsg": null
}

results matching ""

    No results matching ""