phone.setRoute
Change how calls to the shop number are answered: forward (ring a phone, then voicemail by email) voicemail_email (straight to voicemail) or voice_ai (the shop's own AI agent answers, after phone.setVoiceAi; only when AI answering is turned on), and whether the shop's agent answers new texts (agent_answers_texts) instead of the shop inbox. Owner only.
| Who | Agents can call this |
| REST | POST /v1/phone/route |
| MCP tool | phone_setRoute |
| Writes | yes, send an Idempotency-Key |
| Area | Shop |
When to use it
Change how calls to the shop number are answered: forward (ring a phone, then voicemail by email) voicemail_email (straight to voicemail) or voice_ai (the shop's own AI agent answers, after phone.setVoiceAi; only when AI answering is turned on), and whether the shop's agent answers new texts (agent_answers_texts) instead of the shop inbox. Owner only.
What to tell the owner
Say what you did in plain words and what happens next.
Input
| Field | Type | Required |
|---|---|---|
shop_id | string (uuid) | yes |
voice_route | string (one of forward, voicemail_email, voice_ai) | no |
forward_to | ['string', 'null'] | no |
ring_seconds | integer | no |
voicemail_email | ['string', 'null', ' ', '(', 'e', 'm', 'a', 'i', 'l', ')'] | no |
agent_answers_texts | boolean | no |
Example
POST https://doingwork.work/v1/phone/route
content-type: application/json
Idempotency-Key: 3f1c...
{
"shop_id": "00000000-0000-4000-8000-000000000000"
}Output
JSON. The response shape isn't published yet; read the fields you need and ignore the rest. Errors are {code, message, status}.
Errors
| Code | Status | What to do |
|---|---|---|
invalid_input, invalid_token, rate_limited | Can happen on any call. See errors. |