# Pause every agent that talks to customers

URL: /agents/pause-customer-facing-agents · Id: `guide:pause-customer-facing-agents`

> Stop every agent that answers customers in one sentence; pending Actions hold, new work queues, and nothing is lost.

One sentence stops every [Agent](/business/nouns/agent) seated in a [Role](/business/nouns/role) that answers customers. Their pending [Actions](/business/nouns/action) hold, new [Tasks](/business/nouns/task) queue in each seat, and [resume](/business/nouns/agent/resume) picks up where they stopped.

Needs: [Agent](/business/nouns/agent)

**Before it runs**

- You leave the chat: Never: it all happens in the chat.

## What you get
- 1 pause on every agent that talks to customers (Agent)
- 1 hold on everything those agents started and had not finished (Action)
- 1 short holding reply to each customer who writes, from your support address (Message)
- 1 new requests kept in line until you turn the agents back on (Task)
- 1 note of each pause and your reason, on the record (Event)

## Your agent does
**For agents**

- Guide: `guide:pause-customer-facing-agents`, status `live`. Page: [/agents/pause-customer-facing-agents.md](/agents/pause-customer-facing-agents.md).
- Approval: none. Run it when the founder asks.
- Leaves the chat: never.
- Needs first: [Agent](/business/nouns/agent).
- Run: call the steps in order, each through the API, SDK, CLI or MCP tab below; a later step passes the `$id` an earlier one returns. Each value marked example is the sample business’s: pass the founder’s own.

| Step | Verb | Inputs (type, required, this guide’s value) | Returns |
| --- | --- | --- | --- |
| 1 | [`Agent.pause`](/business/nouns/agent/pause) (`verb:Agent.pause`) | `customerFacing` boolean: example `true`; `reason` text, required: example `"Wrong refund policy in replies since 9:40."` | `agents` Agent[] |

Returns: the last call answers with `agents` and its `action`, whose `status` is `done`, `pending` (waiting on an Approval or a Worker), `failed`, `canceled` or `refused`:

```json
{
  "api": "https://api.sb/leaseline.app",
  "agents": [
    {
      "$id": "https://api.sb/leaseline.app/agents/agent_1",
      "$type": "Agent",
      "status": "paused"
    }
  ],
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/action_1",
    "operation": "Agent.pause",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/action_1"
  }
}
```

Next: offer “Pause only the Customer Team”, or “Resume Susan once the policy is fixed”.

Calls: `Agent.pause`

Ask:

```text
Pause every agent that talks to customers.
Stop all customer-facing agents now.
Something is wrong, stop the agents replying to customers.
```

API:

```bash
# Agent.pause
curl -X POST https://api.sb/leaseline.app/agents/pause \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"reason":"Wrong refund policy in replies since 9:40.","customerFacing":true}'
```

SDK:

```ts
import { $ } from 'startup-builder'

await $.Agent.pause({ reason: 'Wrong refund policy in replies since 9:40.', customerFacing: true })
```

CLI:

```bash
npx startup-builder do Agent.pause --json '{"reason":"Wrong refund policy in replies since 9:40.","customerFacing":true}'
```

MCP:

```json
{
  "name": "do",
  "arguments": {
    "code": "return await $.Agent.pause({ reason: 'Wrong refund policy in replies since 9:40.', customerFacing: true })"
  }
}
```

## Change it
- Pause only the Customer Team.
- Resume Susan once the policy is fixed.
- Retire this agent and put another in the seat.

## Under the hood
- Systems: [Workforce](/systems/workforce), [Work queue](/agents/work-queue), [Support](/systems/support)
- Nouns: [Agent](/business/nouns/agent), [Role](/business/nouns/role), [Action](/business/nouns/action), [Task](/business/nouns/task)
- Events: [`Agent.paused`](/business/events/Agent.paused)