
# 获取数据源中表的字段 - ListColumns_offline
#### 功能介绍
获取数据源中表的字段。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-dataartsstudio/making_request.html)。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-dataartsstudio/abcd.html)。
- 如果使用身份策略授权，当前API调用无需身份策略权限。
 
#### URI
GET /v2/{project_id}/{connection_id}/datatables/{table_id}/columns
表1路径参数 
| 参数            | 是否必选 | 参数类型   | 描述                                                                                                    |
|:---|:---|:---|:---|
| project_id    | 是    | String | 项目ID，获取方法请参见[项目ID和账号ID](https://support.huaweicloud.com/api-dataartsstudio/projectid_accountid.html)。 |
| connection_id | 是    | String | 数据连接id，可通过[数据连接列表](https://support.huaweicloud.com/api-dataartsstudio/ListDataconnections.html)中获取。   |
| table_id      | 是    | String | 数据表的id信息。                                                                                             |
   
表2Query参数 
| 参数     | 是否必选 | 参数类型   | 描述      |
|:---|:---|:---|:---|
| limit  | 否    | String | 数据条数限制。 |
| offset | 否    | String | 偏移量。    |
   
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                       |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | 用户Token，使用[Token认证](https://support.huaweicloud.com/api-dataartsstudio/dataartsstudio_02_0010.html)时必选。通过调用IAM服务的"获取用户Token"接口获取响应消息头中X-Subject-Token的值。 |
| workspace    | 是    | String | 数据所在空间的id值。                                                                                                                                              |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数          | 参数类型                                                                       | 描述         |
|:---|:---|:---|
| table_id    | String                                                                     | 数据表的id信息。  |
| total_count | Integer                                                                    | 当前表中字段记录数。 |
| columns     | Array of [ColumnsList] objects | 字段列表。      |
   
 表5ColumnsList 
| 参数            | 参数类型    | 描述         |
|:---|:---|:---|
| comment       | String  | 字段注解。      |
| column_name   | String  | 字段名称。      |
| column_type   | String  | 字段类型。      |
| seq_number    | Integer | 字段的顺序。     |
| primary       | Boolean | 字段是否为主键。   |
| partition_col | Boolean | 是否对字段进行分割。 |
   
**状态码：400**
表6响应Body参数 
| 参数         | 参数类型   | 描述       |
|:---|:---|:---|
| error_msg  | String | 返回的错误信息。 |
| error_code | String | 返回的错误码。  |
   
**状态码：500**
表7响应Body参数 
| 参数         | 参数类型   | 描述       |
|:---|:---|:---|
| error_msg  | String | 返回的错误信息。 |
| error_code | String | 返回的错误码。  |
   
#### 请求示例
无
#### 响应示例
**状态码：200**
Success，返回字段列表。
```
{
  "columns" : [ {
    "comment" : "",
    "column_name" : "age",
    "column_type" : "integer",
    "seq_number" : 2,
    "primary" : false,
    "partition_col" : false
  }, {
    "comment" : "",
    "column_name" : "address",
    "column_type" : "character varying",
    "seq_number" : 3,
    "primary" : false,
    "partition_col" : false
  }, {
    "comment" : "",
    "column_name" : "phone_number",
    "column_type" : "character varying",
    "seq_number" : 4,
    "primary" : false,
    "partition_col" : false
  } ],
  "total_count" : 7,
  "table_id" : "NativeTable-9b18c0ad6ef5404caef4e6cbaccdae6f-postgres-dm_autotest-QQQQQQQstudents_infoweq"
}
```
**状态码：400**
BadRequest。
```
{
  "error_code" : "DAYU.4402",
  "error_msg" : "The operation failed， detail msg {0}."
}
```
**状态码：500**
Internal Server Error。
```
{
  "error_code" : "DAYU.3531",
  "error_msg" : "Internal server error: {0}"
}
```
#### 状态码
| 状态码 | 描述                     |
|:---|:---|
| 200 | Success，返回字段列表。        |
| 400 | BadRequest。            |
| 500 | Internal Server Error。 |
   
