
# 获取安装的链码列表
#### 功能介绍
获取已经安装的链码列表
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/BCS/doc?api=ListInstalledChaincode)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### URI
GET /v2/agent/apis/chaincodes
表1Query参数 
| 参数     | 是否必选 | 参数类型    | 描述                |
|:---|:---|:---|:---|
| offset | 否    | Integer | 查询链代码列表的起始位置，默认为0 |
| limit  | 否    | Integer | 查询链代码列表的数量，默认为10  |
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述      |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | 用户Token |
   
#### 响应参数
**状态码： 200**
表3响应Body参数 
| 参数         | 参数类型                                                                                | 描述   |
|:---|:---|:---|
| count      | Integer                                                                             | 链码总数 |
| chaincodes | Array of [ChaincodeInfo] objects | 链码列表 |
   
 表4ChaincodeInfo 
| 参数                   | 参数类型                                                                                    | 描述                  |
|:---|:---|:---|
| chaincode_name       | String                                                                                  | 链码名称                |
| chaincode_language   | String                                                                                  | 链码开发语言              |
| update_time          | String                                                                                  | 链码更新时间              |
| chaincode_version    | String                                                                                  | 链码版本，多个链码之间以逗号(,)分隔 |
| install_org_infos    | Array of [PeerInfo] objects               | 链码的安装信息             |
| instantiated_channel | [instantiated_channel] object | 链码通道信息              |
| instantiated_info    | [instantiated_info] object       | 实例化信息               |
   
 表5PeerInfo 
| 参数        | 参数类型             | 描述           |
|:---|:---|:---|
| org_name  | String           | 组织名称         |
| org_id    | String           | 组织id         |
| peer_name | String           | 节点名称         |
| peer_id   | String           | 节点id         |
| status    | String           | 节点状态         |
| channels  | Array of strings | 未实例化的peer信息  |
| url       | String           | Peer节点的url信息 |
| peer      | String           | Peer节点的内部域名  |
   
 表6instantiated_channel 
| 参数         | 参数类型                                                                                                          | 描述      |
|:---|:---|:---|
| error      | Array of [CCInstantiatedChannelError] objects | 实例化错误信息 |
| success    | Array of strings                                                                                              | 成功的通道   |
| inprogress | Array of strings                                                                                              | 实例化进度   |
   
 表7CCInstantiatedChannelError 
| 参数           | 参数类型   | 描述    |
|:---|:---|:---|
| channel_name | String | 错误通道名 |
| error_detail | String | 错误详情  |
   
 表8instantiated_info 
| 参数       | 参数类型                                                                      | 描述   |
|:---|:---|:---|
| channels | Array of [channels] objects | 通道信息 |
   
 表9channels 
| 参数         | 参数类型                                                              | 描述      |
|:---|:---|:---|
| channel_id | String                                                            | 通道名称    |
| orgs       | Array of [orgs] objects | 通道内组织信息 |
| versions   | Array of strings                                                  | 版本信息    |
   
 表10orgs 
| 参数       | 参数类型   | 描述   |
|:---|:---|:---|
| org_name | String | 组织名  |
| org_id   | String | 组织id |
   
**状态码： 400**
表11响应Body参数 
| 参数            | 参数类型   | 描述   |
|:---|:---|:---|
| error_code    | String | 错误码  |
| error_message | String | 错误描述 |
| error_msg     | String | 错误描述 |
   
#### 请求示例
```
GET https://192.168.0.90:30603/v2/agent/apis/chaincodes
```
#### 响应示例
**状态码： 200**
Success
```
{
  "count" : 12,
  "chaincodes" : [ {
    "chaincode_name" : "test001",
    "chaincode_version" : "1.0",
    "update_time" : "2021-01-12T11:32:04.193358708+08:00",
    "instantiated_info" : {
      "channels" : [ {
        "channel_id" : "channel",
        "versions" : [ "1.0" ]
      }, {
        "channel_id" : "testchannel",
        "orgs" : null,
        "versions" : [ "1.0" ]
      } ]
    },
    "chaincode_language" : "golang"
  } ]
}
```
**状态码： 400**
Bad Request
```
{
  "error_code" : "BCS.4000013",
  "error_message" : "request body is too large"
}
```
#### 状态码
| 状态码 | 描述          |
|:---|:---|
| 200 | Success     |
| 400 | Bad Request |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/devg-bcs/ErrorCode.html)。
