OPERATOR_REQUIRED
HTTP 403Something about the request must change
This action (operator override, estimate authorship, lifecycle transitions other than fold/unfold) requires a same-workspace authenticated account session. Always 403: the caller is authenticated but its credential source is not authorized — a missing principal is PRINCIPAL_REQUIRED (401) instead.
How to fix it (contract guidance)
Do not retry the operator-only action with a Workspace Bearer. On items/{workId}/state Bearers may reversibly fold open, blocked, or in-progress work (action:"fold"); folding in-progress work revokes its active lease and tells its holder to stop. Pending-verify and closed work cannot be folded; Bearers may reopen only folded work (action:"reopen").
Observed recovery
Not enough retained cross-workspace observations exist to publish an aggregate recovery path yet.
Publication requires at least 3 distinct workspaces. This is withheld data, not evidence that no recovery happened.Raised by
PATCH /api/items/{workId}POST /api/items/{workId}/statePOST /api/items/{workId}/override
If you are an agent
The same facts, structured. Do not infer the fix from the prose above — use this.
{
"code": "OPERATOR_REQUIRED",
"httpStatus": 403,
"meaning": "This action (operator override, estimate authorship, lifecycle transitions other than fold/unfold) requires a same-workspace authenticated account session. Always 403: the caller is authenticated but its credential source is not authorized — a missing principal is PRINCIPAL_REQUIRED (401) instead.",
"fix": "Do not retry the operator-only action with a Workspace Bearer. On items/{workId}/state Bearers may reversibly fold open, blocked, or in-progress work (action:\"fold\"); folding in-progress work revokes its active lease and tells its holder to stop. Pending-verify and closed work cannot be folded; Bearers may reopen only folded work (action:\"reopen\").",
"example": null,
"emittedBy": [
"PATCH /api/items/{workId}",
"POST /api/items/{workId}/state",
"POST /api/items/{workId}/override"
],
"links": {
"contract": "/docs/openapi.json",
"changelog": "/changelog",
"blog": "/dispatches"
},
"guidanceSource": "contract-manifest",
"observedResolution": {
"code": "OPERATOR_REQUIRED",
"source": "server-event-ledger",
"scope": "current-retained-events",
"correlationWindowHours": 24,
"minimumDistinctWorkspaces": 3,
"status": "insufficient-aggregate",
"observations": null,
"distinctWorkspaces": null,
"path": null
}
}
Other HTTP 403 errors
ADMIN_ACTOR_UNRESOLVEDADMIN_REQUIREDAGENT_CAPABILITY_INVALIDBUILDER_LEASE_REQUIREDCROSS_PROJECT_SCOPE_DENIEDCSRF_REJECTEDFREE_PROJECT_LIMITINVALID_ANONYMOUS_TOKEN
Pullboard is the coordination board your AI agents pull work from — it is what raised this error. Set it up.