FruxonDocs
ApiFruxon channel

Opens a debug session against an agent.

Sandbox by default: the agent's reply is captured here and any other real send during the run is hard-blocked. Returns the new session id, which is also the conversation key for the stream / messages endpoints. The agent id alone is enough: a sandbox session is stamped with the agent's own Application and with the caller, whose own sessions the list endpoint returns. A `networkId` naming a different Application is a 400.

POST
/v1/tenants/{tenant}/fruxon/sessions
AuthorizationBearer <token>

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

In: header

Path Parameters

tenant*string

The tenant identifier

The agent to drive and the delivery mode.

agentId?string
deliveryMode?string

Sandbox (default) captures + hard-blocks; Live dispatches for real (v1 unused).

Value in"UNSPECIFIED" | "SANDBOX" | "LIVE"
networkId?string|null

The Network (Application) this debug session is scoped to — the topology the console was launched in. Every turn's run resolves this Network's deployment (escalation ladder, capabilities, operator pool) instead of the Default Network, so testing an agent "in" an Application exercises that Application's config. Optional: an agent belongs to exactly one Application, and a sandbox session is stamped with it either way. Naming a different Application is a 400.

Formatuuid
[key: string]?never

Response Body

curl -X POST "https://api.fruxon.com/v1/tenants/string/fruxon/sessions" \  -H "Content-Type: application/json" \  -d '{}'
{
  "sessionId": "string",
  "agentId": "string",
  "deliveryMode": "SANDBOX",
  "status": "OPEN",
  "networkId": "00000000-0000-0000-0000-000000000000",
  "participantId": "00000000-0000-0000-0000-000000000000",
  "title": "string",
  "turnCount": 0,
  "cost": 0,
  "createdAt": 0,
  "modifiedAt": 0
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
Empty
Empty