1. 接口描述
接口请求域名: tbaas.tencentcloudapi.com 。
动态部署并发布Bcos合约
默认接口请求频率限制:20次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:DeployDynamicBcosContract。 |
Version | 是 | String | 公共参数,本接口取值:2018-04-16。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-guangzhou 。 |
ClusterId | 是 | String | 网络ID,可在区块链网络详情或列表中获取 |
GroupId | 是 | Integer | 群组编号,可在群组列表中获取 |
AbiInfo | 是 | String | 合约编译后的ABI,可在合约详情获取 |
ByteCodeBin | 是 | String | 合约编译得到的字节码,hex编码,可在合约详情获取 |
SignUserId | 是 | String | 签名用户编号,可在私钥管理页面获取 |
ConstructorParams | 否 | String | 构造函数入参,Json数组,多个参数以逗号分隔(参数为数组时同理),如:["str1",["arr1","arr2"]] |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
ContractAddress | String | 部署成功返回的合约地址 |
RequestId | String | 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 动态部署Bcos合约
输入示例
POST / HTTP/1.1
Host: tbaas.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: DeployDynamicBcosContract
<公共请求参数>
{
"ClusterId": "251005746bc987bojjue8",
"SignUserId": "2SSS200021",
"AbiInfo": "[{\"constant\":false,\"inputs\":[{\"name\":\"n\",\"type\":\"string\"}],\"name\":\"set\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"get\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"}]",
"ByteCodeBin": "608060405234801561001057600080fd5b506040805190810160405280600d81526020017f48656c6c6f2c20576f726c6421000000000000000000000000000000000000008152506000908051906020019061005c929190610062565b50610107565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100a357805160ff19168380011785556100d1565b828001600101855582156100d1579182015b828111156100d05782518255916020019190600101906100b5565b5b5090506100de91906100e2565b5090565b61010491905b808211156101005760008160009055506001016100e8565b5090565b90565b6102d7806101166000396000f30060806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680634ed3885e146100515780636d4ce63c146100ba575b600080fd5b34801561005d57600080fd5b506100b8600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061014a565b005b3480156100c657600080fd5b506100cf610164565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561010f5780820151818401526020810190506100f4565b50505050905090810190601f16801561013c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b8060009080519060200190610160929190610206565b5050565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156101fc5780601f106101d1576101008083540402835291602001916101fc565b820191906000526020600020905b8154815290600101906020018083116101df57829003601f168201915b5050505050905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061024757805160ff1916838001178555610275565b82800160010185558215610275579182015b82811115610274578251825591602001919060010190610259565b5b5090506102829190610286565b5090565b6102a891905b808211156102a457600081600090555060010161028c565b5090565b905600a165627a7a72305820238c9f89165d4c9f808f6cb79037607be9c38a0f9bb8bdfb9ec4cce69b7371180029",
"GroupId": 1
}
输出示例
{
"Response": {
"RequestId": "2cfd9111-1954-4c2e-9564-975ce1d9ad2b",
"ContractAddress": "0xasdfasdf23fasdfas2Qreffasfaefad"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python
- Tencent Cloud SDK 3.0 for Java
- Tencent Cloud SDK 3.0 for PHP
- Tencent Cloud SDK 3.0 for Go
- Tencent Cloud SDK 3.0 for NodeJS
- Tencent Cloud SDK 3.0 for .NET
- Tencent Cloud SDK 3.0 for C++
- Tencent Cloud SDK 3.0 for Ruby
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
AuthFailure.UnauthorizedOperation | 用户无权限访问。 |
FailedOperation.CompileDeployedContract | Bcos不能编译已经部署的合约。 |
FailedOperation.CompileDeployingContract | Bcos不能编译正在部署的合约。 |
FailedOperation.ContractEditedByOtherAgency | Bcos只能由该合约所属机构执行操作。 |
FailedOperation.DeleteDeployedContract | Bcos合约已部署,无法删除。 |
FailedOperation.DeleteDeployingContract | Bcos合约正在部署,无法删除。 |
FailedOperation.DeployContractNotCompile | Bcos不能部署未编译的合约。 |
FailedOperation.FrontRequestFail | Bcos前置服务调用失败。 |
FailedOperation.InvalidGroupPk | Bcos无效的群组编号。 |
FailedOperation.InvalidKeyUser | Bcos无效的私钥用户信息。 |
FailedOperation.NewContract | Bcos新建合约失败。 |
FailedOperation.NotDeployedContract | Bcos合约未部署。 |
FailedOperation.UpdateDeployedContract | Bcos更新已部署合约。 |
InternalError.DBError | Bcos数据库操作异常,请重试。 |
InternalError.FailPreform | 内部错误。 |
InternalError.InvalidContractParam | Bcos无效的合约参数。 |
InternalError.MethodTypeNotSupport | Bcos不支持的请求类型。 |
InternalError.ServerError | Bcos服务器异常,请重试。 |
InvalidParameter.AccountParamError | Bcos账号参数错误。 |
InvalidParameter.AgencyInvalid | Bcos无效的机构信息。 |
InvalidParameter.AgencyNetParamInvalid | Bcos新增机构网络关联信息入参错误。 |
InvalidParameter.AllianceIdOfNetEmpty | Bcos所属联盟编号不能为空。 |
InvalidParameter.ContractIdInvalid | Bcos无效的合约编号。 |
InvalidParameter.DataHadExist | Bcos数据已存在,请勿重复添加。 |
InvalidParameter.EmptyParam | Bcos无效参数。 |
InvalidParameter.ExpireTimeInvalid | Bcos无效的失效时间。 |
InvalidParameter.FrontConnFail | Bcos前置的IP或端口无效。 |
InvalidParameter.FrontIpInvalid | Bcos IP格式错误。 |
InvalidParameter.FrontParamError | Bcos新增前置服务参数错误。 |
InvalidParameter.FrontRequestFail | Bcos前置服务调用失败。 |
InvalidParameter.InvalidContractArg | Bcos无效的合约参数。 |
InvalidParameter.NetIdInvalid | Bcos无效的网络编号。 |
InvalidParameter.NetParamError | Bcos网络参数错误。 |
InvalidParameter.NewKeyUserParamError | Bcos新增私钥用户参数错误。 |
InvalidParameter.NoInfoToDelete | Bcos无可删信息,请确认后重试。 |
InvalidParameter.NotFoundValidFront | Bcos没有有效的前置服务信息。 |
InvalidParameter.ReDeployedContract | Bcos不能重复部署合约。 |
InvalidParameter.ReDeployingContract | Bcos合约正在部署中,请勿重复操作。 |
InvalidParameter.RoleInvalid | Bcos无效的角色。 |
MissingParameter.EmptyParam | Bcos缺少参数。 |
ResourceNotFound.EmptyData | Bcos查询不到数据。 |