---
title: "Update Call"
method: PATCH
path: "/calls/{call_id}"
tags: ["Calls"]
---

# Update Call

`PATCH /calls/{call_id}`

Update an existing call record by UUID.

This endpoint is designed for the voice agent to update call details after the call is created.
Requires a per-customer agent token for authentication.
The customer_id is automatically extracted from the agent token.

All fields are optional - only provided fields will be updated.
The call must belong to the customer associated with the agent token.

Returns:
- **success**: True if the call was updated successfully
- **call_id**: The UUID of the updated call record

## Path parameters

- `call_id` string, uuid, required

## Request body

- UpdateCallRequest — Request to update an existing call record. All fields are optional.
  - `phone_number` string, nullable — Phone number associated with the call
  - `duration_seconds` integer, nullable — Duration of the call in seconds
  - `case_id` string, uuid, nullable — Case ID associated with the call
  - `forwarded_call_sid` string, nullable — Forwarded Twilio CallSid (for SIP forwarding)
  - `session_id` string, nullable — Unique session identifier from voice agent
  - `end_time` string, date-time, nullable — When the call ended
  - `caller_name` string, nullable — Name of the caller if collected
  - `caller_email` string, nullable — Email of the caller if collected
  - `has_error` boolean, nullable — Whether any errors occurred during the call
  - `error_description` string, nullable — Description of the error if one occurred
  - `caller_client_status` string, nullable — Client status of the caller: 'existing_client', 'new_client', or null
  - `transcript_realtime` RealtimeTranscriptItem[], nullable — Real-time transcript as array of conversation items
    - `speaker` string, nullable — Speaker identifier: 'user' or 'assistant'
    - `text` string, nullable — The transcribed text for this turn
    - `timestamp` string, date-time, nullable — Timestamp of when this transcript item occurred
    - `start_ms` integer, nullable — Start offset in recording-clock milliseconds
    - `end_ms` integer, nullable — End offset in recording-clock milliseconds
  - `transferred` boolean, nullable — Whether the call was transferred live to a human
  - `transfer_destination_number` string, nullable — E.164 number the call was transferred to
  - `hit_voicemail` boolean, nullable — Whether an outbound call reached voicemail
  - `hung_up_before_connect` boolean, nullable — Whether the caller hung up before the call connected
  - `errors` CallError[], nullable — Array of errors from voice agent
    - `severity` string, required — Error severity: 'warning' or 'error'
    - `text` string, required — Error message text

## Response `200`

Successful Response

- UpdateCallResponse — Response after updating a call record.
  - `success` boolean, required — Whether the call was updated successfully
  - `call_id` string, uuid, required — The ID of the updated call record

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/openintake/apis/fastapi.md) · [All operations](https://skmtc.dev/openintake/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/openintake/fastapi/revisions/4a81645b59f6/schema)
