<commit_before># 应用服务器API接口

## 概述
1. api遵循REST规范
2. 所有数据内容均通过JSON格式编码
3. 文档中**请求头**为需要带在HTTP请求头中的字段；**参数**为URL查询字符串(?后的键值对如a=1&b=2)；**请求内容**为HTTP请求正文（仅post,put请求）；**请求回复**为HTTP返回正文。

### 术语
* **identifier**: 设备的唯一标识符。由平台生成,设备标识符是标示设备的全局唯一字符串。
* **status**： 设备的状态,表示设备的当前各个数据点的数据值
* **command**: 特定产品定义的自定义指令,由厂商配置,同一产品内唯一
* **event**: 特定产品定义的自定义事件,由厂商配置,同一产品内唯一
* **webhook**: 应用服务器提供给平台的上报url，平台通过该url向应用服务器上报设备动态
* **App-Key**: 平台分配给应用后台的访问Key，用以验证应用服务器的身份。
* **App-Token**: 应用后台向平台设置的回调token，平台回调应用服务器接口时会携带该token，应用服务器通过验证该token来验证调用者的合法性。

### 应用服务器工作流程
1. 获取device key。 客户端手机app通过pando sdk进行设备配置，配置完成后可得到device key. 手机app在得到device key后应将该key上传至app应用服务器并记录该key. device key是应用服务器通过平台访问设备的唯一凭据和标识。
2. 通过device key查询device indentifier并记录。
3. 应用服务器通过调用平台的api接口对设备进行操作和交互。
4. 应用服务器准备回调接口（web hook）并按照平台文档解析回调数据. 平台会将设备状态变化及设备事件通过回调接口传给应用服务器。平台通过identifier标识设备。

### API接口列表
#### 通过devicekey获取设备信息
*请求方式：*

```<commit_msg>update status description in application api doc.<commit_after># 应用服务器API接口

## 概述
1. api遵循REST规范
2. 所有数据内容均通过JSON格式编码
3. 文档中**请求头**为需要带在HTTP请求头中的字段；**参数**为URL查询字符串(?后的键值对如a=1&b=2)；**请求内容**为HTTP请求正文（仅post,put请求）；**请求回复**为HTTP返回正文。

### 术语
* **identifier**: 设备的唯一标识符。由平台生成,设备标识符是标示设备的全局唯一字符串。
* **status**： 设备的状态,表示设备的当前信息的数据值。
* **command**: 特定产品定义的自定义指令,由厂商配置,同一产品内唯一。
* **event**: 特定产品定义的自定义事件,由厂商配置,同一产品内唯一。
* **webhook**: 应用服务器提供给平台的上报url，平台通过该url向应用服务器上报设备动态。
* **App-Key**: 平台分配给应用后台的访问Key，用以验证应用服务器的身份。
* **App-Token**: 应用后台向平台设置的回调token，平台回调应用服务器接口时会携带该token，应用服务器通过验证该token来验证调用者的合法性。

### 应用服务器工作流程
1. 获取device key。 客户端手机app通过pando sdk进行设备配置，配置完成后可得到device key. 手机app在得到device key后应将该key上传至app应用服务器并记录该key. device key是应用服务器通过平台访问设备的唯一凭据和标识。
2. 通过device key查询device indentifier并记录。
3. 应用服务器通过调用平台的api接口对设备进行操作和交互。
4. 应用服务器准备回调接口（web hook）并按照平台文档解析回调数据. 平台会将设备状态变化及设备事件通过回调接口传给应用服务器。平台通过identifier标识设备。

### API接口列表
#### 通过devicekey获取设备信息
*请求方式：*

```
{'fraction_non_alphanumeric': 0.1419457735247209, 'fraction_numerical': 0.009569377990430622, 'mean_word_length': 10.617283950617283, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '501738', 'n_tokens_mistral': 1361, 'n_tokens_neox': 1625, 'n_words': 102}