
# 查询某个租户的所有任务
#### 功能介绍
调用该接口查询某个租户的所有任务信息。
#### URI
GET /v1/{project_id}/objectstorage/task?start={start}\&limit={limit}\&state={state}
参数说明请参见[表1]。
 表1参数说明 
| 参数         | 是否必选 | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|:---|:---|:---|
| project_id | 是    | 项目ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| start      | 是    | 起始的任务序号。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| limit      | 是    | 返回任务个数的最大值，最大不超过100，否则查询失败。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| state      | 否    | 任务状态。 - 0：初始化  - 1：等待调度  - 2：正在执行  - 3：停止  - 4：失败  - 5：成功   |
   
#### 请求消息
**请求参数**
无。
#### 响应消息
**响应参数**
响应参数如[表2]所示。
 表2响应参数 
| 参数                             | 参数类型       | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|
| id                             | long       | 任务ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| name                           | String     | 任务名称。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| src_node                       | JSONObject | 源端节点信息，参见[表3]。                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| dst_node                       | JSONObject | 目的端节点信息，参见[表5]。                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| thread_num                     | int        | 迁移线程数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| status                         | int        | 任务状态。 - 0：初始化  - 1：等待调度  - 2：正在执行  - 3：停止  - 4：失败  - 5：成功   |
| progress                       | double     | 任务进度，例如：0.522代表任务进度为52.2%，1代表任务进度为100%。                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| migrate_speed                  | long       | 任务迁移速度（Byte/s）。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| enableKMS                      | boolean    | 是否使用KMS加密。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| description                    | String     | 任务描述，没有设置时为空字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| error_reason                   | JSONObject | 任务失败原因，参见[表8]。非失败状态时该字段为空字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| total_size                     | long       | 任务迁移总大小。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| complete_size                  | long       | 任务迁移完成大小。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| start_time                     | long       | 任务启动时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| left_time                      | long       | 任务剩余时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| total_time                     | long       | 任务总时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| success_num                    | long       | 迁移成功对象数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| fail_num                       | long       | 迁移失败对象数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| total_num                      | long       | 迁移对象总数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| smnInfo                        | JSONObject | SMN消息，参见[表6]。 说明： 用户可以选择是否发送SMN信息，在迁移任务已经结束的情况下才会有该字段。                                                                                                                                                                                                                                                                                                                                                        |
| migrate_since                  | long       | 迁移指定时间，表示仅迁移在指定时间之后修改的源端待迁移对象。默认为0，表示不设置迁移指定时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| task_type                      | String     | 任务类型，为空默认设置为object。 - list：对象列表迁移  - object：文件/文件夹迁移  - prefix：对象前缀迁移                                                                                                                                                                                |
| source_cdn                     | JSONObject | 指定是否启用CDN迁移支持，参见[表7]。启用CDN迁移支持后，迁移时将从CDN域名获取源端对象。若包含此字段则为支持，否则为不支持。                                                                                                                                                                                                                                                                                                                                                                                                         |
| auto_restore                   | Boolean    | 是否自动解冻归档数据。开启后，如果遇到归档类型数据，会自动解冻再进行迁移。                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| enable_failed_object_recording | Boolean    | 是否记录失败对象。开启后，如果有迁移失败对象，会在目的端存储失败对象信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| failed_object_record           | String     | 数据格式为JSON格式，参见[表9]。                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| bandwidth_policy               | JSONArray  | 流量控制策略，参见[表10]。                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
   
 表3src_node数据结构说明 
| 参数         | 参数类型       | 描述                                                    |
|:---|:---|:---|
| region     | String     | 源端桶所处的区域。                                             |
| list_file  | JSONObject | 数据格式为JSON格式，参见[表4]。 |
| object_key | JSONArray  | 源桶选择的对象名称，JSONArray格式。每个元素均为对象的绝对路径。                  |
| bucket     | String     | 源端桶的名称。                                               |
| cloud_type | String     | 源端云服务商。                                               |
   
 表4list_file数据结构 
| 参数            | 参数类型   | 描述              |
|:---|:---|:---|
| obs_bucket    | String | 存放对象列表文件的OBS桶名。 |
| list_file_key | String | 对象列表文件对象名。      |
   
 表5dst_node数据结构说明 
| 参数         | 参数类型   | 描述                                              |
|:---|:---|:---|
| region     | String | 目的端桶所处的区域。                                      |
| object_key | String | 目的端桶选择的对象名称。                                    |
| bucket     | String | 目的端桶的名称。                                        |
| cloud_type | String | 目的端云服务商。  |
   
 表6smnInfo数据结构说明 
| 参数                 | 参数类型    | 描述                            |
|:---|:---|:---|
| notifyResult       | Boolean | 记录迁移任务执行完毕后SMN消息是否发送成功。       |
| notifyErrorMessage | String  | 记录SMN消息发送失败原因的错误码（迁移任务成功时为空）。 |
| topicName          | String  | SMN Topic的名称（SMN消息发送成功时为空）。   |
   
 表7source_cdn数据结构 
| 参数                  | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|
| protocol            | String | 协议类型：https或http。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| domain              | String | 从指定域名获取对象。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| authentication_type | String | 鉴权方式。 - 无需鉴权：NONE  - Qiniu： QINIU_PRIVATE_AUTHENTICATION     - Aliyun： ALIYUN_OSS_A、ALIYUN_OSS_B、ALIYUN_OSS_C   - KingsoftCloud：KSYUN_PRIVATE_AUTHENTICATION   |
   
 表8error_reason数据结构说明 
| 参数         | 参数类型   | 描述        |
|:---|:---|:---|
| error_code | String | 迁移失败的错误码。 |
| error_msg  | String | 迁移失败的原因。  |
   
 表9failed_object_record结构说明 
| 参数            | 参数类型    | 描述           |
|:---|:---|:---|
| result        | Boolean | 是否支持失败对象重传。  |
| list_file_key | String  | 失败对象列表文件路径。  |
| errorCode     | String  | 不支持失败重传的错误码。 |
   
 表10bandwidth_policy数据结构 
| 参数                                       | 参数类型   | 描述                                         |
|:---|:---|:---|
| start                                    | String | 流量控制开始时间（包含），格式为"hh:mm"。例如"10:03"表示10时03分。 |
| end  | String | 流量控制结束时间（包含），格式和start参数相同。                 |
| max_bandwidth                            | int    | 时段内允许的最大流量带宽，单位Byte/s。                     |
   
#### 示例
**请求示例**
GET /v1/{project_id}/objectstorage/task?start=0\&limit=10\&state=0
**响应示例**
```
{
"id": 1,
"name": "bucket3-bucket3-20161027211637786_544",
"src_node": {
"region": "us-east-1",
"bucket": "bucket3",
"object_key": ["log/object1", "log/object2"]
},
"dst_node": {
"region": "xxx",
"bucket": "bucket3",
"object_key": "/"
},
"thread_num": 50,
"status": 5,
"progress": 1,
"total_num": 2000,
"success_num": 200,
"fail_num": 0,
"migrate_speed": 7213154,
"enableKMS": true,
"description": "ZXCZCZXCDVXVC",
"error_reason": "",
"total_size": 2000000000,
"complete_size": 2000000000,
"start_time": 1477574224062,
"left_time": 0,
"total_time": 88124,
"smnInfo": {
"notifyResult": false,
"notifyErrorMessage": "S3M.0156",
"topicName": "Test"
},
"enable_failed_object_recording": true,
"failed_object_record": "{"
result ": true, "
list_file_key ": "
oms / failed_object_lists / 180840792025063 / failed - objects - list.txt "}"
}, {
"id": 2,
"name": "bucket3-bucket3-20161027211637786_545",
"src_node": {
"region": "us-east-1",
"bucket": "bucket3",
"object_key": ["log/object1", "log/object2"],
"cloud_type": "xxx"
},
"dst_node": {
"region": "xxx",
"bucket": "bucket3",
"object_key": "/",
"cloud_type": "HEC"
},
"thread_num": 50,
"status": 5,
"progress": 1,
"total_num": 2000,
"success_num": 200,
"fail_num": 0,
"migrate_speed": 7213154,
"enableKMS": true,
"description": "ZXCZCZXCDVXVC",
"error_reason": "",
"total_size": 2000000000,
"complete_size": 2000000000,
"start_time": 1477574224062,
"left_time": 0,
"total_time": 88124,
"smnInfo": {
"notifyResult": false,
"notifyErrorMessage": "S3M.0156",
"topicName": "Test"
},
"migrate_since": 123456789,
        "source_cdn": {
"protocol": "https",
"domain": "xxx.xxx.xxx",
"authentication_type": "NONE"
},
        "bandwidth_policy": [ 
        { 
                "start": "00:00", 
                "end": "23:59", 
                "max_bandwidth": 50000000
        }
       ]
}
```
#### 状态码
状态码请参见[状态码](https://support.huaweicloud.com/api-oms/oms_api_0024.html)。
