FruxonDocs
AgentsRevisions

Creates a new agent revision.

Creates a draft revision with the specified configuration. The revision is not active until deployed via the deploy endpoint.

POST
/v1/tenants/{tenant}/agents/{agent}/revisions
AuthorizationBearer <token>

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

In: header

Path Parameters

agent*string

The unique identifier of the agent.

tenant*string

The tenant identifier

The revision configuration.

comment?string|null

A comment describing what was changed or the purpose of this revision. Useful for version history and auditing.

subAgents?|null

A list of agent-specific tools (usually mini-workflows or reusable logic blocks) referenced within this revision.

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.

connectors?|null

A list of external connectors (e.g., Telegram, webhooks, CRM hooks) used by this revision.

integrationConfigs?|null

A collection of integration configuration objects associated with the agent revision. These configurations define specific integration details such as identifiers, display names, and parameter mappings necessary for the agent and its related tools or connectors to operate.

integrationBindings?|null

Agent-wide default integration config per integration id. Each value must reference the Fruxon.Model.Integrations.IntegrationConfig.Id of an entry in Fruxon.Model.Agents.CreateAgentRevision.IntegrationConfigs whose IntegrationId matches the key. Tools whose IntegrationConfigId is null inherit from this map at plan build time.

llmConfigs?|null

Defines a collection of configurations for LLM providers. These configurations determine the specific setup and parameters required to interact with various LLM providers within the system.

assets?|null

A list of assets (e.g., uploaded files or schemas) attached to this revision.

jobPolicyConfigs?|null

Job scheduling configurations associated with this revision. Each configuration defines a recurring schedule (e.g., daily, weekly, monthly) with time settings (hour, minute, timezone) for automatic agent execution. Multiple schedules allow the agent to run at different times or frequencies.

[key: string]?never

Response Body

curl -X POST "https://api.fruxon.com/v1/tenants/string/agents/string/revisions" \  -H "Content-Type: application/json" \  -d '{}'
{
  "agentId": "string",
  "agentRevision": 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,
      "defaultValue": "string",
      "jsonSchema": null,
      "uiHint": "CODE",
      "rules": []
    }
  ],
  "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"
      }
    ]
  },
  "connectors": [
    {
      "name": "string",
      "provider": "string",
      "active": false,
      "policy": "ALLOW_ALL",
      "onBoardingMessage": "string",
      "environmentSlug": "string",
      "agentId": "string",
      "agentRevision": 0,
      "parameters": {},
      "apiKeyId": "00000000-0000-0000-0000-000000000000",
      "createdAt": 0,
      "id": "00000000-0000-0000-0000-000000000000",
      "modifiedAt": 0
    }
  ],
  "integrationConfigs": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "integrationId": "string",
      "displayName": "string",
      "parameters": {},
      "auth": {
        "integrationAuthMetadataId": "string",
        "level": "UNSPECIFIED",
        "parameters": null
      },
      "authMap": [],
      "sandboxMode": "NONE",
      "sandboxVariant": {
        "parameters": {},
        "auth": {
          "integrationAuthMetadataId": null,
          "level": "USER",
          "parameters": {}
        },
        "authMap": []
      },
      "tenantConfigId": "00000000-0000-0000-0000-000000000000"
    }
  ],
  "integrationBindings": {},
  "llmConfigs": [
    {
      "providerId": "string",
      "parameters": {},
      "tenantConfigId": "00000000-0000-0000-0000-000000000000"
    }
  ],
  "assets": [
    {
      "id": "string",
      "displayName": "string",
      "sourceType": "string",
      "vectorized": true,
      "ragAssetId": "00000000-0000-0000-0000-000000000000",
      "assetLink": "string"
    }
  ],
  "jobPolicyConfigs": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "tenantId": "00000000-0000-0000-0000-000000000000",
      "createdAt": 0,
      "modifiedAt": 0,
      "agentId": "string",
      "agentRevision": 0,
      "scheduleFrequency": "DAILY",
      "scheduleDay": "sunday",
      "scheduleDayOfMonth": "_1",
      "scheduleHour": "string",
      "scheduleMinute": "string",
      "intervalValue": 0,
      "intervalUnit": "MINUTES",
      "timezone": "string",
      "timeout": 0,
      "prompt": "string"
    }
  ],
  "createdBy": "string",
  "actor": "string",
  "createdAt": 0
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
Empty
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}