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

认证

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

REST API

  • 使用 REST API
  • 全部端点
  • 项目
    • 录制
      • 上传
        • 任务片段与版本
          • 标注
            • 质量与任务
              • 检索
                • GET
                  Asset cards across dataset versions and artifacts.
                • GET
                  Single asset card with recent events.
                • POST
                  Preview a structured query against canonical parquet for one dataset version.
                • GET
                  L0 Postgres coarse filter across dataset versions visible to the caller.
                • GET
                  Facet counts for the same visible version scope as dataset-versions list.
                • GET
                  How many recordings are not in the search index yet.
                • POST
                  Explicit team Owner/Admin action: build the search profile for recordings processed before indexing existed. Derived cache, never dataset history.
                • POST
                  Structured + optional semantic catalog search (ADR 0012 / 0014).
                • GET
                  Structured catalog search schema for query builders (ADR 0012).
                • GET
                  Search this team for projects, recordings, versions, and commands
              • 工作流
                • 算法
                  • 模型
                    • 产物与导出
                      • 计费与用量
                        • 团队与治理
                          • 账号与通知
                            • Webhook 端点

                              事件

                              • 出站事件
                              • 签名校验

                              工具

                              • 命令行
                              • SDK
                              • MCP

                              更新

                              • 更新日志

                              © 2026 EmbodiFlow

                              llms.txtOpenAPI JSON
                              1. 开发者参考
                              2. REST API
                              3. 检索
                              4. Structured + optional semantic catalog search (ADR 0012 / 0014).

                              Structured + optional semantic catalog search (ADR 0012 / 0014).

                              POST
                              /v1/catalog/search-queries
                              curl -X POST 'https://api.embodiflow.io/v1/catalog/search-queries' \
                                -H 'Authorization: Bearer $EMBODIFLOW_PAT' \
                                -H 'Content-Type: application/json' \
                                -d '{
                                  "scope": {
                                    "projectId": "00000000-0000-0000-0000-000000000000",
                                    "datasetId": "00000000-0000-0000-0000-000000000000",
                                    "currentVersionOnly": true,
                                    "includeSoftHidden": true
                                  },
                                  "where": {},
                                  "semantic": {
                                    "text": "string",
                                    "limit": 0
                                  },
                                  "pageSize": 0,
                                  "pageToken": "string",
                                  "sortBy": "updatedAt",
                                  "sortOrder": "asc"
                                }'

                              认证

                              每个请求都需要携带个人访问令牌(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
                              • scopeobject | null
                                • projectIdstring (uuid) | null
                                • datasetIdstring (uuid) | null
                                • currentVersionOnlyboolean | null
                                • includeSoftHiddenboolean | null
                              • whereobject | null
                              • semanticobject | null
                                • textstring必填
                                • limitinteger | null
                              • pageSizeinteger | null
                              • pageTokenstring | null
                              • sortBystring | null
                                可选值
                                updatedAt
                                createdAt
                                durationNs
                                qualityStatus
                                indexedAt
                              • sortOrderstring | null
                                可选值
                                asc
                                desc

                              响应

                              Success

                              • dataobject必填
                                • dataarray<CatalogSearchResultItemDto>必填
                                • metaobject必填
                              响应示例
                              {
                                "data": {
                                  "data": [
                                    {
                                      "datasetVersionId": "string",
                                      "datasetId": "string",
                                      "projectId": "string",
                                      "datasetName": "string",
                                      "sourceType": "string",
                                      "dataSource": "string",
                                      "episodeStatisticsGranularity": "coarse",
                                      "version": 0,
                                      "qualityStatus": "string",
                                      "assetHealth": {
                                        "healthStatus": "failed",
                                        "lastEventAt": "string",
                                        "summary": "string",
                                        "qualityStatus": "string"
                                      },
                                      "operationFacts": {
                                        "contractVersion": "embodiflow-recording-operation-facts/v1",
                                        "observedAt": "string",
                                        "processing": {
                                          "upload": {},
                                          "workflow": {},
                                          "quality": {}
                                        },
                                        "health": {
                                          "status": "unknown",
                                          "primaryBlockerCode": "string",
                                          "openRepairCount": 0,
                                          "observedAt": "string"
                                        },
                                        "playback": {
                                          "reasonCode": "string"
                                        },
                                        "lastMeaningfulActivityAt": "string"
                                      },
                                      "recordingStatus": {
                                        "lifecycle": "failed",
                                        "quality": "warn",
                                        "qualityCheckId": "string",
                                        "qualityVerdict": "warning",
                                        "stepId": "string",
                                        "stepWaitReason": "string",
                                        "noProgressSince": "string",
                                        "failure": {
                                          "code": "string",
                                          "reason": "string",
                                          "stepId": "string",
                                          "stepName": "string",
                                          "stepAlgorithm": {},
                                          "stepRunId": "string",
                                          "runId": "string",
                                          "stepErrorCode": "string"
                                        },
                                        "runId": "string",
                                        "processingRefused": {
                                          "code": "string"
                                        }
                                      },
                                      "durationNs": 0,
                                      "cameraCount": 0,
                                      "jointDimension": 0,
                                      "topicCount": 0,
                                      "featureCount": 0,
                                      "fps": 0,
                                      "semanticScore": 0,
                                      "matchedEpisodes": [
                                        {
                                          "sampleKey": "string",
                                          "episodeIndex": 0,
                                          "semanticScore": 0,
                                          "summaryPreview": "string"
                                        }
                                      ],
                                      "matchedSignals": [
                                        {
                                          "id": "string",
                                          "signalKind": "string",
                                          "name": "string",
                                          "normalizedName": "string",
                                          "signalType": "string",
                                          "dimension": 0,
                                          "frequencyHz": 0
                                        }
                                      ],
                                      "matchedPredicates": [
                                        {
                                          "kind": "field",
                                          "summary": "string"
                                        }
                                      ],
                                      "updatedAt": "string"
                                    }
                                  ],
                                  "meta": {
                                    "pageSize": 0,
                                    "elapsedMs": 0,
                                    "indexStatus": "missing"
                                  }
                                }
                              }
                              服务器https://api.embodiflow.io/v1https://api.embodiflow.dev/v1
                              上一页

                              POST /catalog/search-index/builds

                              下一页

                              GET /catalog/search-schema

                              curl -X POST 'https://api.embodiflow.io/v1/catalog/search-queries' \
                                -H 'Authorization: Bearer $EMBODIFLOW_PAT' \
                                -H 'Content-Type: application/json' \
                                -d '{
                                  "scope": {
                                    "projectId": "00000000-0000-0000-0000-000000000000",
                                    "datasetId": "00000000-0000-0000-0000-000000000000",
                                    "currentVersionOnly": true,
                                    "includeSoftHidden": true
                                  },
                                  "where": {},
                                  "semantic": {
                                    "text": "string",
                                    "limit": 0
                                  },
                                  "pageSize": 0,
                                  "pageToken": "string",
                                  "sortBy": "updatedAt",
                                  "sortOrder": "asc"
                                }'
                              响应示例
                              状态码
                              201
                              ​
                              {
                                "data": {
                                  "data": [
                                    {
                                      "datasetVersionId": "string",
                                      "datasetId": "string",
                                      "projectId": "string",
                                      "datasetName": "string",
                                      "sourceType": "string",
                                      "dataSource": "string",
                                      "episodeStatisticsGranularity": "coarse",
                                      "version": 0,
                                      "qualityStatus": "string",
                                      "assetHealth": {
                                        "healthStatus": "failed",
                                        "lastEventAt": "string",
                                        "summary": "string",
                                        "qualityStatus": "string"
                                      },
                                      "operationFacts": {
                                        "contractVersion": "embodiflow-recording-operation-facts/v1",
                                        "observedAt": "string",
                                        "processing": {
                                          "upload": {},
                                          "workflow": {},
                                          "quality": {}
                                        },
                                        "health": {
                                          "status": "unknown",
                                          "primaryBlockerCode": "string",
                                          "openRepairCount": 0,
                                          "observedAt": "string"
                                        },
                                        "playback": {
                                          "reasonCode": "string"
                                        },
                                        "lastMeaningfulActivityAt": "string"
                                      },
                                      "recordingStatus": {
                                        "lifecycle": "failed",
                                        "quality": "warn",
                                        "qualityCheckId": "string",
                                        "qualityVerdict": "warning",
                                        "stepId": "string",
                                        "stepWaitReason": "string",
                                        "noProgressSince": "string",
                                        "failure": {
                                          "code": "string",
                                          "reason": "string",
                                          "stepId": "string",
                                          "stepName": "string",
                                          "stepAlgorithm": {},
                                          "stepRunId": "string",
                                          "runId": "string",
                                          "stepErrorCode": "string"
                                        },
                                        "runId": "string",
                                        "processingRefused": {
                                          "code": "string"
                                        }
                                      },
                                      "durationNs": 0,
                                      "cameraCount": 0,
                                      "jointDimension": 0,
                                      "topicCount": 0,
                                      "featureCount": 0,
                                      "fps": 0,
                                      "semanticScore": 0,
                                      "matchedEpisodes": [
                                        {
                                          "sampleKey": "string",
                                          "episodeIndex": 0,
                                          "semanticScore": 0,
                                          "summaryPreview": "string"
                                        }
                                      ],
                                      "matchedSignals": [
                                        {
                                          "id": "string",
                                          "signalKind": "string",
                                          "name": "string",
                                          "normalizedName": "string",
                                          "signalType": "string",
                                          "dimension": 0,
                                          "frequencyHz": 0
                                        }
                                      ],
                                      "matchedPredicates": [
                                        {
                                          "kind": "field",
                                          "summary": "string"
                                        }
                                      ],
                                      "updatedAt": "string"
                                    }
                                  ],
                                  "meta": {
                                    "pageSize": 0,
                                    "elapsedMs": 0,
                                    "indexStatus": "missing"
                                  }
                                }
                              }