
# 查询collection - DescribeCollection
#### 功能介绍
在知识仓实例下查询指定的collection的信息。
#### URI
POST /v1/collections/describe
#### 请求参数
表1请求Body参数 
| 参数              | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|:---|
| store_name      | 是    | String | **参数解释：** 知识仓实例名称，region内唯一。 **约束限制：** 长度范围为3到63个字符，支持小写字母、数字、中划线（ - ），第一个字符只能够是小写字母，中划线（ - ）不得出现在字符串末尾。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                        |
| collection_name | 是    | String | **参数解释：** collection名称，知识仓内唯一。 **约束限制：** 长度范围为1到255个字符，支持字母、数字、中划线（ - ）和下划线（ _ ），大小写敏感。第一个字符只能够是下划线（ _ ）和字母，中划线（ - ）不得出现在字符串末尾。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
#### 响应参数
**状态码：200**
表2响应Body参数 
| 参数      | 参数类型                                                                                      | 描述                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|
| code    | String                                                                                    | **参数解释：** 返回码。参见错误码章节。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值:** 不涉及。 |
| message | String                                                                                    | **参数解释：** 描述信息。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值:** 不涉及。        |
| data    | [describe_collection_data] object | **参数解释：** 响应数据。 **约束限制：** 不涉及。                                                                                                                                                                                              |
   
 表3describe_collection_data 
| 参数              | 参数类型                                                                    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|
| store_name      | String                                                                  | **参数解释：** 知识仓实例名称，region内唯一。 **约束限制：** 长度范围为3到63个字符，支持小写字母、数字、中划线（ - ），第一个字符只能够是小写字母，中划线（ - ）不得出现在字符串末尾。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                      |
| collection_name | String                                                                  | **参数解释：** collection名称，知识仓内唯一。 **约束限制：** 长度范围为1到255个字符，支持字母、数字、中划线（ - ）和下划线（ _ ），大小写敏感。第一个字符只能够是下划线（ _ ）和字母，中划线（ - ）不得出现在字符串末尾。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                               |
| fields          | Array of [field_data] objects | **参数解释：** collection各个field信息。 **约束限制：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                       |
| load_state      | String                                                                  | **参数解释：** 标识当前Collection加载状态。 **约束限制：** 不涉及。 **取值范围：** 1、LoadStateLoaded：表示当前Collection已准备就绪，可正常使用。 2、LoadStateLoading：表示当前Collection正在load。 3、LoadStateNotLoad：表示collection未加载。 **默认取值:** 不涉及。 |
| description     | String                                                                  | **参数解释：** Collection 的描述信息。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值:** 不涉及。                                                                                                                                                                                                    |
| indexes         | Array of [index_desc] objects | **参数解释：** 索引的配置信息。 **约束限制：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                   |
| entity_num      | Long                                                                    | **参数解释：** collection中的entity数量。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值:** 不涉及。                                                                                                                                                                                                |
| partitions_num  | Integer                                                                 | **参数解释：** collection中的partition数量。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值:** 不涉及。                                                                                                                                                                                             |
| shards_num      | Integer                                                                 | **参数解释：** collection中的shard数量。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值:** 不涉及。                                                                                                                                                                                                 |
   
 表4field_data 
| 参数            | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|
| field_name    | String  | **参数解释：** 要在集合中创建的字段名称。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值:** 不涉及。                                                                                                 |
| data_type     | String  | **参数解释：** 字段的数据类型。 **约束限制：** 不涉及。 **取值范围：** "Bool","Int8","Int16","Int32","Int64","Float","String","Array","JSON","FloatVector", "SparseFloatVector"。 **默认取值:** 不涉及。 |
| primary_key   | Boolean | **参数解释：** 是否是主键字段。 **约束限制：** 不涉及。 **取值范围：** true：表示该列将被用作主键。 false：表示该列不作为主键。 **默认取值:** 不涉及。                                   |
| partition_key | Boolean | **参数解释：** 是否是partition key。 **约束限制：** 不涉及。 **取值范围：** true：表示该列将被用作分区键。 false：表示该列不作为分区键。 **默认取值:** 不涉及。                        |
| dim           | String  | **参数解释：** 向量列的维度值。 **约束限制：** field的数据类型是FloatVector, SparseFloatVector时生效。 **取值范围：** 不涉及。 **默认取值:** 不涉及。                                                             |
| max_length    | String  | **参数解释：** 字符串列设置的最大长度值。 **约束限制：** field的数据类型是String或者 Array 元素类型为String类型时生效。 **取值范围：** 不涉及。 **默认取值:** 不涉及。                                                          |
| max_capacity  | String  | **参数解释：** 数组列设置的最大容量值。 **约束限制：** field的数据类型是 Array 类型时生效。 **取值范围：** 不涉及。 **默认取值:** 不涉及。                                                                              |
   
 表5index_desc 
| 参数           | 参数类型                 | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|
| index_name   | String               | **参数解释：** 描述的索引名称。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                         |
| field_name   | String               | **参数解释：** 索引对应的字段名称。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                       |
| index_params | Map\<String,Object\> | **参数解释：** 索引的参数信息。详情请查阅CreateIndex接口中 index_param结构中params字段的描述。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值:** 不涉及。                                                                                           |
| index_state  | String               | **参数解释：** 索引状态。 **约束限制：** 不涉及。 **取值范围：** -"InProgress"：索引正在构建中或还未开始构建。 -"Finished"：索引构建完成。 -"Failed"：索引构建失败。 **默认取值:** 不涉及。 |
   
**状态码：400**
表6响应Body参数 
| 参数      | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|
| code    | String | **参数解释：** 返回码。参见错误码章节。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值:** 不涉及。 |
| message | String | **参数解释：** 描述信息。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值:** 不涉及。        |
   
#### 请求示例
```
{
  "store_name" : "test-storename",
  "collection_name" : "test-collection"
}
```
#### 响应示例
**状态码：200**
执行成功，返回指定store中指定collection信息
```
{
  "code" : "LMS.00000000",
  "data" : {
    "collection_name" : "test-collection",
    "description" : "",
    "entity_num" : 0,
    "fields" : [ {
      "data_type" : "Int64",
      "field_name" : "pk",
      "partition_key" : false,
      "primary_key" : true
    }, {
      "data_type" : "FloatVector",
      "dim" : "3",
      "field_name" : "vector",
      "partition_key" : false,
      "primary_key" : false
    }, {
      "data_type" : "String",
      "field_name" : "scalar",
      "max_length" : "256",
      "partition_key" : false,
      "primary_key" : false
    } ],
    "indexes" : [ {
      "field_name" : "vector",
      "index_name" : "vector_index",
      "index_params" : {
        "beamwidth" : "4",
        "encoding_type" : "SQ",
        "index_type" : "HANNS",
        "max_degree" : "56",
        "metric_type" : "L2",
        "search_list_size" : "100"
      },
      "index_state" : "Finished"
    } ],
    "load_state" : "LoadStateLoaded",
    "partitions_num" : 1,
    "shards_num" : 2,
    "store_name" : "test-storename"
  },
  "message" : "describe collection success"
}
```
**状态码：400**
集合查询失败
```
{
  "code" : "LMS.00003001",
  "message" : "ErrCollectionNotFound: Collection not found"
}
```
#### 状态码
| 状态码 | 描述                            |
|:---|:---|
| 200 | 执行成功，返回指定store中指定collection信息 |
| 400 | 集合查询失败                        |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-dwr/ErrorCode.html)。
