Skip to main content
Version: Next

Agent Processes API

Use the Agent Processes API to deploy reusable Agent Process definitions and retrieve the latest or versioned definitions by key.

Operations​

MethodPathSummary
GET/agent-processesGet latest agent process definitions
POST/agent-processesDeploy an agent process definition
GET/agent-processes/{key}Get latest agent process definition by key
GET/agent-processes/{key}/versionsGet all versions for an agent process key

POST /agent-processes​

Deploys a new Agent Process definition version.

Validation rules:

FieldRequirement
Root bodyMust be a JSON object.
resourceTypeOptional, but when present it must be AgentProcess.
goalRequired and must be a non-empty string.
stepsOptional, but when present it must be an array.
availableToolsOptional, but when present it must be an array.
providerOptional, but when present it must be an object with non-empty providerId and modelName.

Key resolution rules:

  1. The backend uses processKey when provided.
  2. Otherwise it falls back to key.
  3. Otherwise it slugifies processName.

Example request​

curl -X POST "http://localhost:8080/agent-processes" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"resourceType": "AgentProcess",
"processKey": "customer-support-resolution",
"processName": "Customer Support Resolution",
"goal": "Resolve customer complaints with an auditable AI-assisted decision.",
"description": "Reusable agent definition for complaint intake and resolution planning.",
"availableTools": ["CRM", "Knowledge Base", "Refund Approval BPMN"],
"participants": ["Planner Agent", "Supervisor Agent"],
"provider": {
"providerId": "gemini",
"modelName": "gemini-3.5-flash",
"credentialRef": "$GEMINI_API_KEY"
},
"steps": [
{
"id": "collect_context",
"title": "Collect case context",
"status": "ready"
}
]
}'

Example response​

Status: 200 OK

{
"id": 7,
"key": "customer-support-resolution",
"processName": "Customer Support Resolution",
"description": "Reusable agent definition for complaint intake and resolution planning.",
"definitionJson": "{\"resourceType\":\"AgentProcess\",\"processKey\":\"customer-support-resolution\",\"goal\":\"Resolve customer complaints with an auditable AI-assisted decision.\"}",
"version": 3,
"createdAt": "2026-06-25T09:14:22.481"
}

Response fields:

FieldMeaning
idNumeric database ID for this stored definition version.
keyStable agent process key used by BPM AgentProcessCall nodes.
processNameDisplay name captured at deployment time.
descriptionStored summary/description captured at deployment time.
definitionJsonOriginal deployed definition serialized as JSON text.
versionIncrementing version for the same key.
createdAtBackend timestamp when this definition version was stored.

GET /agent-processes​

Returns the latest stored version for each agent process key.

Example request​

curl -X GET "http://localhost:8080/agent-processes" \
-H "Authorization: Bearer $TOKEN"

GET /agent-processes/{key}​

Returns the latest stored version for one agent process key, or 404 when the key does not exist.

Example request​

curl -X GET "http://localhost:8080/agent-processes/customer-support-resolution" \
-H "Authorization: Bearer $TOKEN"

GET /agent-processes/{key}/versions​

Returns all stored versions for one agent process key, ordered by backend repository rules.

Example request​

curl -X GET "http://localhost:8080/agent-processes/customer-support-resolution/versions" \
-H "Authorization: Bearer $TOKEN"