# 自动化 (/docs/cloud/services/automation)



自动化把平台能力组合成脚本或工作流，由你主动运行，或由触发器自动启动。

| 对象  | 用途                                |
| --- | --------------------------------- |
| 脚本  | 一段 TypeScript 从头执行到尾，返回一个结果。      |
| 工作流 | YAML 描述的多步骤流程，保存检查点，支持等待和暂停。      |
| 动作  | 有输入输出约定的可复用能力，由脚本或工作流调用。          |
| 运行  | 一次脚本或工作流的执行，记录输入、输出、状态和调用。        |
| 触发器 | 在指定时间或收到 webhook 时启动一个已发布的脚本或工作流。 |

## 选择入口 [#选择入口]

一次计算、批量处理或组合 API 调用，用脚本；跨时间等待、需要步骤检查点的任务，用工作流。把多个编排都会使用的能力封装成动作。动作没有独立运行入口，在脚本或工作流里调用它。

脚本失败后重跑会重新执行整段代码；已发生的效果不会回滚。需要自动执行时，在已发布目标上配置触发器。

## 先运行一次 [#先运行一次]

在 [Develop Console](https://console-develop.deepraxis.ai/keys) 创建 API Key，设置为 `PRAXIS_API_KEY`。在装有 curl 和 jq 的 Bash 中执行，使用 Bearer 认证完成一次加一计算，不调用模型：

```bash
export PRAXIS_API_URL="https://api-develop.deepraxis.ai"
: "${PRAXIS_API_KEY:?Set PRAXIS_API_KEY to your develop API Key}"
curl --fail-with-body -sS "$PRAXIS_API_URL/automation/v1/runs" \
  -H "Authorization: Bearer $PRAXIS_API_KEY" \
  -H 'Content-Type: application/json' \
  --data '{"source":"export default async (input: { n: number }) => ({ answer: input.n + 1 });","language":"ts","input":{"n":41},"wait":60}' \
  | jq '{id,status,output,error}'
```

期望：`status` 为 `completed`，`output` 为 `{"answer":42}`。若仍在排队或运行，将返回的 `id` 存为 `RUN_ID`，再[读取结果](/docs/cloud/services/automation/quickstart#read-result)。继续按[快速开始](/docs/cloud/services/automation/quickstart)保存和发布脚本。

## 下一步 [#下一步]

* [快速开始](/docs/cloud/services/automation/quickstart)：用 curl 得到第一个结果，再发布脚本。
* [概念](/docs/cloud/services/automation/concepts)：版本、运行树、幂等与费用。
* [编写脚本](/docs/cloud/services/automation/guides/write-script)：输入输出、平台能力、动作和日志。
* [触发器](/docs/cloud/services/automation/guides/triggers)：定时与 webhook。
* [限制与错误](/docs/cloud/services/automation/limits-and-errors)：容量、超时和排错。

[API 参考 →](/docs/api/native/automation) · [Cookbook →](/docs/cookbook)
