# Escalate hard support questions to me

URL: /workflows/guides/escalate-hard-support-questions-to-me · Id: `guide:escalate-hard-support-questions-to-me`

> Say "escalate hard support questions to me" and every message gets a reply from the record within an hour, or comes to you.

Every message gets an answer from the [Customer](/business/nouns/customer)'s own records within one business hour, and anything the agent cannot answer in time comes to you. You read the hard questions, not the inbox.

Needs: [Customer](/business/nouns/customer)

**Before it runs**

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

## What you get
- 1 answer to each message from the Customer’s own records, within one business hour (Conversation)
- 1 Task to you for any message the agent cannot answer in time (Task)
- 1 refunds handed to the Billing Specialist and privacy requests to the Privacy Officer (Conversation)
- 1 Issue for the Product Team when the cause is a bug (Issue)

## Your agent does
**For agents**

- Guide: `guide:escalate-hard-support-questions-to-me`, status `live`. Page: [/workflows/guides/escalate-hard-support-questions-to-me.md](/workflows/guides/escalate-hard-support-questions-to-me.md).
- Approval: none. Run it when the founder asks.
- Leaves the chat: never.
- Needs first: [Customer](/business/nouns/customer).
- 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 | [`Process.enable`](/business/nouns/process/enable) (`verb:Process.enable`) | `process` Process (an id), required: example `"process_support"` | `process` Process |
| 2 | [`Setting.update`](/business/nouns/setting/update) (`verb:Setting.update`) | `id` string, required: example `"setting_1"`; `key` string: example `"support.firstResponse"`; `value` json: example `"1h"` | `setting` Setting |

Returns: the last call answers with `setting` 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",
  "setting": {
    "$id": "https://api.sb/leaseline.app/settings/setting_1",
    "$type": "Setting",
    "key": "support.firstResponse",
    "value": "1h"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/action_1",
    "operation": "Setting.update",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/action_1"
  }
}
```

Next: offer “Let me approve every reply for the first two weeks”, or “Answer within 15 minutes during business hours”.

Calls: `Process.enable` → `Setting.update`

Ask:

```text
Escalate hard support questions to me.
Send me the support questions the agent cannot answer.
Answer support within an hour.
```

API:

```bash
# 1. Process.enable
curl -X POST https://api.sb/leaseline.app/processes/process_support/enable \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"

# 2. Setting.update
curl -X PATCH https://api.sb/leaseline.app/settings/setting_1 \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"value":"1h","key":"support.firstResponse"}'
```

SDK:

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

await $.Process.enable({ process: 'process_support' })
await $.Setting.update({ id: 'setting_1', value: '1h', key: 'support.firstResponse' })
```

CLI:

```bash
npx startup-builder do Process.enable --json '{"process":"process_support"}'
npx startup-builder do Setting.update --json '{"id":"setting_1","value":"1h","key":"support.firstResponse"}'
```

MCP:

```json
{
  "name": "do",
  "arguments": {
    "code": "await $.Process.enable({ process: 'process_support' })\nreturn await $.Setting.update({ id: 'setting_1', value: '1h', key: 'support.firstResponse' })"
  }
}
```

## Change it
- Let me approve every reply for the first two weeks.
- Answer within 15 minutes during business hours.
- Send billing questions straight to me.

## Under the hood
- Systems: [Support](/systems/support), [Knowledge base](/systems/knowledge-base), [Projects](/code/systems/projects)
- Nouns: [Conversation](/business/nouns/conversation), [Thread](/business/nouns/thread), [Task](/business/nouns/task), [Issue](/business/nouns/issue), [Setting](/business/nouns/setting)
- Events: `Conversation.created`, [`Conversation.answered`](/business/events/Conversation.answered), [`Conversation.escalated`](/business/events/Conversation.escalated)

The [Support](/workflows/processes/support) [Process](/business/nouns/process) answers as the [Customer Lead](/agents/customer/customer-lead). Its answer step times out at the first-response target and becomes a [Task](/business/nouns/task) for you, and the clock stops while it waits on the Customer. To let the agent answer only after your review, say "review agent replies before they go out"; that sets `support.agentAnswers` to `false`.