> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.vapi.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.vapi.ai/_mcp/server.

# Call timeout settings

> Configure silence and maximum-duration timeouts for assistants, distinguish inactivity from total call duration, and troubleshoot timeout call endings.

Call timeout settings control when an assistant ends a silent or long-running call. Use them to close inactive calls and set a hard limit on total call duration.

## How call timeouts work

**Silence Timeout** ends a call after the configured period of inactivity. **Maximum Duration** ends a call when its total duration reaches the configured limit, even if the conversation is active.

[`call.timeElapsed` hooks](/assistants/assistant-hooks#example-trigger-actions-at-a-specific-time) can warn the user or begin wrapping up before **Maximum Duration**. The hooks do not replace or extend the hard duration limit.

## Configure via Dashboard

#### Select an assistant

Open the [Dashboard](https://dashboard.vapi.ai/assistants). Select **Assistants**, then select the assistant you want to configure.

#### Open Call Timeout Settings

Select the **Advanced** tab, then locate **Call Timeout Settings**.

#### Set the silence timeout

Set **Silence Timeout** from 5 to 3,600 seconds.

#### Set the maximum duration

Set **Maximum Duration** from 10 to 43,200 seconds.

#### Publish the assistant

Select **publish** in the unsaved-changes message to apply the update.

## API fields

Use these fields when you create or update an assistant through the API:

| Dashboard setting    | API field                                                                                | Behavior                                                                                                                    |
| -------------------- | ---------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| **Silence Timeout**  | `silenceTimeoutSeconds`                                                                  | Ends the call after the configured number of seconds without activity.                                                      |
| **Maximum Duration** | [`maxDurationSeconds`](/api-reference/assistants/create#request.body.maxDurationSeconds) | Ends the call after the configured total number of seconds. The allowed range is 10–43,200 seconds. Default is 600 seconds. |

This example ends a call after 30 seconds of inactivity or 10 minutes of total call time:

```json
{
  "silenceTimeoutSeconds": 30,
  "maxDurationSeconds": 600
}
```

> **Note**
>
> The current generated schema for regular assistants does not state a minimum
> or default for `silenceTimeoutSeconds`. The Dashboard accepts values from 5
> to 3,600 seconds.

## Troubleshoot call endings

Calls that end because of timeout settings are expected call endings, not call errors.

| Ended reason            | What happened                                              | What to check                                                                               |
| ----------------------- | ---------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
| `silence-timed-out`     | The call reached `silenceTimeoutSeconds` without activity. | Increase **Silence Timeout** if active calls end during normal pauses.                      |
| `exceeded-max-duration` | The call reached `maxDurationSeconds`.                     | Increase **Maximum Duration**, or use `call.timeElapsed` hooks to wrap up before the limit. |

See [call end reasons](/calls/call-ended-reason) for the complete list of ended reasons. For additional diagnostic guidance, see [Troubleshoot call errors](/calls/troubleshoot-call-errors).

## Related

* [Assistant hooks](/assistants/assistant-hooks)
* [Call end reasons](/calls/call-ended-reason)
* [Troubleshoot call errors](/calls/troubleshoot-call-errors)