EmbodiFlowDocs
Get startedDataWorkflows and algorithmsTraining and deploymentDeveloper reference
  • Developer reference

Authentication

  • Authentication overview
  • API keys
  • Personal access tokens
  • Browser sessions

REST API

  • Using the REST API
  • All endpoints
  • Projects
    • GET
      List data formats
    • POST
      Create a data format
    • GET
      Get a data format
    • PATCH
      Update a data format
    • POST
      Publishes the draft as the next immutable revision. The path is the REST noun (`revisions`): the public contract refuses verb segments.
    • POST
      Create a sample run
    • GET
      Get a sample run
    • DELETE
      Removes every sample uploaded for the DRAFT of a team format (FV-20c). The format stays. Repeating the call removes nothing and still succeeds.
    • GET
      This team's own formats, drafts included. The route precedes `:formatId`.
    • GET
      List first value state
    • PATCH
      Update a first value state
    • POST
      Create a onboarding sample
    • DELETE
      Delete a current
    • GET
      List current for a onboarding sample
    • POST
      Create a project import job
    • GET
      Get a project import job
    • POST
      Create a confirmation
    • POST
      Create a resumption
    • POST
      Create a project import source
    • POST
      Create a validation request
    • PATCH
      Update a project membership
    • GET
      List projects
    • POST
      Create a project
    • DELETE
      Move a project to trash
    • GET
      Get a project
    • PATCH
      Update a project
    • GET
      List analytics for a project
    • POST
      Create a archive request
    • POST
      Move a project to trash
    • GET
      List members for a project
    • POST
      Create a member
    • PATCH
      Update a membership
    • GET
      List overview for a project
    • GET
      List pii policy for a project
    • PUT
      Update a pii policy
    • GET
      List project import jobs for a project
    • GET
      List recording privacy for a project
    • PUT
      Owner only (checked in the service). Applies to new uploads; with `applyToExistingRecordings` (not_required only) it also moves the project's existing recordings, audited, in the same transaction.
    • GET
      List saved views in a project
    • POST
      Create a saved episode filter view
    • DELETE
      Delete a saved view
    • GET
      Get a saved view
    • PATCH
      Patch a saved view
    • GET
      List project secrets
    • POST
      Create a secret
    • DELETE
      Delete a secret
    • PUT
      Update a secret
    • GET
      Resolve a dataset reference or console path to ids
    • GET
      List rig profiles
    • POST
      Create a rig profile
    • GET
      Get a rig profile
    • PATCH
      Update a draft
    • POST
      Publishes the confirmed draft as the next immutable revision. The path is the REST noun (`revisions`): the public contract refuses verb segments.
    • POST
      Create a test
    • POST
      Analyses a recording and answers a draft; stores nothing.
    • GET
      List team secrets
    • POST
      Create a secret
    • DELETE
      Delete a secret
    • PUT
      Update a secret
    • GET
      List items in trash
    • DELETE
      Permanently purge an item from trash
    • POST
      Restore an item from trash
    • GET
      List recent projects for a me
  • Recordings
    • Upload
      • Episodes and versions
        • Annotation
          • Quality and tasks
            • Search
              • Workflows
                • Algorithms
                  • Models
                    • Artifacts and export
                      • Billing and usage
                        • Team and governance
                          • Account and notifications
                            • Webhook endpoints

                              Events

                              • Outbound events
                              • Signature verification

                              Tools

                              • CLI
                              • SDK
                              • MCP

                              Updates

                              • Changelog

                              © 2026 EmbodiFlow

                              llms.txtOpenAPI JSON
                              1. Developer reference
                              2. REST API
                              3. Projects
                              4. Publishes the confirmed draft as the next immutable revision. The path is the REST noun (`revisions`): the public contract refuses verb segments.

                              Publishes the confirmed draft as the next immutable revision. The path is the REST noun (`revisions`): the public contract refuses verb segments.

                              POST
                              /v1/rig-profiles/{id}/revisions
                              curl -X POST 'https://api.embodiflow.io/v1/rig-profiles/{id}/revisions' \
                                -H 'Authorization: Bearer $EMBODIFLOW_PAT'

                              Authorization

                              Send a personal access token with every request.

                              • Authorization: Bearer PAT
                              Authentication guide

                              Path parameters

                              • idstringrequired

                              Header parameters

                              • 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.

                              Responses

                              Success

                              • dataobjectrequired
                                • idstringrequired
                                • namestringrequired
                                • statusstringrequired
                                  Allowed values
                                  draft
                                  published
                                • sourceRecordingIdstring | nullrequired
                                • latestRevisionnumber | nullrequired
                                • publishedAtstring | nullrequired
                                • createdAtstringrequired
                                • updatedAtstringrequired
                                • draftobjectrequired
                                • needsConfirmationarray<string>required
                                • factsobject | nullrequired
                                • revisionsarray<object>required
                              Response example
                              {
                                "data": {
                                  "id": "string",
                                  "name": "string",
                                  "status": "draft",
                                  "sourceRecordingId": "string",
                                  "latestRevision": 0,
                                  "publishedAt": "string",
                                  "createdAt": "string",
                                  "updatedAt": "string",
                                  "draft": {
                                    "profile": "string",
                                    "sourceKind": "human",
                                    "robotType": "string",
                                    "match": {
                                      "topics": [
                                        "string"
                                      ],
                                      "emptyTopics": [
                                        "string"
                                      ],
                                      "sidecar": "string",
                                      "deviceType": "string"
                                    },
                                    "cameras": [
                                      {
                                        "topic": "string",
                                        "key": "string",
                                        "role": "other",
                                        "sensor": "string",
                                        "optional": false,
                                        "latencyMs": 0,
                                        "needsConfirmation": false
                                      }
                                    ],
                                    "stampSource": "header_stamp",
                                    "cameraLatencyMs": 0,
                                    "calibration": {
                                      "distortion": "none",
                                      "stereo": {
                                        "left": "string",
                                        "right": "string",
                                        "extrinsicOn": "string",
                                        "meaning": "string"
                                      },
                                      "camImu": {
                                        "on": "string",
                                        "key": "string",
                                        "meaning": "string",
                                        "translationUnit": "m"
                                      }
                                    },
                                    "imu": {
                                      "topic": "string",
                                      "frame": "string",
                                      "features": {
                                        "angular_velocity": "string",
                                        "linear_acceleration": "string"
                                      },
                                      "orientation": "ignore"
                                    },
                                    "state": [
                                      {
                                        "topic": "string",
                                        "names": [
                                          "string"
                                        ],
                                        "unit": "m",
                                        "unnamed": false,
                                        "range": {
                                          "min": 0,
                                          "max": 0
                                        },
                                        "semantics": "string",
                                        "needsConfirmation": false
                                      }
                                    ],
                                    "action": "none",
                                    "actionSemantics": {
                                      "space": "robot_joint",
                                      "representation": "absolute",
                                      "frame": "string",
                                      "calibrationId": "string",
                                      "embodimentId": "string",
                                      "controlRateHz": 0
                                    },
                                    "extraState": [
                                      {
                                        "topic": "string",
                                        "key": "string",
                                        "shape": [
                                          0
                                        ],
                                        "names": [
                                          "string"
                                        ],
                                        "frame": "string",
                                        "unit": "m"
                                      }
                                    ],
                                    "extraAction": [
                                      {
                                        "topic": "string",
                                        "key": "string",
                                        "shape": [
                                          0
                                        ],
                                        "names": [
                                          "string"
                                        ],
                                        "frame": "string",
                                        "unit": "m"
                                      }
                                    ],
                                    "dropped": [
                                      {
                                        "topic": "string",
                                        "reason": "string"
                                      }
                                    ],
                                    "sidecarsKept": [
                                      "string"
                                    ]
                                  },
                                  "needsConfirmation": [
                                    "string"
                                  ],
                                  "facts": {
                                    "topics": [
                                      {
                                        "topic": "string",
                                        "schema": "string",
                                        "messageCount": 0
                                      }
                                    ],
                                    "stampSkewMs": [
                                      {
                                        "topic": "string",
                                        "medianMs": 0
                                      }
                                    ],
                                    "bytesRead": 0
                                  },
                                  "revisions": [
                                    {
                                      "id": "string",
                                      "revision": 0,
                                      "publishedAt": "string",
                                      "publishedBy": "string",
                                      "documentHash": "string"
                                    }
                                  ]
                                }
                              }
                              Servershttps://api.embodiflow.io/v1https://api.embodiflow.dev/v1
                              Previous

                              PATCH /rig-profiles/{id}/draft

                              Next

                              POST /rig-profiles/{id}/test

                              curl -X POST 'https://api.embodiflow.io/v1/rig-profiles/{id}/revisions' \
                                -H 'Authorization: Bearer $EMBODIFLOW_PAT'
                              Response example
                              Status code
                              201
                              ​
                              {
                                "data": {
                                  "id": "string",
                                  "name": "string",
                                  "status": "draft",
                                  "sourceRecordingId": "string",
                                  "latestRevision": 0,
                                  "publishedAt": "string",
                                  "createdAt": "string",
                                  "updatedAt": "string",
                                  "draft": {
                                    "profile": "string",
                                    "sourceKind": "human",
                                    "robotType": "string",
                                    "match": {
                                      "topics": [
                                        "string"
                                      ],
                                      "emptyTopics": [
                                        "string"
                                      ],
                                      "sidecar": "string",
                                      "deviceType": "string"
                                    },
                                    "cameras": [
                                      {
                                        "topic": "string",
                                        "key": "string",
                                        "role": "other",
                                        "sensor": "string",
                                        "optional": false,
                                        "latencyMs": 0,
                                        "needsConfirmation": false
                                      }
                                    ],
                                    "stampSource": "header_stamp",
                                    "cameraLatencyMs": 0,
                                    "calibration": {
                                      "distortion": "none",
                                      "stereo": {
                                        "left": "string",
                                        "right": "string",
                                        "extrinsicOn": "string",
                                        "meaning": "string"
                                      },
                                      "camImu": {
                                        "on": "string",
                                        "key": "string",
                                        "meaning": "string",
                                        "translationUnit": "m"
                                      }
                                    },
                                    "imu": {
                                      "topic": "string",
                                      "frame": "string",
                                      "features": {
                                        "angular_velocity": "string",
                                        "linear_acceleration": "string"
                                      },
                                      "orientation": "ignore"
                                    },
                                    "state": [
                                      {
                                        "topic": "string",
                                        "names": [
                                          "string"
                                        ],
                                        "unit": "m",
                                        "unnamed": false,
                                        "range": {
                                          "min": 0,
                                          "max": 0
                                        },
                                        "semantics": "string",
                                        "needsConfirmation": false
                                      }
                                    ],
                                    "action": "none",
                                    "actionSemantics": {
                                      "space": "robot_joint",
                                      "representation": "absolute",
                                      "frame": "string",
                                      "calibrationId": "string",
                                      "embodimentId": "string",
                                      "controlRateHz": 0
                                    },
                                    "extraState": [
                                      {
                                        "topic": "string",
                                        "key": "string",
                                        "shape": [
                                          0
                                        ],
                                        "names": [
                                          "string"
                                        ],
                                        "frame": "string",
                                        "unit": "m"
                                      }
                                    ],
                                    "extraAction": [
                                      {
                                        "topic": "string",
                                        "key": "string",
                                        "shape": [
                                          0
                                        ],
                                        "names": [
                                          "string"
                                        ],
                                        "frame": "string",
                                        "unit": "m"
                                      }
                                    ],
                                    "dropped": [
                                      {
                                        "topic": "string",
                                        "reason": "string"
                                      }
                                    ],
                                    "sidecarsKept": [
                                      "string"
                                    ]
                                  },
                                  "needsConfirmation": [
                                    "string"
                                  ],
                                  "facts": {
                                    "topics": [
                                      {
                                        "topic": "string",
                                        "schema": "string",
                                        "messageCount": 0
                                      }
                                    ],
                                    "stampSkewMs": [
                                      {
                                        "topic": "string",
                                        "medianMs": 0
                                      }
                                    ],
                                    "bytesRead": 0
                                  },
                                  "revisions": [
                                    {
                                      "id": "string",
                                      "revision": 0,
                                      "publishedAt": "string",
                                      "publishedBy": "string",
                                      "documentHash": "string"
                                    }
                                  ]
                                }
                              }