DEVELOPERS

AI 工作流 API:图片与视频生成接入指南

通过 HTTP API 发现工作流、读取输入结构、预估费用并提交异步执行。使用同一个 runId 查询结果,将图片与视频工作流接入你的应用。

内容核对

从官方契约开始

以下发现接口无需 API Key;实际工作流与生成请求需要账号权限与 Bearer 认证。

执行流程

  1. 发现工作流并检查输入结构
  2. 带入输入,预估并确认费用
  3. 用稳定的幂等键提交一次执行
  4. 依回应间隔查询,取得终态与输出

1. 取得账号可用的工作流

登录后在开发者页面创建 API Key,仅保存在服务端。以下示例中的 Key、工作流 ID 和节点 ID 都是需要替换的值。

export RELAYME_BASE_URL="https://api.relayme.ai"
export RELAYME_API_KEY="<your-api-key>"

curl "$RELAYME_BASE_URL/api/ai-tools/v1/workflows" \
  -H "Authorization: Bearer $RELAYME_API_KEY"

2. 读取输入与输出结构

# Replace 123 with a workflow ID returned for your account.
export WORKFLOW_ID="123"
curl "$RELAYME_BASE_URL/api/ai-tools/v1/workflows/$WORKFLOW_ID/schema" \
  -H "Authorization: Bearer $RELAYME_API_KEY"

按 inputSchema 提供 inputs。先检查 unsupportedNodes;浏览器专用工具节点不一定支持服务端执行。outputs 的键对应 outputSchema。

3. 预估本次费用

# Replace text-1 with an input node ID from your workflow schema.
curl -X POST "$RELAYME_BASE_URL/api/ai-tools/v1/workflows/$WORKFLOW_ID/estimate" \
  -H "Authorization: Bearer $RELAYME_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"inputs":{"text-1":"A clean product photo on a white background"}}'

检查 estimatedCost、币种、逐节点预估与 assumptions;exact: false 代表估值仍有不确定性。选择可接受的参数后,再提交执行。

4. 提交并保存 runId

# Create a unique key for each intended run; reuse it for retries of that run.
export RUN_KEY="product:YOUR-PRODUCT-ID:hero-image:v1"
curl -i -X POST "$RELAYME_BASE_URL/api/ai-tools/v1/workflows/$WORKFLOW_ID/runs" \
  -H "Authorization: Bearer $RELAYME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $RUN_KEY" \
  -d '{"inputs":{"text-1":"A clean product photo on a white background"}}'

首次接收返回 HTTP 202、Location、Retry-After 与 data.runId;相同请求的幂等重试可能返回 HTTP 200,仍应读取 data.runId。幂等键应绑定一次业务操作;同一操作的网络重试重用原键,新操作使用新键。

5. 查询状态与结果

export RUN_ID="<runId-from-the-202-response>"
curl "$RELAYME_BASE_URL/api/ai-tools/v1/workflow-runs/$RUN_ID" \
  -H "Authorization: Bearer $RELAYME_API_KEY"

依 Retry-After 或 retryAfterSeconds 等待。QUEUED、RUNNING、CANCEL_REQUESTED 尚未终止;COMPLETED 时读 outputs;FAILED 时查看节点错误;CANCELLED 时停止轮询。也可在创建执行时配置签名 Webhook。

在你的 AI 代理中使用 RelayMe

  1. 登录后在开发者页面创建 API Key。创建 Key 不扣积分,但生成与执行工作流会扣积分,账户需要有足够余额,否则请求会被拒绝。
  2. 下载 Agent Skill 套件并解压:共 5 个文件夹,每个文件夹是一个 Skill,内含 SKILL.md。把它们放到你的代理读取 Skills 的目录(依各代理的说明)。
  3. 在代理的执行环境中设置 RELAYME_API_KEY,仅保存在密钥存放处或服务端,不要写进提示词。
  4. 第一条提示词建议直接生成一张图,例如: 用 relayme-creative 以 Nano Banana 生成一张 1K、1:1 的白色陶瓷杯商品图,浅灰背景;轮询任务直到完成,给我图片链接。 这一步会按该模型单价扣积分。
curl -LO https://api.relayme.ai/api/ai-tools/v1/skills.zip
unzip skills.zip -d relayme-skills
ls relayme-skills
# relayme-agent  relayme-chat  relayme-creative  relayme-tasks  relayme-workflows
# each folder contains SKILL.md

export RELAYME_API_KEY="<your-api-key>"

哪些调用会扣积分

工具名称与 function-tools.json一致。

工具用途扣积分?
relayme_generate_image直接生成图片扣积分:按图片模型的每张单价
relayme_generate_video直接生成视频扣积分:按视频模型的每秒单价
relayme_chat文字对话扣积分:按所选文字模型计费
relayme_run_workflow执行已保存的工作流扣积分:执行中的每个生成节点各自计费
relayme_estimate_workflow预估工作流费用不扣
relayme_list_models
relayme_list_workflows
relayme_get_workflow
relayme_get_workflow_schema
发现模型与工作流、读取输入结构不扣
relayme_get_task
relayme_list_tasks
relayme_get_workflow_run
relayme_list_workflow_runs
查询任务与执行状态不扣
relayme_validate_workflow
relayme_create_workflow
relayme_update_workflow
relayme_delete_workflow
校验、创建、更新、删除工作流不扣
relayme_cancel_workflow_run取消执行取消本身不扣;已交给模型提供方的调用仍可能完成并计费

API 不做什么

  • 浏览器端工具节点(图片裁剪、视频首帧与尾帧)不能在服务端执行,会列在 unsupportedNodes 中;依赖它们的工作流无法通过 API 完整执行。
  • 预估不是最终价格:依赖上游生成结果的节点可能用占位值估算(exact: false),实际费用以执行后的扣费为准。
  • 新账号没有已保存的工作流:先在工作台保存一条,或用 API 创建,工作流列表才会有内容。
  • 直接的图片/视频生成没有幂等保证;超时后先查任务列表,不要盲目重新发送。
  • 目前没有 MCP server,也没有 Claude 或 ChatGPT connector;代理通过 HTTP API 与上面的 Agent Skills 接入。

常见问题

API 能做什么?

工作流发现、结构查询、费用预估、执行与取消,以及文字对话和直接图片/视频生成。具体字段与能力以公开 OpenAPI 和各 Skill 为准。

每次重试都会重新收费吗?

对相同工作流执行请求重用原 Idempotency-Key,避免重复创建执行。直接图片/视频生成不提供相同的幂等保证;超时后先查任务历史,勿盲目重新发送。

预估费用就是最终价格吗?

不是。依赖上游生成结果的节点可能使用占位值估算,返回 exact: false 及 assumptions。最终费用取决于实际模型用量和已提交的调用。

取消后仍可能产生费用吗?

可以。取消会停止后续节点的调度,但已交给模型提供方的任务可能完成并产生费用;请查看 inFlightTaskMayComplete 和任务终态。

开始接入

先在工作台验证一个小工作流,再用 API 连接你的产品。