Rensei docs
API ReferenceWorker Protocol

FSM status transition

Drives the session FSM: `pending → claimed → running → finalizing → completed | failed | stopped` Terminal transitions trigger side effects: cost persistence, fleet quota accounting, Linear `agentActivityCreate`, claim release, inbox archival, issue lock release, and next-pending-work promotion.

POST
/api/sessions/{id}/status

Authorization

workerJwt
AuthorizationBearer <token>

Runtime JWT minted by the platform at worker registration. Three-segment dotted string. Claims include {jti, proj, org, sub (=workerId), reg, scope[]}. Use on all post-registration worker endpoints.

In: header

Path Parameters

id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/sessions/string/status" \  -H "Content-Type: application/json" \  -d '{    "workerId": "string",    "status": "pending"  }'
{
  "updated": true,
  "session": {
    "linearSessionId": "string",
    "trackerSessionId": "string",
    "issueId": "string",
    "issueIdentifier": "string",
    "providerSessionId": "string",
    "worktreePath": "string",
    "status": "pending",
    "createdAt": 0,
    "updatedAt": 0,
    "workerId": "string",
    "queuedAt": 0,
    "claimedAt": 0,
    "priority": 0,
    "promptContext": "string",
    "organizationId": "string",
    "workType": "research",
    "agentId": "string",
    "projectName": "string",
    "provider": "string",
    "totalCostUsd": 0,
    "inputTokens": 0,
    "outputTokens": 0,
    "lastToolName": "string",
    "lastToolCalledAt": 0,
    "toolCallCount": 0
  }
}
{
  "error": "Session not found"
}
{
  "error": "Session not found"
}
{
  "error": "Session not found"
}
{
  "error": "Session not found"
}