Skip to content

org_stopped

Step 6: someone used Stop all agents for the org.

HTTP 403 · permission_error · not retryable

Step 6: someone used Stop all agents for the org. Every agent key in the org gets this answer until an owner starts the agents again. It takes precedence over agent_stopped and agent_suspended. Org admin keys keep read-only access (GET) so incident response can look around; an admin-key request that changes state (POST, PUT, PATCH, DELETE) gets this code with the message “…so admin keys can only read until an owner starts them again…”. GET /v1/whoami still answers and shows "stopped": true. Console sessions aren’t affected.

On POST /v1/actions the attempt is still recorded: the action goes evaluated → denied → sealed with the stop decision (decision.source: stop), and the envelope carries the sealed action in error.action. The Ledger shows what a stopped agent tried to do. An action that waits for approval is checked again when someone approves it: if the agent or org is stopped by then, it ends denied the same way and never runs.

Ask an owner of the org. They can start the agents in Console › Settings; the server operator can run deedglass org start-all --reason "…". Agents that were stopped one by one stay stopped.

HTTP 403 · org_stopped
{
"error": {
"type": "permission_error",
"code": "org_stopped",
"message": "All agents in Acme are stopped. An owner can start them again in Console › Settings.",
"param": null,
"request_id": "req_01j9zr3m5k8q2w7x4t6v0b1c9d",
"doc_url": "https://docs.deedglass.com/errors/org_stopped"
}
}

The message is for a person and can get more exact over time: branch on type and code, never on the message.

SDK Raised as
TypeScript (@deedglass/sdk) PermissionDeniedError with code === "org_stopped"
Python (deedglass) deedglass.PermissionDeniedError with .code == "org_stopped"