接口说明

1. 合约接口

1.1. 合约编译接口

接口描述

调用此接口编译合约。上传合约文件zip压缩包(压缩包里的每个合约的文件名要和合约名一致,合约引用需使用“./xxx.sol”),返回合约编译信息。

接口URL

http://localhost:8082/webase-transaction/contract/compile

调用方法

HTTP POST

请求参数

1)参数表

序号中文参数名类型最大长度必填说明
1合约文件filezip必须是zip压缩包

2)数据格式

压缩包文件

响应参数

1)参数表

序号中文参数名类型最大长度必填说明
1返回码codeString返回码信息请附录1
2提示信息messageString
3返回数据dataObject

2)数据格式

a.请求正常返回结果

  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": [
  5. {
  6. "contractName": "HelloWorld",
  7. "contractBin": "xxx",
  8. "contractAbi": []
  9. }
  10. ]
  11. }

b.异常返回结果示例(信息详情请参看附录1)

  1. {
  2. "code": 103001,
  3. "message": "system error",
  4. "data": null
  5. }

1.2. 合约部署接口

接口描述

调用此接口发送合约部署相关信息,交易服务子系统会将合约部署请求信息缓存到数据库,通过轮询服务向节点发送交易请求,确保合约成功部署。

接口URL

http://localhost:8082/webase-transaction/contract/deploy

调用方法

HTTP POST

请求参数

1)参数表

序号中文参数名类型最大长度必填说明
1群组编号groupIdint16
2部署业务流水号uuidDeployString64
3签名类型signTypeint20-本地配置私钥签名,1-本地随机私钥签名,2-云端签名
4合约BincontractBinString
5合约AbicontractAbiList\<Object>JSON数组
6构造方法参数funcParamList\<Object>JSON数组

2)数据格式

  1. {
  2. "groupId":1,
  3. "uuidDeploy":"XXX",
  4. "signType":0,
  5. "contractBin":"0xXXXXX",
  6. "contractAbi":[],
  7. "funcParam":["hello"]
  8. }

响应参数

1)参数表

序号中文参数名类型最大长度必填说明
1返回码codeString返回码信息请附录1
2提示信息messageString
3返回数据dataObject

2)数据格式

a.请求正常返回结果

  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": null
  5. }

b.异常返回结果示例(信息详情请参看附录1)

  1. {
  2. "code": 103001,
  3. "message": "system error",
  4. "data": null
  5. }

1.3. 合约地址查询接口

接口描述

根据群组编号和和部署业务流水号查询部署的合约地址。

接口URL

http://localhost:8082/webase-transaction/contract/address/{groupId}/{uuidDeploy}

调用方法

HTTP GET

请求参数

1)参数表

序号中文参数名类型最大长度必填说明
1群组编号groupIdint16
2部署业务流水号uuidDeployString64

2)数据格式

http://127.0.0.1:8082/webase-transaction/contract/address/1/10001

响应参数

1)参数表

序号中文参数名类型最大长度必填说明
1返回码codeString返回码信息请附录1
2提示信息messageString
3返回数据dataObject合约地址

2)数据格式

a.请求正常返回结果

  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": "0xXXXXX"
  5. }

b.异常返回结果示例(信息详情请参看附录1)

  1. {
  2. "code": 103001,
  3. "message": "system error",
  4. "data": null
  5. }

1.4. 部署event查询接口

接口描述

根据群组编号和和部署业务流水号查询部署的合约的构造函数的event信息。

接口URL

http://localhost:8082/webase-transaction/contract/event/{groupId}/{uuidDeploy}

调用方法

HTTP GET

请求参数

1)参数表

序号中文参数名类型最大长度必填说明
1群组编号groupIdint16
2部署业务流水号uuidDeployString64

2)数据格式

http://127.0.0.1:8082/webase-transaction/contract/event/1/10001

响应参数

1)参数表

序号中文参数名类型最大长度必填说明
1返回码codeString返回码信息请附录1
2提示信息messageString
3返回数据dataObject

2)数据格式

a.请求正常返回结果

  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": {
  5. "constructorEvent1": [
  6. "hello!"
  7. ],
  8. "constructorEvent": [
  9. "test",
  10. 8
  11. ]
  12. }
  13. }

b.异常返回结果示例(信息详情请参看附录1)

  1. {
  2. "code": 103001,
  3. "message": "system error",
  4. "data": null
  5. }

2. keystore接口

2.1. 查询账户地址接口

接口描述

查询本地配置私钥对应的账户地址 。

接口URL

http://localhost:8082/webase-transaction/key/address

调用方法

HTTP GET

请求参数

1)参数表

2)数据格式

响应参数

1)参数表

序号中文参数名类型最大长度必填说明
1返回码codeString返回码信息请附录1
2提示信息messageString
3返回数据dataObject

2)数据格式

a.请求正常返回结果

  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": {
  5. "0xfe12013103cf85f05b0862e5ef49da4fbdbd8f99"
  6. }
  7. }

b.异常返回结果示例(信息详情请参看附录1)

  1. {
  2. "code": 103001,
  3. "message": "system error",
  4. "data": null
  5. }

3. 交易接口

3.1. 交易请求接口

接口描述

调用此接口发送无状态交易请求,交易服务子系统会将交易请求信息缓存到数据库,通过轮询服务向节点发送交易请求,确保交易成功上链。当部署业务流水号为空时(即不是调用交易子系统部署合约),合约地址和abi不能为空。

接口URL

http://localhost:8082/webase-transaction/trans/send

调用方法

HTTP POST

请求参数

1)参数表

序号中文参数名类型最大长度必填说明
1群组编号groupIdint16
2交易业务流水号uuidStatelessString64
3部署业务流水号uuidDeployString64
4签名类型signTypeint20-本地配置私钥签名,1-本地随机私钥签名,2-云端签名
5合约地址contractAddressString
6合约AbicontractAbiList\<Object>JSON数组
7调用方法名funcNameString
8方法参数funcParamList\<Object>JSON数组

2)数据格式

  1. {
  2. "groupId":1,
  3. "uuidStateless":"XXX",
  4. "uuidDeploy":"XXX",
  5. "signType":0,
  6. "contractAddress":"0xXXXXX",
  7. "contractAbi":[],
  8. "funcName":"set",
  9. "funcParam":["hello"]
  10. }

响应参数

1)参数表

序号中文参数名类型最大长度必填说明
1返回码codeString返回码信息请附录1
2提示信息messageString
3返回数据dataObject

2)数据格式

a.请求正常返回结果

  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": null
  5. }

b.异常返回结果示例(信息详情请参看附录1)

  1. {
  2. "code": 103001,
  3. "message": "system error",
  4. "data": null
  5. }

3.2. 交易查询接口

接口描述

调用此接口同步从节点查询交易信息。当部署业务流水号为空时(即不是调用交易子系统部署合约),合约地址和abi不能为空。

接口URL

http://localhost:8082/webase-transaction/trans/call

调用方法

HTTP POST

请求参数

1)参数表

序号中文参数名类型最大长度必填说明
1群组编号groupIdint16
2部署业务流水号uuidDeployString64
3合约地址contractAddressString
4合约AbicontractAbiList\<Object>JSON数组
5调用方法名funcNameString
6方法参数funcParamList\<Object>JSON数组

2)数据格式

  1. {
  2. "groupId":1,
  3. "uuidDeploy":"XXX",
  4. "contractAbi":[],
  5. "funcName":"get",
  6. "funcParam":[]
  7. }

响应参数

1)参数表

序号中文参数名类型最大长度必填说明
1返回码codeString返回码信息请附录1
2提示信息messageString
3返回数据dataObject

2)数据格式

a.请求正常返回结果

  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": [
  5. "hello"
  6. ]
  7. }

b.异常返回结果示例(信息详情请参看附录1)

  1. {
  2. "code": 103001,
  3. "message": "system error",
  4. "data": null
  5. }

3.3. 交易请求event查询接口

接口描述

根据群组编号和交易业务流水号查询交易请求的event信息。

接口URL

http://localhost:8082/webase-transaction/trans/event/{groupId}/{uuidStateless}

调用方法

HTTP GET

请求参数

1)参数表

序号中文参数名类型最大长度必填说明
1群组编号groupIdint16
2交易业务流水号uuidStatelessString64

2)数据格式

http://127.0.0.1:8082/webase-transaction/trans/event/1/20001

响应参数

1)参数表

序号中文参数名类型最大长度必填说明
1返回码codeString返回码信息请附录1
2提示信息messageString
3返回数据dataObject

2)数据格式

a.请求正常返回结果

  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": {
  5. "setEvent": [
  6. "test"
  7. ],
  8. "setEvent1": [
  9. "test"
  10. ]
  11. }
  12. }

b.异常返回结果示例(信息详情请参看附录1)

  1. {
  2. "code": 103001,
  3. "message": "system error",
  4. "data": null
  5. }

3.4. 交易请求output查询接口

接口描述

根据群组编号和交易业务流水号查询交易请求的output信息。

接口URL

http://localhost:8082/webase-transaction/trans/output/{groupId}/{uuidStateless}

调用方法

HTTP GET

请求参数

1)参数表

序号中文参数名类型最大长度必填说明
1群组编号groupIdint16
2交易业务流水号uuidStatelessString64

2)数据格式

http://127.0.0.1:8082/webase-transaction/trans/output/1/20001

响应参数

1)参数表

序号中文参数名类型最大长度必填说明
1返回码codeString返回码信息请附录1
2提示信息messageString
3返回数据dataObject

2)数据格式

a.请求正常返回结果

  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": [
  5. "hello!"
  6. ]
  7. }

b.异常返回结果示例(信息详情请参看附录1)

  1. {
  2. "code": 103001,
  3. "message": "system error",
  4. "data": null
  5. }

附录

1. 返回码信息列表

Codemessage描述
0success正常
103001system error系统异常
103002param valid fail参数校验异常
203001group id cannot be empty群组编号不能为空
203002uuid cannot be empty业务流水号不能为空
203003sign type cannot be empty签名类型不能为空
203004contract bin cannot be empty合约bin不能为空
203005contract abi cannot be empty合约abi不能为空
203006contract address cannot be empty合约地址不能为空
203007function name cannot be empty方法名不能为空
303001uuid is already exists业务流水号已经存在
303002get sign data from sign service error调用签名服务签名错误
303003contract funcParam is error合约方法参数错误
303004sign type is not exists签名类型不存在
303005contract abi is empty合约abi不存在
303006request function can not be constant交易上链不能为constant方法
303007query function must be constant查询方法必须是constant
303008query data from chain failed查询链上数据失败
303009file cannot be empty文件不能为空
303010it is not a zip file文件不是zip格式
303011contract has not been deployed合约还没有部署
303012contract compile error合约编译错误
303013node request failed节点请求失败
303014there is not event不存在event
303015trans has not been sent to the chain交易还没有上链
303016if deploy uuid is empty, contract address and contract abi cannot be empty部署业务流水号为空时,合约地址和abi不能为空
303017trans output is empty交易返回值为空
303018trans is not exist交易不存在
303019request group id has not been configured请求的群组编号未配置