
# 调用工具的执行动作
#### 功能介绍
该接口用于调用用户配置的工具的执行动作。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-appstage/appstage_07_0008.html)。
#### URI
POST https://aiae.appstage.myhuaweicloud.com/v1/workflow-adapter-open/skills/{skill_id}
表1路径参数 
| 参数       | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| skill_id | 是    | String | **参数解释：** 工具的执行动作ID，进入[AI原生应用引擎](https://support.huaweicloud.com/usermanual-wiseagent/appstage_04_0638.html#section0)，在左侧导航栏选择"Agent编排中心 \> 我的工具"，在工具列表中复制执行动作ID。 **约束限制：** 不涉及。 **取值范围：** 只能由英文字母、数字以及"-"组成，且长度为36个字符。 **默认取值：** 不涉及。 |
#### 请求参数
表2请求Header参数 
| 参数            | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| Authorization | 是    | String | **参数解释：** 鉴权信息。获取平台API Key，并为API Key添加前缀Bearer，得到标准鉴权信息，例如Bearer sk-74e4157\*\*\*。API Key获取方法请参见[创建API Key](https://support.huaweicloud.com/usermanual-wiseagent/appstage_04_0704.html)。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
表3请求Body参数 
| 参数   | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| body | 是    | Object | **参数解释：** 结构与工具的执行动作的配置相关，并且所有请求头中的入参与请求参数均添加至请求体中，由AI原生应用引擎自动完成分配。如果为GET请求则为非必填，如果为POST请求则为必填。 比如工作流配置了query_param作为查询参数，header_param作为请求头参数，body_param_1与body_param_2作为请求体参数，此时调用本接口只需要将这些参数依次传入，AI原生应用引擎自动按照名称进行分配，并完成工具的执行动作的调用。 具体结构请参照本接口的请求示例。 **约束限制：** 不涉及。 |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数   | 参数类型                                            | 描述         |
|:---|:---|:---|
| data | [data] object | 响应的body参数。 |
   
 表5data 
| 参数            | 参数类型                                                              | 描述                                                         |
|:---|:---|:---|
| id            | String                                                            | **参数解释：** 调用记录ID。 **取值范围：** 只由英文字母、数字以及"-"组成，且长度为36个字符。    |
| version       | Number                                                            | **参数解释：** 工具的版本号。 **取值范围：** 正整数。                           |
| connector_id  | String                                                            | **参数解释：** 工具ID。 **取值范围：** 只由英文字母、数字以及"-"组成，且长度为36个字符。      |
| action_id     | String                                                            | **参数解释：** 工具的执行动作ID。 **取值范围：** 只由英文字母、数字以及"-"组成，且长度为36个字符。 |
| start_time    | String                                                            | **参数解释：** 本次调用的开始时间。 **取值范围：** UTC格式的日期。                   |
| end_time      | String                                                            | **参数解释：** 本次调用的结束时间。 **取值范围：** UTC格式的日期。                   |
| cost          | Number                                                            | **参数解释：** 本次调用的总耗时，单位为毫秒。 **取值范围：** 正整数。                   |
| status        | String                                                            | **参数解释：** 本次调用的结果。 **取值范围：** - success - failure           |
| status_code   | Number                                                            | **参数解释：** 本次调用的状态码。 **取值范围：** 不涉及。                         |
| method        | String                                                            | **参数解释：** 本次调用的方法。 **取值范围：** - GET - POST - PUT - DELETE   |
| path          | String                                                            | **参数解释：** 本次调用的url。 **取值范围：** 不涉及。                         |
| invoke_output | [invoke_output] object | **参数解释：** 本次调用的输出结果，即返回体。 **取值范围：** 不涉及。                   |
| invoke_input  | [invoke_input] object   | **参数解释：** 本次调用的输入内容，即请求体。 **取值范围：** 不涉及。                   |
   
 表6invoke_output 
| 参数   | 参数类型   | 描述                                      |
|:---|:---|:---|
| body | String | **参数解释：** 本次调用的输出结果具体内容。 **取值范围：** 不涉及。 |
   
 表7invoke_input 
| 参数     | 参数类型   | 描述                                 |
|:---|:---|:---|
| body   | String | **参数解释：** 本次调用的请求体。 **取值范围：** 不涉及。 |
| header | String | **参数解释：** 本次调用的请求头。 **取值范围：** 不涉及。 |
   
**状态码：500**
表8响应Body参数 
| 参数         | 参数类型   | 描述                             |
|:---|:---|:---|
| error_code | String | **参数解释：** 错误码。 **取值范围：** 不涉及。  |
| error_msg  | String | **参数解释：** 错误信息。 **取值范围：** 不涉及。 |
   
#### 请求示例
```
{
  "query_param" : "query_example",
  "header_param" : "header_example",
  "body_param_1" : "body_example_1",
  "body_param_2" : "body_example_2"
}
```
#### 响应示例
**状态码：200**
成功。
```
{
  "data" : {
    "id" : "6f46e379-9adf-4395-af0d-4549e09c4048",
    "version" : 3,
    "connector_id" : "d5a2b8fd-ad02-437d-9234-2225eb992fd6",
    "action_id" : "a224ce98-07b5-479a-b75e-560029399312",
    "start_time" : "2024-12-28T01:17:31.146Z",
    "end_time" : "2024-12-28T01:17:33.582Z",
    "cost" : 2436,
    "status" : "success",
    "status_code" : 200,
    "method" : "POST",
    "path" : "some path",
    "invoke_output" : {
      "body" : "something in response body"
    },
    "invoke_input" : {
      "body" : "something in request body",
      "header" : "something in request header"
    }
  }
}
```
**状态码：500**
服务器内部错误或三方服务器内部错误。
```
{
  "error_code" : "AIAE.22009001",
  "error_msg" : "Internal Server Error."
}
```
#### 状态码
| 状态码 | 描述                 |
|:---|:---|
| 200 | 成功。                |
| 500 | 服务器内部错误或三方服务器内部错误。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-appstage/ErrorCode.html)。
