EmbodiFlowDocs
Open console
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
    • Recordings
      • Upload
        • Episodes and versions
          • Annotation
            • Quality and tasks
              • Search
                • Workflows
                  • GET
                    List algorithm definitions
                  • POST
                    Create a algorithm definition
                  • GET
                    Get a algorithm definition
                  • GET
                    List revisions for a algorithm definition
                  • POST
                    Create a revision
                  • POST
                    Create a publication request
                  • POST
                    Create a revocation
                  • POST
                    Create a image ref validation
                  • GET
                    Get a container run
                  • GET
                    List log downloads for a container run
                  • GET
                    List outdated outputs for a project
                  • POST
                    Create a workflow run
                  • GET
                    List workflows for a version
                  • POST
                    Create a workflow backfill
                  • GET
                    List workflow bindings for a project
                  • PUT
                    Update a workflow binding
                  • POST
                    Create a workflow run plan
                  • GET
                    List workflow runs for a project
                  • POST
                    Create a workflow run
                  • GET
                    List recent quality jobs for a me
                  • GET
                    List workflow definitions
                  • POST
                    Create a workflow definition
                  • DELETE
                    Delete a workflow definition
                  • GET
                    Get a workflow definition
                  • PATCH
                    Update a workflow definition
                  • POST
                    Create a revision
                  • GET
                    Get a revision
                  • PUT
                    Update a revision
                  • PUT
                    Update a layout
                  • POST
                    Create a publication
                  • GET
                    Get a workflow run
                  • POST
                    Create a cancellation request
                  • GET
                    List container runs for a workflow run
                  • GET
                    List recordings for a workflow run
                  • POST
                    Create a rerun request
                  • GET
                    List steps for a workflow run
                  • GET
                    Get a workflow step run
                  • POST
                    Create a download session
                  • GET
                    List log tail for a workflow step run
                  • GET
                    List outputs for a workflow step run
                  • POST
                    Create a workflow validation
                • 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. Workflows
                              4. Create a workflow definition

                              Create a workflow definition

                              POST
                              /v1/workflow-definitions
                              curl -X POST 'https://api.embodiflow.io/v1/workflow-definitions' \
                                -H 'Authorization: Bearer $EMBODIFLOW_PAT' \
                                -H 'Content-Type: application/json' \
                                -d '{
                                  "spec": {},
                                  "layout": {},
                                  "description": "string",
                                  "projectId": "00000000-0000-0000-0000-000000000000"
                                }'

                              Authorization

                              Send a personal access token with every request.

                              • Authorization: Bearer PAT
                              Authentication guide

                              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.

                              Request body

                              Content-Typeapplication/json
                              • specobjectrequired
                              • layoutobject
                              • descriptionstring
                              • projectIdstring (uuid)

                              Responses

                              Success

                              • dataobjectrequired
                                • idstringrequired
                                • codestringrequired
                                • namestringrequired
                                • descriptionstring | nullrequired
                                • reusableone ofrequired
                                • ownerstringrequired
                                  Allowed values
                                  tenant
                                  platform
                                • purposestring | nullrequired
                                • latestRevisionnumber | nullrequired
                                • specHashstring | nullrequired
                                • publishedAtstring | nullrequired
                                • rowVersionnumberrequired
                                • revisionobjectrequired
                              Response example
                              {
                                "data": {
                                  "id": "string",
                                  "code": "string",
                                  "name": "string",
                                  "description": "string",
                                  "reusable": false,
                                  "owner": "tenant",
                                  "purpose": "string",
                                  "latestRevision": 0,
                                  "specHash": "string",
                                  "publishedAt": "string",
                                  "rowVersion": 0,
                                  "revision": {
                                    "id": "string",
                                    "revision": 0,
                                    "spec": {},
                                    "specHash": "string",
                                    "purpose": "string",
                                    "layout": {},
                                    "publishedAt": "string",
                                    "rowVersion": 0,
                                    "issues": [
                                      {
                                        "code": "string",
                                        "severity": "string",
                                        "stepId": "string",
                                        "path": "string",
                                        "message": "string",
                                        "requirement": "string"
                                      }
                                    ]
                                  }
                                }
                              }
                              Servershttps://api.embodiflow.io/v1https://api.embodiflow.dev/v1
                              Previous

                              GET /workflow-definitions

                              Next

                              DELETE /workflow-definitions/{id}

                              curl -X POST 'https://api.embodiflow.io/v1/workflow-definitions' \
                                -H 'Authorization: Bearer $EMBODIFLOW_PAT' \
                                -H 'Content-Type: application/json' \
                                -d '{
                                  "spec": {},
                                  "layout": {},
                                  "description": "string",
                                  "projectId": "00000000-0000-0000-0000-000000000000"
                                }'
                              Response example
                              Status code
                              201
                              ​
                              {
                                "data": {
                                  "id": "string",
                                  "code": "string",
                                  "name": "string",
                                  "description": "string",
                                  "reusable": false,
                                  "owner": "tenant",
                                  "purpose": "string",
                                  "latestRevision": 0,
                                  "specHash": "string",
                                  "publishedAt": "string",
                                  "rowVersion": 0,
                                  "revision": {
                                    "id": "string",
                                    "revision": 0,
                                    "spec": {},
                                    "specHash": "string",
                                    "purpose": "string",
                                    "layout": {},
                                    "publishedAt": "string",
                                    "rowVersion": 0,
                                    "issues": [
                                      {
                                        "code": "string",
                                        "severity": "string",
                                        "stepId": "string",
                                        "path": "string",
                                        "message": "string",
                                        "requirement": "string"
                                      }
                                    ]
                                  }
                                }
                              }