Questions · Updated 2026-09-28

What does kill_switch_active mean?

kill_switch_active means a person paused this API key with POST /limits/keys/{id}/kill, or every key on the account with POST /limits/kill-all, and the send was refused. Only a person resumes it, with POST /limits/keys/{id}/resume or POST /limits/resume-all; the fix says to read GET /trust/standing for why.

kill_switch_active means a person paused the key you are sending with, and the send was refused. The pause was POST /limits/keys/{id}/kill on this key or POST /limits/kill-all on every key of the account, and only a person undoes it, with POST /limits/keys/{id}/resume or POST /limits/resume-all. retryable is false. The error catalogue message is "This API key has been paused with the kill switch."

Why it was paused

The catalogue fix says "Read GET /trust/standing for why it was paused. Only a person signed in to the console can resume it; the paused key cannot resume itself." GET /trust/standing reports the account's trust standing, with state, reasons and history; a kill switch is not part of that standing. The reason for the pause travels in the refusal when the person gave one to the kill call: the message then reads "This API key is paused:" followed by that reason for one key, or "This account is paused:" followed by it when the whole account was paused. GET /limits/keys/{id} returns paused, paused_at and paused_reason for the key, and Budgets and the kill switch says the pause and the resume are both written to the audit log with the reason given, so GET /audit-log shows who pressed it. The event is agent.killed.

curl -sS -X GET https://api.agentisend.com/limits/keys/9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42 \
  -H "Authorization: Bearer $AGENTISEND_API_KEY"
200
{
  "api_key_id": "9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42",
  "budget_per_period": 1,
  "consumed_in_period": 1,
  "consumed_in_window": 1,
  "paused": true,
  "paused_at": "2026-09-04T09:14:00Z",
  "paused_reason": "string",
  "period": "hourly"
}
Response

What resumes it

The summary of POST /limits/keys/{id}/resume is "Undo the kill switch. A person signed in to the console does this; budgets and ceilings are unchanged." The summary of POST /limits/resume-all is "Undo the global kill switch. A person signed in to the console does this; budgets and ceilings are unchanged, and a key killed on its own stays paused." There are two switches, and resuming all lifts only the account-wide one. No API key can call either: a full_access key, the one that pressed the switch included, is answered human_action_required, and a sending_access key is answered restricted_api_key before that check. Over MCP, get_kill_switch_state reads the state and no tool resumes.

While the key is paused

retryable is false, so stop sending. Waiting does not lift a kill switch, and there is no request a key can make that does. Do not move to another key to keep going: when the account-wide switch is on every key is paused, and a person turned it on deliberately. Report the pause and its message to whoever runs the account. Sends accepted before the pause are not lost; the guide says queued sends stay queued.

trust_paused and agent_budget_exceeded also stop sends, for other reasons. trust_paused is the trust system's pause, and its fix is POST /trust/appeal, not a resume. agent_budget_exceeded is a ceiling the key reached on its own, at a number a person chose in advance; the kill switch is a person stopping it now, at whatever count it is on.

Next