FruxonDocs
ApiWorkflowrevision

Creates an immutable Workflow revision.

Freezes the supplied authoring payload into a new immutable revision. The revision is validated before it is persisted; it is not deployed until you call `POST .../revisions/{revision}:deploy`.

POST
/v1/tenants/{tenant}/workflows/{workflow}/revisions
AuthorizationBearer <token>

JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.

In: header

Path Parameters

workflow*string

The unique identifier of the Workflow.

tenant*string

The tenant identifier

The Workflow graph authoring payload to freeze.

comment?string|null
flow*

Represents a sequence of steps in a agent flow, supporting versioning and ordered execution.

A valid flow has exactly one ENTRY_POINT step and exactly one EXIT_POINT step in Steps — these are not synthesized for you. The other steps (AGENT, TOOL, CLAUDE_BOX) sit between them, wired by Edges.

integrationSlots?|null
integrationBindings?|null
assets?|null
slots?|null
[key: string]?never

Response Body

curl -X POST "https://api.fruxon.com/v1/tenants/string/workflows/string/revisions" \  -H "Content-Type: application/json" \  -d '{    "flow": {}  }'
{
  "workflowId": "string",
  "revision": 0,
  "comment": "string",
  "parametersMetadata": [
    {
      "name": "string",
      "index": 0,
      "type": "STRING",
      "typeName": "STRING",
      "integerRange": {
        "min": 0,
        "max": 0
      },
      "floatRange": {
        "min": 0,
        "max": 0
      },
      "options": [],
      "asset": {
        "providers": null,
        "contentTypes": null,
        "vectorized": false
      },
      "displayName": "string",
      "description": "string",
      "required": false,
      "secret": false,
      "secretResolvable": false,
      "defaultValue": "string",
      "jsonSchema": null,
      "uiHint": "CODE",
      "rules": []
    }
  ],
  "outputContract": {
    "format": "TEXT",
    "schema": "string"
  },
  "subAgents": [
    {
      "id": "string",
      "slug": "string",
      "integrationId": "sub_agent",
      "agentId": "string",
      "displayName": "string",
      "description": "string",
      "toolType": "AGENT_TOOL",
      "actionType": "READ_ONLY",
      "resultType": "STRING",
      "authSettings": {
        "supportsOAuth": false,
        "oAuth": []
      },
      "flow": {
        "steps": [],
        "edges": []
      },
      "parametersMetadata": [],
      "avatarFileId": "string"
    }
  ],
  "flow": {
    "steps": [],
    "edges": [
      {
        "source": "string",
        "target": "string"
      }
    ]
  },
  "integrationSlots": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "integrationId": "string",
      "displayName": "string",
      "tenantConfigId": "00000000-0000-0000-0000-000000000000"
    }
  ],
  "integrationBindings": {},
  "assets": [
    {
      "id": "string",
      "displayName": "string",
      "description": "string",
      "sourceType": "string",
      "vectorized": true,
      "ragAssetId": "00000000-0000-0000-0000-000000000000",
      "assetLink": "string"
    }
  ],
  "createdBy": "string",
  "actor": "string",
  "createdAt": 0
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
Empty
Empty
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}