
# 上传分组资源（废弃）
#### 功能介绍
该API用于上传分组资源到某个project下。该API对应控制台的创建程序包功能。
![](https://support.huaweicloud.com/api-dli/public_sys-resources/note_3.0-zh-cn.png)
Flink1.15及以上版本、Spark3.3.1及以上版本时该接口废弃，不推荐使用。
#### 调试
您可以在[API Explorer](https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=DLI&api=UploadResources)中调试该接口。
#### URI
- URI格式： POST /v2.0/{project_id}/resources
  
- 参数说明
  表1URI参数说明 
  | 参数名称       | 是否必选 | 参数类型   | 说明                                                                                     |
  |:---|:---|:---|:---|
  | project_id | 是    | String | 项目编号，用于资源隔离。获取方式请参考[获取项目ID](https://support.huaweicloud.com/api-dli/dli_02_0183.html)。 |
     
  
 
#### 请求消息
表2请求参数 
| 参数名称     | 是否必选 | 参数类型             | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|:---|
| paths    | 是    | Array of Strings | 用户OBS对象路径列表，OBS对象路径为OBS对象URL。                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| kind     | 是    | String           | 分组资源文件的类型。 - jar：用户jar文件。  - pyFile：用户python文件。  - file：用户文件。  - modelFile：用户AI模型文件。   说明： 上传的同一组资源包含不同文件类型时，均选择"file"类型作为这次上传文件的类型。 |
| group    | 是    | String           | 将要创建的分组名。                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| is_async | 否    | Boolean          | 是否使用异步方式上传资源包。默认值为"false"，表示不使用异步方式。推荐使用异步方式上传资源包。                                                                                                                                                                                                                                                                                                                                                                                                                           |
| tags     | 否    | Array of Objects | 资源标签。具体请参考[表3]。                                                                                                                                                                                                                                                                                                                                                                                                                               |
   
 表3tags参数 
| 参数名称  | 是否必选 | 参数类型   | 说明                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| key   | 是    | String | **参数解释：** 标签的键。 **约束限制：** 无 **取值范围：** 标签的键的最大长度为128个字符，标签的键可以包含任意语种字母、数字、空格和_ . : +-@ ,但首尾不能含有空格，不能以_sys_开头。 **默认取值：** 无 |
| value | 是    | String | **参数解释：** 标签的值。 **约束限制：** 无 **取值范围：** 标签值的最大长度为255个字符，标签的值可以包含任意语种字母、数字、空格和_ . : +-@ 。 **默认取值：** 无                      |
   
#### 响应消息
表4响应参数 
| 参数名称        | 是否必选 | 参数类型             | 说明                                                                            |
|:---|:---|:---|:---|
| group_name  | 否    | String           | 分组名称。                                                                         |
| status      | 否    | String           | 上传分组资源状态。                                                                     |
| resources   | 否    | Array of strings | 该模块包含的资源包名列表。                                                                 |
| details     | 否    | Array of body    | 分组资源包的详细信息。具体请参考[表5]。 |
| create_time | 否    | Long             | 模块上传的unix时间戳。                                                                 |
| update_time | 否    | Long             | 模块更新的unix时间戳。                                                                 |
| is_async    | 否    | Boolean          | 是否使用异步方式上传资源包。默认值为"false"，表示不使用异步方式。推荐使用异步方式上传资源包。                            |
| owner       | 否    | String           | 资源包拥有者。                                                                       |
   
 表5details参数说明 
| 参数名称            | 是否必选 | 参数类型    | 说明                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|:---|
| create_time     | 是    | Long    | 资源包上传的unix时间。是单位为"毫秒"的时间戳。                                                                                                                                                                                                                                                                       |
| update_time     | 否    | Long    | 更新已上传资源包的unix时间。是单位为"毫秒"的时间戳。                                                                                                                                                                                                                                                                    |
| resource_type   | 是    | String  | 资源类型。                                                                                                                                                                                                                                                                                            |
| resource_name   | 否    | String  | 资源名。                                                                                                                                                                                                                                                                                             |
| status          | 否    | String  | - "UPLOADING"表示正在上传。  - "READY"表示资源包已上传。  - "FAILED"表示资源包上传失败。   |
| underlying_name | 否    | String  | 资源包在队列中的名字。                                                                                                                                                                                                                                                                                      |
| is_async        | 否    | Boolean | 是否使用异步方式上传资源包。默认值为"false"，表示不使用异步方式。推荐使用异步方式上传资源包。                                                                                                                                                                                                                                               |
   
#### 请求示例
从OBS上传jar包至DLI，并定义分组名称为gatk。
```
{
    "paths": [
        "https://xkftest.obs.xxx.com/txr_test/jars/spark-sdv-app.jar",
        "https://xkftest.obs.xxx.com/txr_test/jars/wordcount",
        "https://xkftest.obs.xxx.com/txr_test/jars/wordcount.py"
    ],
    "kind": "jar",
    "group": "gatk",
    "is_async":"true"
}
```
#### 响应示例
```
{
    "group_name": "gatk",
    "status": "READY",
    "resources": [
        "spark-sdv-app.jar",
        "wordcount",
        "wordcount.py"
    ],
    "details": [
        {
            "create_time": 0,
            "update_time": 0,
            "resource_type": "jar",
            "resource_name": "spark-sdv-app.jar",
            "status": "READY",
            "underlying_name": "987e208d-d46e-4475-a8c0-a62f0275750b_spark-sdv-app.jar"
        },
        {
            "create_time": 0,
            "update_time": 0,
            "resource_type": "jar",
            "resource_name": "wordcount",
            "status": "READY",
            "underlying_name": "987e208d-d46e-4475-a8c0-a62f0275750b_wordcount"
        },
        {
            "create_time": 0,
            "update_time": 0,
            "resource_type": "jar",
            "resource_name": "wordcount.py",
            "status": "READY",
            "underlying_name": "987e208d-d46e-4475-a8c0-a62f0275750b_wordcount.py"
        }
    ],
    "create_time": 1551334579654,
    "update_time": 1551345369070
}
```
#### 状态码
状态码如[表6]所示。
 表6状态码 
| 状态码 | 描述       |
|:---|:---|
| 201 | 上传成功。    |
| 400 | 请求错误。    |
| 500 | 内部服务器错误。 |
   
#### 错误码
调用接口出错后，将不会返回上述结果，而是返回错误码和错误信息，更多介绍请参见[错误码](https://support.huaweicloud.com/api-dli/dli_02_0056.html)。
