EmbodiFlow文档
开始使用数据工作流与算法训练与部署开发者参考
  • 开发者参考

认证

  • 认证概览
  • API 密钥
  • 个人访问令牌
  • 浏览器会话

REST API

  • 使用 REST API
  • 全部端点
  • 项目
    • 录制
      • 上传
        • 任务片段与版本
          • 标注
            • 质量与任务
              • 检索
                • 工作流
                  • 算法
                    • GET
                      List algorithms
                    • POST
                      Create a algorithm
                    • GET
                      Get a algorithm
                    • GET
                      List builds for a algorithm
                    • POST
                      Create a build
                    • GET
                      Get a build
                    • GET
                      List logs for a build
                    • POST
                      Create a retry
                    • GET
                      List used by for a algorithm
                    • GET
                      List versions for a algorithm
                    • POST
                      Create a version
                    • GET
                      Get a version
                    • PATCH
                      Update a version
                    • POST
                      Builds the image of a Python version: no build when it has no requirements (the platform base image is used), otherwise a queued cloud build (no reuse of an earlier version's image). Idempotent: a version with an image or an active build answers with it.
                    • POST
                      Create a registry token
                    • POST
                      Create a sample run
                    • GET
                      Get a sample run
                    • POST
                      Lowest version a save of this source or image may carry (the proposal of the interface change); writes nothing.
                    • GET
                      Categories with default ports, data types, semantic types, facts, the SDK index and a starter per category
                    • GET
                      Docker registry token protocol (non-envelope). HTTP Basic password is a PAT.
                  • 模型
                    • 产物与导出
                      • 计费与用量
                        • 团队与治理
                          • 账号与通知
                            • Webhook 端点

                              事件

                              • 出站事件
                              • 签名校验

                              工具

                              • 命令行
                              • SDK
                              • MCP

                              更新

                              • 更新日志

                              © 2026 EmbodiFlow

                              llms.txtOpenAPI JSON
                              1. 开发者参考
                              2. REST API
                              3. 算法
                              4. Create a sample run

                              Create a sample run

                              POST
                              /v1/algorithms/sample-runs
                              curl -X POST 'https://api.embodiflow.io/v1/algorithms/sample-runs' \
                                -H 'Authorization: Bearer $EMBODIFLOW_PAT' \
                                -H 'Content-Type: application/json' \
                                -d '{
                                  "source": "string",
                                  "algorithmVersion": {
                                    "algorithmId": "00000000-0000-0000-0000-000000000000",
                                    "version": "string"
                                  },
                                  "inputs": {
                                    "recordingId": "00000000-0000-0000-0000-000000000000",
                                    "episode": {
                                      "recordingId": "00000000-0000-0000-0000-000000000000",
                                      "index": 0
                                    },
                                    "versionId": "00000000-0000-0000-0000-000000000000"
                                  },
                                  "window": {},
                                  "params": {}
                                }'

                              认证

                              每个请求都需要携带个人访问令牌(PAT)。

                              • Authorization: Bearer PAT
                              认证指南

                              请求头参数

                              • Idempotency-Keystring

                                Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.

                              请求体

                              Content-Typeapplication/json
                              • sourcestring | null
                              • algorithmVersionobject | null
                                • algorithmIdstring (uuid)必填
                                • versionstring必填
                              • inputsobject必填
                                • recordingIdstring (uuid) | null
                                • episodeobject | null
                                • versionIdstring (uuid) | null
                              • windowobject | null
                              • paramsobject | null

                              响应

                              Run accepted; poll GET for state

                              • dataobject必填
                                • idstring必填
                                • statestring必填
                                  可选值
                                  queued
                                  running
                                  succeeded
                                  failed
                                  timed_out
                                • recordingIdsarray<string>必填
                                • inputKindstring必填
                                  可选值
                                  metadata_only
                                  recording_files
                                  version_files
                                • inputBytesnumber | null必填
                                • deadlineSecondsnumber必填
                                • createdAtstring必填
                                • startedAtstring | null必填
                                • finishedAtstring | null必填
                                • resultobject必填
                              响应示例
                              {
                                "data": {
                                  "id": "string",
                                  "state": "queued",
                                  "recordingIds": [
                                    "string"
                                  ],
                                  "inputKind": "metadata_only",
                                  "inputBytes": 0,
                                  "deadlineSeconds": 0,
                                  "createdAt": "string",
                                  "startedAt": "string",
                                  "finishedAt": "string",
                                  "result": {
                                    "state": "succeeded",
                                    "durationMs": 0,
                                    "logs": "string",
                                    "logsTruncated": false,
                                    "outputs": [
                                      {
                                        "name": "string",
                                        "type": "string",
                                        "summary": "string"
                                      }
                                    ],
                                    "preview": {
                                      "contract": "embodiflow-sample-preview/v1",
                                      "category": "export",
                                      "window": {
                                        "startS": 0,
                                        "endS": 0
                                      },
                                      "outcome": "succeeded",
                                      "series": [
                                        {
                                          "name": "string",
                                          "type": "string",
                                          "unit": "string",
                                          "columns": [],
                                          "t": [],
                                          "y": [],
                                          "rows": 0
                                        }
                                      ],
                                      "recordingValues": [
                                        {
                                          "name": "string",
                                          "type": "string"
                                        }
                                      ],
                                      "episodeValues": [
                                        {
                                          "name": "string",
                                          "type": "string",
                                          "values": []
                                        }
                                      ],
                                      "checks": [
                                        {
                                          "id": "string",
                                          "title": "string",
                                          "status": "warn",
                                          "value": 0,
                                          "threshold": 0,
                                          "message": "string",
                                          "at": {},
                                          "episodeIndex": 0
                                        }
                                      ],
                                      "episodes": [
                                        {
                                          "index": 0,
                                          "startS": 0,
                                          "endS": 0,
                                          "task": "string",
                                          "labels": {},
                                          "confidence": 0
                                        }
                                      ],
                                      "selection": {
                                        "kept": 0,
                                        "dropped": 0,
                                        "items": [
                                          {}
                                        ]
                                      },
                                      "canonical": {
                                        "ok": false,
                                        "issues": [
                                          {}
                                        ]
                                      },
                                      "artifact": {
                                        "format": "string",
                                        "files": [
                                          {}
                                        ],
                                        "summary": {}
                                      },
                                      "logs": "string",
                                      "errors": [
                                        {
                                          "code": "string",
                                          "message": "string",
                                          "file": "string",
                                          "line": 0
                                        }
                                      ]
                                    },
                                    "error": {
                                      "code": "string",
                                      "message": "string"
                                    }
                                  }
                                }
                              }
                              服务器https://api.embodiflow.io/v1https://api.embodiflow.dev/v1
                              上一页

                              POST /algorithms/registry-tokens

                              下一页

                              GET /algorithms/sample-runs/{id}

                              curl -X POST 'https://api.embodiflow.io/v1/algorithms/sample-runs' \
                                -H 'Authorization: Bearer $EMBODIFLOW_PAT' \
                                -H 'Content-Type: application/json' \
                                -d '{
                                  "source": "string",
                                  "algorithmVersion": {
                                    "algorithmId": "00000000-0000-0000-0000-000000000000",
                                    "version": "string"
                                  },
                                  "inputs": {
                                    "recordingId": "00000000-0000-0000-0000-000000000000",
                                    "episode": {
                                      "recordingId": "00000000-0000-0000-0000-000000000000",
                                      "index": 0
                                    },
                                    "versionId": "00000000-0000-0000-0000-000000000000"
                                  },
                                  "window": {},
                                  "params": {}
                                }'
                              响应示例
                              状态码
                              202
                              ​
                              {
                                "data": {
                                  "id": "string",
                                  "state": "queued",
                                  "recordingIds": [
                                    "string"
                                  ],
                                  "inputKind": "metadata_only",
                                  "inputBytes": 0,
                                  "deadlineSeconds": 0,
                                  "createdAt": "string",
                                  "startedAt": "string",
                                  "finishedAt": "string",
                                  "result": {
                                    "state": "succeeded",
                                    "durationMs": 0,
                                    "logs": "string",
                                    "logsTruncated": false,
                                    "outputs": [
                                      {
                                        "name": "string",
                                        "type": "string",
                                        "summary": "string"
                                      }
                                    ],
                                    "preview": {
                                      "contract": "embodiflow-sample-preview/v1",
                                      "category": "export",
                                      "window": {
                                        "startS": 0,
                                        "endS": 0
                                      },
                                      "outcome": "succeeded",
                                      "series": [
                                        {
                                          "name": "string",
                                          "type": "string",
                                          "unit": "string",
                                          "columns": [],
                                          "t": [],
                                          "y": [],
                                          "rows": 0
                                        }
                                      ],
                                      "recordingValues": [
                                        {
                                          "name": "string",
                                          "type": "string"
                                        }
                                      ],
                                      "episodeValues": [
                                        {
                                          "name": "string",
                                          "type": "string",
                                          "values": []
                                        }
                                      ],
                                      "checks": [
                                        {
                                          "id": "string",
                                          "title": "string",
                                          "status": "warn",
                                          "value": 0,
                                          "threshold": 0,
                                          "message": "string",
                                          "at": {},
                                          "episodeIndex": 0
                                        }
                                      ],
                                      "episodes": [
                                        {
                                          "index": 0,
                                          "startS": 0,
                                          "endS": 0,
                                          "task": "string",
                                          "labels": {},
                                          "confidence": 0
                                        }
                                      ],
                                      "selection": {
                                        "kept": 0,
                                        "dropped": 0,
                                        "items": [
                                          {}
                                        ]
                                      },
                                      "canonical": {
                                        "ok": false,
                                        "issues": [
                                          {}
                                        ]
                                      },
                                      "artifact": {
                                        "format": "string",
                                        "files": [
                                          {}
                                        ],
                                        "summary": {}
                                      },
                                      "logs": "string",
                                      "errors": [
                                        {
                                          "code": "string",
                                          "message": "string",
                                          "file": "string",
                                          "line": 0
                                        }
                                      ]
                                    },
                                    "error": {
                                      "code": "string",
                                      "message": "string"
                                    }
                                  }
                                }
                              }