接口列表

接口列表

1.令牌模块

1.1. 获取令牌

接口功能:生成访问受限资源时(比如:新建节点、文件存证、非公开文件下载等)需要提供的访问令牌。

接口规范:

  • Method: GET
  • URI: /token
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
secret string true query 服务安全码
serviceId string true query 服务编码
  • 响应结果(data部分):
类型 说明
string 令牌字符串

说明
服务编码服务安全码契链e证服务中心里获取。

另外,令牌的有效期是30分钟,超时后需要重新申请。

  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/token?secret=mNiPywFfpsRWVm3F&serviceId=9251067423a9467baa991eb53052c05d"

Response>_

{  
    "status": true,  
    "code": 0,  
    "message": "OK",  
    "data": "eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIzYWVjZGRhYTgzNTA0YzZkODBkMTA1ZWNkODhiNDk5NyIsInN1YiI6ImFjY2VzcyIsImV4cCI6MTU4NTY1MDA1N30.gw7a5GT3KDtwuPHwbL8b_GW9vBVIHQrz-okjPpYl5Wg"  
}  

1.2. 验证令牌

接口功能:对指定令牌的有效性进行验证。

接口规范:

  • Method: POST
  • URI: /token
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
token string true query 待验证令牌
  • 响应结果(data部分):
类型 说明
bool 令牌是否有效
  • 访问示例:

Request>_

curl -X POST "https://api.qlen.cn/v1/token?token=eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIzYWVjZGRhYTgzNTA0YzZkODBkMTA1ZWNkODhiNDk5NyIsInN1YiI6ImFjY2VzcyIsImV4cCI6MTU4NTY1MDA1N30.gw7a5GT3KDtwuPHwbL8b_GW9vBVIHQrz-okjPpYl5Wg"

Response>_

{  
    "status": true,  
    "code": 0,  
    "message": "OK",  
    "data": true  
}  

1.3. 删除令牌

接口功能:使激活的令牌失效。

接口规范:

  • Method: DELETE
  • URI: /token
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
token string true query 待删除令牌
  • 响应结果(data部分):
类型 说明
null
  • 访问示例:

Request>_

curl -X DELETE "https://api.qlen.cn/v1/token?token=eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIzYWVjZGRhYTgzNTA0YzZkODBkMTA1ZWNkODhiNDk5NyIsInN1YiI6ImFjY2VzcyIsImV4cCI6MTU4NTY1MDA1N30.gw7a5GT3KDtwuPHwbL8b_GW9vBVIHQrz-okjPpYl5Wg"

Response>_

{  
    "status": true,  
    "code": 0,  
    "message": "OK",  
    "data": null  
} 

2. 存证模块

2.1. 文件上传

接口功能:将需要契链提取哈希或者永久保存的文件上传。

接口规范:

  • Method: POST
  • URI: /file
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
file file true formdata 上传文件
token string true query 访问令牌
isEscrow boolean true query 是否存证
isPublic boolean false query 是否公开
title string false query 标题
note string false query 注释
userId string false query 用户编码
  • 响应结果(data部分):
类型 说明
string 文件编码

说明
是否存证:是指上传的文件是否在契链永久保存。
是否公开:是指存证文件是否允许所有人访问。
用户编码:是指存证文件属于哪个契链用户。

向契链e证上传文件的目的主要有两种:一是仅用于提取文件哈希,二是提取哈希并永久保存文件原文。
如果是第一种情况,则只需提交前三个必需的参数,并将isEscrow设为false即可,无需提交后面四个非必需参数。
如果是第二种情况,则后面的四个非必需参数视情况选择性提交。

返回 文件编码:该上传文件的唯一标识。可以传递给新建节点接口,用于提取文件哈希;如果是存证文件,则可以传递给文件下载接口,用于获取存证文件。

  • 访问示例:

Request>_

curl -X POST "https://api.qlen.cn/v1/file?token=eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI4YTMzMDgzODU5NzQ0MWFlOTIzMjJkYjlkY2YxNzcwNiIsInN1YiI6ImFjY2VzcyIsImV4cCI6MTU4NTcwOTE5MH0.eDDmjwwaS2Xor1EjGQ3HOFah9WnZtvoMTSF0Lt974Go" -H  "accept: */*" -H  "Content-Type: multipart/form-data" -F "file=@EasyRecover.pdf;type=application/pdf"  

Response>_

{  
    "status": true,  
    "code": 0,  
    "message": "OK",  
    "data": "3e262f715ca14af4832c323d00a9ecc6"  
}  

2.2. 文件下载

接口功能:下载已经存证的文件。

接口规范:

  • Method: GET
  • URI: /file/{fileName}
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
fileName string true path 文件编码
token string false query 访问令牌
  • 响应结果(data部分):
类型 说明
file 文件内容
说明
如果存证的是公开文件,则无需传入token,即可通过链接直接获取文件。
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/file/5c600749ea774b2a87c6f4966c3d083b?token=eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIyOGU0MGNmMTI0OTk0ZDZhOTU2OTJiZjBiZGMyZTRkNCIsInN1YiI6ImFjY2VzcyIsImV4cCI6MTU4ODE2NDM5OX0.O3p0cHbeJW9UXAoHBA6uQpSOf6KOXmT_aYrOgn9K6Ds" --output tempfile.pdf

Response>_

tempfile.pdf

2.3. 文件验证

接口功能:验证上传文件是否在契链中存证,返回和上传文件特征一致的所有节点。

接口规范:

  • Method: POST
  • URI: /file/check
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
file file true file 上传文件
  • 响应结果(data部分):
类型 说明
node 返回和验证文件特征一致的节点
  • 访问示例:

Request>_

curl -X POST "https://api.qlen.cn/v1/file/check" -H  "accept: */*" -H  "Content-Type: multipart/form-data" -F "file=@EasyRecover.pdf;type=application/pdf"  

Response>_

{
  "status": true,
  "code": 0,
  "message": "OK",
  "data": {
    "version": -2,
    "nodeHash": "50d174746f31b5ec143bb86dd7ade5f57abac3bcafd4814f5c2f7d4b0c73d428",
    "nodeSeq": 103,
    "timestamp": 1594738633390,
    "nonce": 406150410,
    "lastHash": "5654e6aacc61fa006823ea78eb2c8c14069757abca2c2fcbd6679ad776cd6cd3",
    "referHash": "d79539994bcae1112fd6b94c42978e47a2d4bfd8c6f2d79aa07c924fe079c7a0",
    "userId": "173c1185707a4dc98eb9a277f6dc47aa",
    "serviceId": "9251067423a9467baa991eb53052c05d",
    "label": 128,
    "infoHash": "61dfd7d15e42d96c61466a0c79fe93c8518e3c06bf39b719fd4484ab5f806e35",
    "infoId": "111"
  }
}

3. 公证模块

3.1. 新建节点

接口功能:在契链中添加新节点,将电子信息哈希进行公证。

接口规范:

  • Method: POST
  • URI: /node
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
token string true json 访问令牌
userId string true json 用户编码(可为空)
referHash string true json 引用哈希(可为空)
referType int true json 引用关系类型
hashVendor int true json 哈希提取者
hashAlgorithm int true json 哈希提取算法
infoHash string true json 信息哈希或文件编码
infoId string true json 信息标识
  • 响应结果(data部分):
类型 说明
node 返回刚创建的节点
说明
用户编码:公证信息所属用户的契链用户编码,如果没有则为空;
引用哈希:和新建节点存在某种关联关系的节点的节点哈希,如果没有则为空;
引用关系类型:与被引用哈希所在节点的关系类型,取值为0~7:0:通用关联(内联),1:废除,指示被关联的节点的信息已经作废,2:替换,指示被关联节点的信息已被本节点的信息代替,3:扩展,指示被关联节点的信息不完整,本节点信息作为对被关联节点信息的补充或扩展,4:通用关联(外联)。0~3,为内联关系,即只能和信息提供者自己的节点关联,契链创建节点时会对信息提供者身份做比对,不是自己的节点将会创建失败;4~7,为外联关系,可以关联所有已存在的节点。
哈希提取者:表示信息的哈希值是由谁提取的,0:表示由契链平台提取,1:表示由信息提供者提取。
哈希提取算法:表示信息的哈希值的提取算法,0:SHA-256,1:SM3(国密)。
信息哈希或文件编码:如果哈希提取者为0(由契链平台提取),则必须在这里提供上传文件编码上传文件编码来源于文件上传接口;如果哈希提取者为1(由信息提供者提取),则必须在这里提供由信息提供者使用哈希提取算法提取出的哈希值。
信息标识:是指在信息提供者的系统中,能够唯一标识出该信息的编码。契链将来可以利用该编码和信息提供者系统进行对接,用于跟踪信息的状态;信息提供者也可以在自身系统未记录节点信息的情况下,利用该编码反向检索出信息和节点的关系。
  • 访问示例:

请求参数的JSON结构如下:

{
  "token": "eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiJmY2E0M2FmZmUwNzM0OTYxODU1MTBmZDVlOTc5ODk4ZSIsInN1YiI6ImFjY2VzcyIsImV4cCI6MTU5MjQwMzQyNn0.Es8c8MWKhWEHfvzPQqYG__2I-792HZ1z3FSlLsc8bO4",
  "userId": "173c1185707a4dc98eb9a277f6dc47aa",
  "referHash": "",
  "referType": 0,
  "hashVendor": 0,
  "hashAlgorithm": 0,
  "infoHash": "0edd3d844ade48f5b93a90b004c3c96f",
  "infoId": "111"
}

Request>_

curl -X POST "https://api.qlen.cn/v1/node" -H  "accept: */*" -H  "Content-Type: application/json" -d "{  \"token\": \"eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiJmY2E0M2FmZmUwNzM0OTYxODU1MTBmZDVlOTc5ODk4ZSIsInN1YiI6ImFjY2VzcyIsImV4cCI6MTU5MjQwMzQyNn0.Es8c8MWKhWEHfvzPQqYG__2I-792HZ1z3FSlLsc8bO4\",  \"userId\": \"173c1185707a4dc98eb9a277f6dc47aa\",  \"referHash\": \"\",  \"referType\": 0,  \"hashVendor\": 0,  \"hashAlgorithm\": 0,  \"infoHash\": \"0edd3d844ade48f5b93a90b004c3c96f\",  \"infoId\": \"111\"}"

Response>_

{
  "status": true,
  "code": 0,
  "message": "OK",
  "data": {
    "version": -2,
    "nodeHash": "7f6ff23d9f0c7a875be056f58a32780c5ca8255d93676e8538272a26c1b78c45",
    "nodeSeq": 432,
    "timestamp": 1592402020961,
    "nonce": 1755554462,
    "lastHash": "bfb2c09224d8dbd4f3195e91c4dd49807206eb4c071c4fa5dd9fb7e58d93c032",
    "referHash": "",
    "userId": "173c1185707a4dc98eb9a277f6dc47aa",
    "serviceId": "9251067423a9467baa991eb53052c05d",
    "label": 0,
    "infoHash": "0a37e3df4d5cd2640a6e4e9ee701d88a5152d21c1ba8e1ef050b2a5ed6f56cae",
    "infoId": "111"
  }
}

3.2. 获取最新节点

接口功能:获取契链中的最新节点。

接口规范:

  • Method: GET
  • URI: /node
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
  • 响应结果(data部分):
类型 说明
node 返回最新节点
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/node"

Response>_

{
  "status": true,
  "code": 0,
  "message": "OK",
  "data": {
    "version": -2,
    "nodeHash": "2a39ef8aabea6e2ae7726aa1edf46ed77390bd35fe78d42ad6a65e9821adcc56",
    "nodeSeq": 109,
    "timestamp": 1588163368220,
    "nonce": 857375586,
    "lastHash": "b0ccadc6a938aca67aa4cbe27ff6405c6e90ef893c5536c7d9945853231da544",
    "referHash": "",
    "userId": "7cd101634a234602bb4f462c0be78a2e",
    "serviceId": "9251067423a9467baa991eb53052c05d",
    "label": 0,
    "infoHash": "5a51b7bd14a47ada7a06b35f4cf38021f96a43c856ebaf2fcd73fd394c51b53f",
    "infoId": ""
  }
}

3.3. 通过节点哈希获取节点

接口功能:获取指定节点哈希的节点。

接口规范:

  • Method: GET
  • URI: /node/nhs/{nodeHash}
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
nodeHash string true path 节点哈希
  • 响应结果(data部分):
类型 说明
node 返回指定节点哈希的节点
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/node/nhs/b0ccadc6a938aca67aa4cbe27ff6405c6e90ef893c5536c7d9945853231da544"

Response>_

{
  "status": true,
  "code": 0,
  "message": "OK",
  "data": {
    "version": -2,
    "nodeHash": "b0ccadc6a938aca67aa4cbe27ff6405c6e90ef893c5536c7d9945853231da544",
    "nodeSeq": 108,
    "timestamp": 1588163236328,
    "nonce": 415878769,
    "lastHash": "e36d34bfccd40568af83ad369324675001e29c719051d83ccdaeebd35d425d8b",
    "referHash": "",
    "userId": "7cd101634a234602bb4f462c0be78a2e",
    "serviceId": "9251067423a9467baa991eb53052c05d",
    "label": 0,
    "infoHash": "5a51b7bd14a47ada7a06b35f4cf38021f96a43c856ebaf2fcd73fd394c51b53f",
    "infoId": "46600bc4116e415fb415cc01cf9a97d9"
  }
}

3.4. 通过节点序号获取节点

接口功能:获取指定节点序号的节点。

接口规范:

  • Method: GET
  • URI: /node/seq/{nodeSeq}
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
nodeSeq long true path 节点序号
  • 响应结果(data部分):
类型 说明
node 返回指定节点序号的节点
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/node/seq/108"

Response>_

{
  "status": true,
  "code": 0,
  "message": "OK",
  "data": {
    "version": -2,
    "nodeHash": "b0ccadc6a938aca67aa4cbe27ff6405c6e90ef893c5536c7d9945853231da544",
    "nodeSeq": 108,
    "timestamp": 1588163236328,
    "nonce": 415878769,
    "lastHash": "e36d34bfccd40568af83ad369324675001e29c719051d83ccdaeebd35d425d8b",
    "referHash": "",
    "userId": "7cd101634a234602bb4f462c0be78a2e",
    "serviceId": "9251067423a9467baa991eb53052c05d",
    "label": 0,
    "infoHash": "5a51b7bd14a47ada7a06b35f4cf38021f96a43c856ebaf2fcd73fd394c51b53f",
    "infoId": "46600bc4116e415fb415cc01cf9a97d9"
  }
}

3.5. 通过信息哈希获取节点

接口功能:获取与指定信息哈希相符的节点。

接口规范:

  • Method: GET
  • URI: /node/ihs/{infoHash}
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
infoHash string true path 信息哈希
  • 响应结果(data部分):
类型 说明
node 返回指定节点哈希的节点
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/node/ihs/5a51b7bd14a47ada7a06b35f4cf38021f96a43c856ebaf2fcd73fd394c51b53f"

Response>_

{
  "status": true,
  "code": 0,
  "message": "OK",
  "data": {
    "version": -2,
    "nodeHash": "b0ccadc6a938aca67aa4cbe27ff6405c6e90ef893c5536c7d9945853231da544",
    "nodeSeq": 108,
    "timestamp": 1588163236328,
    "nonce": 415878769,
    "lastHash": "e36d34bfccd40568af83ad369324675001e29c719051d83ccdaeebd35d425d8b",
    "referHash": "",
    "userId": "7cd101634a234602bb4f462c0be78a2e",
    "serviceId": "9251067423a9467baa991eb53052c05d",
    "label": 0,
    "infoHash": "5a51b7bd14a47ada7a06b35f4cf38021f96a43c856ebaf2fcd73fd394c51b53f",
    "infoId": "46600bc4116e415fb415cc01cf9a97d9"
  }
}

3.6. 获取所有节点

接口功能:如果不指定任何参数,则返回最新的20个节点数据,通过组合使用分页和排序参数,可以遍历整个契链的所有节点。

接口规范:

  • Method: GET
  • URI: /nodes
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
ps int false query 每页节点数,默认:20
pn int false query 页码,默认:0
re bool false query 是否反向,默认:false
  • 响应结果(data部分):
类型 说明
pager[node] 包含多个节点的pager对象
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/nodes?pn=3&ps=20&re=true"

Response>_

{
  "status": true,
  "code": 0,
  "message": "OK",
  "data": {
    "pageSize": 20,
    "pageNumber": 0,
    "totalElements": 110,
    "totalPages": 6,
    "elements": [
      {
        "version": -2,
        "nodeHash": "2a39ef8aabea6e2ae7726aa1edf46ed77390bd35fe78d42ad6a65e9821adcc56",
        "nodeSeq": 109,
        "timestamp": 1588163368220,
        "nonce": 857375586,
        "lastHash": "b0ccadc6a938aca67aa4cbe27ff6405c6e90ef893c5536c7d9945853231da544",
        "referHash": "",
        "userId": "7cd101634a234602bb4f462c0be78a2e",
        "serviceId": "9251067423a9467baa991eb53052c05d",
        "label": 0,
        "infoHash": "5a51b7bd14a47ada7a06b35f4cf38021f96a43c856ebaf2fcd73fd394c51b53f",
        "infoId": ""
      },
      ......,
      {
        "version": -2,
        "nodeHash": "55c73ef448e912abdb06802cdc4d064169b52c0e1253e8c2fbec4bd18790c40e",
        "nodeSeq": 90,
        "timestamp": 1587544096796,
        "nonce": 2091981268,
        "lastHash": "6e3b164fcb73ec4a4293cde1c8cd2547bb9fc1aaccaa23eccde367e7d50926a6",
        "referHash": "",
        "userId": "",
        "serviceId": "54444444111111112222222233333333",
        "label": 1,
        "infoHash": "aa21a9edf48a1ab40c8dba86dc1dfe4d708c62f0e2ddcfc36c200f12cfe5b59f",
        "infoId": "dfef22dss"
      }
    ]
  }
}

3.7. 通过引用哈希获取节点

接口功能:返回与指定引用哈希相符的所有节点。如果不指定任何参数,则返回最新的20个节点数据,通过组合使用分页和排序参数,可以遍历符合要求的所有节点。

接口规范:

  • Method: GET
  • URI: /nodes/rfh/{referHash}
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
referHash string true path 引用哈希
ps int false query 每页节点数,默认:20
pn int false query 页码,默认:0
re bool false query 是否反向,默认:false
  • 响应结果(data部分):
类型 说明
pager[node] 包含多个节点的pager对象
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/nodes/rfh/a80ba4fdf86a5532df50db22cd3ed0c334794082c65320ef4ad82f83a08bdaa1"

Response>_

{
  "status": true,
  "code": 0,
  "message": "OK",
  "data": {
    "pageSize": 20,
    "pageNumber": 0,
    "totalElements": 1,
    "totalPages": 1,
    "elements": [
      {
        "version": -2,
        "nodeHash": "33f43480b726badd4ce8d4e41ddf0c63f1996af13600a35b8f160d36ce000231",
        "nodeSeq": 110,
        "timestamp": 1588164762189,
        "nonce": 553682297,
        "lastHash": "2a39ef8aabea6e2ae7726aa1edf46ed77390bd35fe78d42ad6a65e9821adcc56",
        "referHash": "a80ba4fdf86a5532df50db22cd3ed0c334794082c65320ef4ad82f83a08bdaa1",
        "userId": "7cd101634a234602bb4f462c0be78a2e",
        "serviceId": "9251067423a9467baa991eb53052c05d",
        "label": 1,
        "infoHash": "5a51b7bd14a47ada7a06b35f4cf38021f96a43c856ebaf2fcd73fd394c51b53f",
        "infoId": "id001"
      }
    ]
  }
}

3.8. 通过用户编码获取节点

接口功能:返回与指定用户编码相符的所有节点。如果不指定任何参数,则返回最新的20个节点数据,通过组合使用分页和排序参数,可以遍历符合要求的所有节点。

接口规范:

  • Method: GET
  • URI: /nodes/uid/{userId}
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
userId string true path 用户编码
ps int false query 每页节点数,默认:20
pn int false query 页码,默认:0
re bool false query 是否反向,默认:false
  • 响应结果(data部分):
类型 说明
pager[node] 包含多个节点的pager对象
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/nodes/uid/7cd101634a234602bb4f462c0be78a2e?pn=0&ps=20&re=false"

Response>_

{
  "status": true,
  "code": 0,
  "message": "OK",
  "data": {
    "pageSize": 20,
    "pageNumber": 0,
    "totalElements": 8,
    "totalPages": 1,
    "elements": [
      {
        "version": -2,
        "nodeHash": "33f43480b726badd4ce8d4e41ddf0c63f1996af13600a35b8f160d36ce000231",
        "nodeSeq": 110,
        "timestamp": 1588164762189,
        "nonce": 553682297,
        "lastHash": "2a39ef8aabea6e2ae7726aa1edf46ed77390bd35fe78d42ad6a65e9821adcc56",
        "referHash": "a80ba4fdf86a5532df50db22cd3ed0c334794082c65320ef4ad82f83a08bdaa1",
        "userId": "7cd101634a234602bb4f462c0be78a2e",
        "serviceId": "9251067423a9467baa991eb53052c05d",
        "label": 1,
        "infoHash": "5a51b7bd14a47ada7a06b35f4cf38021f96a43c856ebaf2fcd73fd394c51b53f",
        "infoId": "id001"
      },
      ......,
      {
        "version": -2,
        "nodeHash": "2bab78d4d0fdd030cda082ff37eb44c1cab41662cadcf4ef756362c69902d488",
        "nodeSeq": 102,
        "timestamp": 1587548001547,
        "nonce": 199156001,
        "lastHash": "85e07acc44ec2330d63a3bd0b1c59cae4f912714422ef321570691383bc709a8",
        "referHash": "",
        "userId": "7cd101634a234602bb4f462c0be78a2e",
        "serviceId": "9251067423a9467baa991eb53052c05d",
        "label": 1,
        "infoHash": "5a51b7bd14a47ada7a06b35f4cf38021f96a43c856ebaf2fcd73fd394c51b53f",
        "infoId": "33"
      }
    ]
  }
}

3.9. 通过服务编码获取节点

接口功能:返回与指定服务编码相符的所有节点。如果不指定任何参数,则返回最新的20个节点数据,通过组合使用分页和排序参数,可以遍历符合要求的所有节点。

接口规范:

  • Method: GET
  • URI: /nodes/vid/{serviceId}
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
serviceId string true path 服务编码
ps int false query 每页节点数,默认:20
pn int false query 页码,默认:0
re bool false query 是否反向,默认:false
  • 响应结果(data部分):
类型 说明
pager[node] 包含多个节点的pager对象
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/nodes/vid/9251067423a9467baa991eb53052c05d?pn=0&ps=20&re=false"

Response>_

{
  "status": true,
  "code": 0,
  "message": "OK",
  "data": {
    "pageSize": 20,
    "pageNumber": 0,
    "totalElements": 8,
    "totalPages": 1,
    "elements": [
      {
        "version": -2,
        "nodeHash": "33f43480b726badd4ce8d4e41ddf0c63f1996af13600a35b8f160d36ce000231",
        "nodeSeq": 110,
        "timestamp": 1588164762189,
        "nonce": 553682297,
        "lastHash": "2a39ef8aabea6e2ae7726aa1edf46ed77390bd35fe78d42ad6a65e9821adcc56",
        "referHash": "a80ba4fdf86a5532df50db22cd3ed0c334794082c65320ef4ad82f83a08bdaa1",
        "userId": "7cd101634a234602bb4f462c0be78a2e",
        "serviceId": "9251067423a9467baa991eb53052c05d",
        "label": 1,
        "infoHash": "5a51b7bd14a47ada7a06b35f4cf38021f96a43c856ebaf2fcd73fd394c51b53f",
        "infoId": "id001"
      },
      ......,
      {
        "version": -2,
        "nodeHash": "2bab78d4d0fdd030cda082ff37eb44c1cab41662cadcf4ef756362c69902d488",
        "nodeSeq": 102,
        "timestamp": 1587548001547,
        "nonce": 199156001,
        "lastHash": "85e07acc44ec2330d63a3bd0b1c59cae4f912714422ef321570691383bc709a8",
        "referHash": "",
        "userId": "7cd101634a234602bb4f462c0be78a2e",
        "serviceId": "9251067423a9467baa991eb53052c05d",
        "label": 1,
        "infoHash": "5a51b7bd14a47ada7a06b35f4cf38021f96a43c856ebaf2fcd73fd394c51b53f",
        "infoId": "33"
      }
    ]
  }
}

4. 辅助模块

4.1. 获取节点统计信息

接口功能:获取节点、用户、服务的统计信息

接口规范:

  • Method: GET
  • URI: /ass/nsum
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
  • 响应结果(data部分):
类型 说明
nsum 返回节点统计信息
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/ass/nsum"

Response>_

{  
  "status": true,  
  "code": 0,  
  "message": "OK",  
  "data": {  
    "nodeCount": 90033,  
    "userCount": 5,  
    "vendorCount": 4  
  }  
}  

4.2. 获取服务统计信息

接口功能:获取各服务的节点数的统计信息

接口规范:

  • Method: GET
  • URI: /ass/vsum
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
  • 响应结果(data部分):
类型 说明
pager[vsum] 返回多个服务对应的统计信息
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/ass/vsum"

Response>_

{  
  "status": true,  
  "code": 0,  
  "message": "OK",  
  "data": {  
    "pageSize": 4,  
    "pageNumber": 0,  
    "totalElements": 4,  
    "totalPages": 1,  
    "elements": [  
      {  
        "vendorId": "11111111222222223333333344444444",  
        "count": 70001  
      },  
      {  
        "vendorId": "54444444111111112222222233333333",  
        "count": 20003  
      },  
      {  
        "vendorId": "9251067423a9467baa991eb53052c05d",  
        "count": 28  
      },  
      {  
        "vendorId": "51694c69616e546563686e6f6c6f6779",  
        "count": 1  
      }  
    ]  
  }  
}  

4.3. 判断用户编码是否有效

接口功能:如果服务商系统中需要将自己的账号和契链用户的用户编码绑定,通过本接口可以判断用户自己输入的契链用户编码是否有效。

接口规范:

  • Method: GET
  • URI: /ass/uid/{userId}
  • 请求参数表:
参数名 数据类型 必需 传参方式 说明
userId string true path 用户编码
  • 响应结果(data部分):
类型 说明
bool 用户编码是否有效
  • 访问示例:

Request>_

curl -X GET "https://api.qlen.cn/v1/ass/uid/7cd101634a234602bb4f462c0be78a2e"

Response>_

{  
  "status": true,  
  "code": 0,  
  "message": "OK",  
  "data": true  
}