---
title: "PATCH /v2/update-live-call/{call_id}"
method: PATCH
path: "/v2/update-live-call/{call_id}"
---

# PATCH /v2/update-live-call/{call_id}

`PATCH /v2/update-live-call/{call_id}`

## Request

- Base URL: `https://api.retellai.com`
- URL: `https://api.retellai.com/v2/update-live-call/{call_id}`
- Auth: HTTP bearer

Update an ongoing call at runtime. Supports overriding dynamic variables, metadata, and the data storage setting on the running call, and controlling the live agent (inject context, trigger a response). These overrides take effect immediately on the live call; metadata and data storage setting changes are also persisted to the call record. To update a call that is no longer ongoing, use /v2/update-call/{call_id}.

## Path parameters

- `call_id` string, required

## Request body

- object
  - `fields_to_override` object: Call fields to override on the running call. Each field is applied to the live call immediately; omitted fields are left unchanged.
    - `override_dynamic_variables` object, nullable: Override dynamic variables represented as key-value pairs of strings. Setting this will override or add the dynamic variables set in the agent during the call. Only need to set the delta where you want to override, no need to set the entire dynamic variables object. Setting this to null will remove any existing override.
    - `metadata` object: An arbitrary object for storage purpose only. Overrides the metadata on the call. Size limited to 50kB max.
    - `data_storage_setting` 'everything' | 'everything_except_pii' | 'basic_attributes_only': Data storage setting for this call. Overrides the agent's default setting. "everything" stores all data, "everything_except_pii" excludes PII when possible, "basic_attributes_only" stores only metadata. Cannot be downgraded from more restrictive to less restrictive settings.
  - `call_control` object: Live agent control. At least one of `additional_context` or `trigger_response` should be supplied; an empty object is a no-op.
    - `trigger_response` boolean: Only `true` has an effect. When set, if the agent is currently speaking the response is interrupted and a new one is generated. If the agent has already finished speaking and is waiting silently for the user, the agent is nudged to produce another response. If the user is currently speaking, this field is a no-op so the agent does not talk over them. This field respects the agent's `interruption_sensitivity`: when sensitivity is `0` the agent's current speech is treated as uninterruptible, so `trigger_response` is a no-op while the agent is speaking. Omitting or setting `false` leaves the call untouched.
    - `additional_context` string: Free-form text appended to the call transcript with role "injected" and injected into the next agent response context. Must be non-empty.

## Response `200`

Live call updated successfully

- object
  - `success` boolean, required

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
- `422`: Unprocessable Content
- `500`: Internal Server Error

## Changes

- **2026-10-16** `ca41f0dbb297`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/retellai/apis/retell-sdk/changes/v2/update-live-call/:call_id/patch.md)

---

[API](https://skmtc.dev/retellai/apis/retell-sdk.md) - [All operations](https://skmtc.dev/retellai/apis/retell-sdk/llms.txt) - [OpenAPI document](https://skmtc.dev/retellai/apis/retell-sdk/revisions/e482acaa292c?raw)
