> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getnexor.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Update incoming calls

> Set who answers an agent's calls during business hours and after hours: AI only, AI first and your team when asked, your team first then the AI after 1 to 6 rings, or your team only. Requires confirm: true.

Read the current settings with [Get incoming calls](https://docs.getnexor.ai/docs/en/api/inbound-router/get-inbound-calls.md) first, and send the full settings back with `"confirm": true`. MCP keys need `numbers:write`.

## Modes per time slot

| `slots` value | Who answers |
| - | - |
| `ai_only` | The AI. Asking for a person does not transfer the call. |
| `ai_first_team_when_asked` | The AI, and it transfers to `team_number` when the caller asks for a person. |
| `human_first_then_ai` | `team_number` rings first. The AI answers after `rings` rings (1 to 6, default 4) if nobody takes the call. |
| `team_only` | `team_number`, without the AI. |

Business hours are the Contactability hours of the task where calls start. With no hours set, every call uses `in_hours`.

## Set different modes by hours

```json theme={null}
{
  "mode": "ai_human",
  "number_id": "44444444-4444-4444-8444-444444444444",
  "transfer_to": "+56912345678",
  "slots": { "in_hours": "human_first_then_ai", "after_hours": "ai_first_team_when_asked" },
  "team_number": "+56912345678",
  "rings": 4,
  "confirm": true
}
```

* Any slot other than `ai_only` needs `team_number`, with `+` and the country code. It cannot be the agent's own number.
* Set `mode` the way the dashboard does: `ai_human` with `transfer_to` equal to `team_number` when a slot is `ai_first_team_when_asked`, `forward` with `transfer_to` when both slots are `team_only`, and `ai` otherwise.
* `human_first_then_ai` and `team_only` need a number that can ring an outside phone. Otherwise the response is 422 `call_forwarding_provider_unsupported`.

Without `slots`, `mode` applies at all times. `off` stops incoming calls and keeps the number assigned to the agent.

## After saving

The response comes back with `status: "pending"`. Calls pick up the change within a minute or two; read back until `status` is `ready`. A `pending` or `error` status is not active yet.

Responses to these writes include `saved_in_agent_draft`. It is `false` when the change was applied to the live agent (every customer API key and MCP key). It is `true` only when NexorGPT saved the change to the agent's draft; that change reaches calls when the draft is published.

A 409 `group_call_settings_number_in_use` means another agent already receives calls on this number. Each number answers calls for one agent: remove it from the other agent first, or use another number.


## API Specification

The full API specification for this endpoint is available in the [documentation index](https://docs.getnexor.ai/llms.txt).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.