# 使用API连接RayJob端点并提交作业
当您需要将数据处理能力集成到业务系统中，或通过代码自动化提交Ray作业和查询作业状态时，可以通过API连接RayJob端点并提交作业。API 提供标准RESTful接口，方便您通过代码调用。
#### 前提条件
已创建RayJob端点且端点状态为"运行中"。具体操作，请参见[创建Ray引擎端点](https://support.huaweicloud.com/usermanual-aidatalake/aidatalake_01_0073.html)。
#### 涉及API
[运行作业](https://support.huaweicloud.com/api-aidatalake/RunRayJob.html)。
#### 操作步骤
1. 使用Postman等工具，调用API连接RayJob端点并提交作业。 
   调用API的具体操作，请参见[如何调用API](https://support.huaweicloud.com/api-aidatalake/aidatalake_02_0003.html)。
   请求示例如下：
   ```
   POST /v2/workspaces/{workspace_id}/ray-jobs
   {
       "name": "rayjob0615-4", 
       "endpoint_name": "ray-job-owin",
       "config": {
           "runtime_env":{
               "working_dir":"obs://ray-shared-csc/ray-job-code.zip"
           },
           "entrypoint": "python3 -m estimate_pi 1000000",
           "image": {
               "image_id": "dd877a59-5cbd-44c5-b8a7-dc464cca****",
               "image_version": "01ae8ee6-af8a-48a8-895b-8d4a70bf****"
           },
           "resource_config": {
               "head_resource_spec": {
                   "cpu": 1020,
                   "memory": 2048,
                   "worker_gpu_amount": 0,
                   "worker_npu_amount": 0
               },
               "worker_resource_spec": [
                   {
                       "cpu": 1000,
                       "memory": 2049,
                       "worker_gpu_amount": 0,
                       "worker_npu_amount": 0,
                       "worker_replicas": 1,
                       "enable_autoscaling": true,
                       "worker_min_replicas": 1,
                       "worker_max_replicas": 1
                   }
               ]
           },
           "rayjob_strategy": {
               "queued_timeout": 100000,
               "running_timeout": 100000
           }
       }
   }
   ```
   关键参数说明如[表1]所示，更多参数信息，请参见[运行作业](https://support.huaweicloud.com/api-aidatalake/RunRayJob.html)。
    表1参数说明 
   | 参数            | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
   |:---|:---|
   | workspace_id   | 输入工作空间ID。获取工作空间ID的具体操作，请参见[管理工作空间](https://support.huaweicloud.com/usermanual-aidatalake/aidatalake_01_0038.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   | name         | 输入作业名称。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
   | endpoint_name | 输入RayJob端点名称。获取RayJob端点名称的具体操作，请参见[管理Ray引擎端点](https://support.huaweicloud.com/usermanual-aidatalake/aidatalake_01_0074.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
   | working_dir  | 输入代码将在其中运行的工作目录，必须是远程URI，如OBS路径。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   | entrypoint    | 输入运行作业的主脚本。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
   | image_id      | 说明： - 如果端点的资源使用模式为混合模式和按需弹性，且当前所选镜像版本已创建镜像快照，选择该版本镜像时会自动关联对应的镜像快照，端点启动时自动使用快照创建镜像资源，无需额外操作。创建镜像快照的具体操作，请参见[镜像加速](https://support.huaweicloud.com/usermanual-aidatalake/aidatalake_01_0108.html)。  - 预置镜像分为纯CPU镜像（镜像版本为.cpu结尾）与融合镜像两种形态，CPU场景无需拉取GPU/NPU依赖，从而减小镜像体积、加快拉取与启动速度，提升资源利用率与任务部署效率。   输入镜像ID和版本。查看镜像版本和ID的具体操作如下： 1. 在AI DataLake管理控制台页面的左侧导航栏，选择"镜像管理"。  2. 在"预置镜像"或"自定义镜像"页签下，单击镜像名称。  3. 查看预置镜像或者自定义镜像的版本和ID。 - 查看预置镜像版本和ID：单击"版本"页签，在"镜像版本 / ID"列，查看预置镜像的版本和ID。  - 查看自定义镜像版本和ID：在"镜像版本 / ID"列，查看自定义镜像的版本和ID。如果没有自定义镜像，请手动注册。具体操作，请参见[注册自定义镜像](https://support.huaweicloud.com/usermanual-aidatalake/aidatalake_01_0059.html#section2)。     |
   | image_version | 说明： - 如果端点的资源使用模式为混合模式和按需弹性，且当前所选镜像版本已创建镜像快照，选择该版本镜像时会自动关联对应的镜像快照，端点启动时自动使用快照创建镜像资源，无需额外操作。创建镜像快照的具体操作，请参见[镜像加速](https://support.huaweicloud.com/usermanual-aidatalake/aidatalake_01_0108.html)。  - 预置镜像分为纯CPU镜像（镜像版本为.cpu结尾）与融合镜像两种形态，CPU场景无需拉取GPU/NPU依赖，从而减小镜像体积、加快拉取与启动速度，提升资源利用率与任务部署效率。   输入镜像ID和版本。查看镜像版本和ID的具体操作如下： 1. 在AI DataLake管理控制台页面的左侧导航栏，选择"镜像管理"。  2. 在"预置镜像"或"自定义镜像"页签下，单击镜像名称。  3. 查看预置镜像或者自定义镜像的版本和ID。 - 查看预置镜像版本和ID：单击"版本"页签，在"镜像版本 / ID"列，查看预置镜像的版本和ID。  - 查看自定义镜像版本和ID：在"镜像版本 / ID"列，查看自定义镜像的版本和ID。如果没有自定义镜像，请手动注册。具体操作，请参见[注册自定义镜像](https://support.huaweicloud.com/usermanual-aidatalake/aidatalake_01_0059.html#section2)。     |
      
   
   
2. 查看返回响应信息，类似如下所示，表示已连接RayJob端点并成功提交作业。 
   ```
   {
     "job_id" : "ac8111bf-3601-4905-8ddd-b41d3e63****"
   }
   ```
   
   
 
#### 相关操作
- 关于使用API连接RayJob端点并提交作业的详细操作，请参见[基于RayJob的数据处理](https://support.huaweicloud.com/qs-aidatalake/aidatalake_01_0079.html)。
- 运行作业后，您可以通过API查询作业列表信息。具体操作，请参见[查询Ray作业列表 - ListRayJobs](https://support.huaweicloud.com/api-aidatalake/ListRayJobs.html)。
- 运行作业后，您可以通过API查询作业的详情信息。具体操作，请参见[查询作业详情 - ShowRayJob](https://support.huaweicloud.com/api-aidatalake/ShowRayJob.html)。
- 运行作业后，您可以通过API取消作业运行。具体操作，请参见[取消作业运行 - CancelRayJob](https://support.huaweicloud.com/api-aidatalake/CancelRayJob.html)。
 
