FruxonDocs
ApiAgentdraft

Autosave the draft head.

Writes a new head for the draft, appending an immutable entry to its undo/redo history (an identical payload is a no-op). Creates the draft on first call. Pass the draft `Version` you last saw as `If-Match`; a mismatch returns 409, signalling a concurrent edit from another client — preserve the local edit and reconcile.

PUT
/v1/tenants/{tenant}/agents/{agent}/revisions/{revision}/draft
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.

revision*string

The base revision the draft forks from.

tenant*string

The tenant identifier

The new draft head — the current authoring state.

comment?string|null
definition*

The semantic configuration of a standalone Agent. It intentionally has no graph step type, identifier, name, edge, or boundary-node fields.

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

Response Body

curl -X PUT "https://api.fruxon.com/v1/tenants/string/agents/string/revisions/string/draft" \  -H "Content-Type: application/json" \  -d '{    "definition": {}  }'
{
  "agentId": "string",
  "baseRevision": 0,
  "version": 0,
  "historyCursor": 0,
  "canUndo": false,
  "canRedo": false,
  "updatedAt": 0,
  "headData": {
    "comment": "string",
    "definition": {
      "description": "string",
      "provider": {
        "providerId": "string",
        "model": "string",
        "parameters": {},
        "builtInTools": [],
        "tenantConfigId": null
      },
      "systemPrompt": {
        "template": "string"
      },
      "userPrompt": {
        "template": "string"
      },
      "tools": [],
      "skills": [],
      "sessionConfig": {
        "enabled": false,
        "maxTurns": null,
        "summarizeOverflow": false,
        "windowReserve": 0,
        "maxToolResponseTokens": 25000,
        "enableSearchTool": false,
        "enableResultProjection": null,
        "enableTicketManagement": false,
        "enableSupportCases": false,
        "supportCaseProfileEnabled": false,
        "captureSystemPromptInTrace": false,
        "deferVolatilePromptToHistoryTail": false
      },
      "memoryConfig": {
        "enabled": false,
        "maxAutoInject": 0
      },
      "assetConfig": {
        "enabled": false,
        "assetIds": []
      },
      "maxToolLoops": 0,
      "allowedSecretIds": [
        "00000000-0000-0000-0000-000000000000"
      ],
      "judge": {
        "enabled": false,
        "rubric": {
          "metrics": [],
          "customInstructions": null,
          "referenceAnswer": null,
          "includeToolTranscript": false
        },
        "providerOverride": null,
        "failureMode": "UNSPECIFIED",
        "passThreshold": null,
        "failureMessage": "string",
        "samples": 0,
        "maxRetries": 0,
        "sampleRate": 0
      },
      "delegation": {
        "enabled": false
      },
      "network": {
        "enabled": false
      },
      "escalation": {
        "enabled": false
      },
      "pipelines": {
        "enabled": false,
        "bindings": []
      },
      "asyncExecution": {
        "mode": "UNSPECIFIED"
      },
      "outputContract": {
        "format": "UNSPECIFIED",
        "schema": "string"
      }
    },
    "parametersMetadata": [
      {
        "name": "string",
        "index": 0,
        "type": "UNSPECIFIED",
        "typeName": "UNSPECIFIED",
        "integerRange": null,
        "floatRange": null,
        "options": null,
        "asset": null,
        "displayName": "string",
        "description": "string",
        "required": false,
        "secret": false,
        "secretResolvable": false,
        "defaultValue": "string",
        "jsonSchema": null,
        "uiHint": null,
        "rules": []
      }
    ],
    "integrationSlots": [
      {
        "id": "00000000-0000-0000-0000-000000000000",
        "integrationId": "string",
        "displayName": "string",
        "tenantConfigId": "00000000-0000-0000-0000-000000000000"
      }
    ],
    "integrationBindings": {},
    "assets": [
      {
        "id": "string"
      }
    ],
    "slots": [
      {
        "name": "string",
        "displayName": "string",
        "requiredKind": "UNSPECIFIED"
      }
    ]
  },
  "history": [
    {
      "seqNo": 0,
      "contentHash": "string",
      "pinned": false,
      "label": "string",
      "createdAt": 0
    }
  ]
}
Empty
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
}