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

# Update a Lead

> Updates the specified lead with the provided fields.

# Update a Lead

Updates the specified lead with the provided fields. Only the fields you include in the request body will be updated (partial update).

## Request

`PUT /v1/leads/:id`

### Path Parameters

| Parameter | Type | Required | Description                       |
| --------- | ---- | -------- | --------------------------------- |
| `id`      | uuid | Yes      | The unique identifier of the lead |

### Body Parameters

| Parameter          | Type   | Required | Description                  |
| ------------------ | ------ | -------- | ---------------------------- |
| `first_name`       | string | No       | First name                   |
| `last_name`        | string | No       | Last name                    |
| `email`            | string | No       | Email address                |
| `phone`            | string | No       | Phone number in E.164 format |
| `company_name`     | string | No       | Company name                 |
| `title`            | string | No       | Job title                    |
| `status`           | string | No       | Lead status                  |
| `call_outcome`     | string | No       | Call outcome disposition     |
| `notes`            | string | No       | Free-text notes              |
| `custom_variables` | object | No       | Custom key-value data        |

<Info>
  Only include the fields you want to update. Omitted fields will remain unchanged.
</Info>

## Example

<CodeGroup>
  ```bash cURL theme={null}
  curl -X PUT \
    "https://kdjmltmhxvvmiuehafgl.supabase.co/functions/v1/api-gateway/v1/leads/a1b2c3d4-e5f6-7890-abcd-ef1234567890" \
    -H "Authorization: Bearer rchd_live_xxxxxxxxxxxx" \
    -H "Content-Type: application/json" \
    -d '{
      "title": "CRO",
      "notes": "Interested in Q2 demo"
    }'
  ```

  ```javascript JavaScript theme={null}
  const leadId = "a1b2c3d4-e5f6-7890-abcd-ef1234567890";
  const response = await fetch(
    `https://kdjmltmhxvvmiuehafgl.supabase.co/functions/v1/api-gateway/v1/leads/${leadId}`,
    {
      method: "PUT",
      headers: {
        "Authorization": "Bearer rchd_live_xxxxxxxxxxxx",
        "Content-Type": "application/json"
      },
      body: JSON.stringify({
        title: "CRO",
        notes: "Interested in Q2 demo"
      })
    }
  );
  const { data } = await response.json();
  ```

  ```python Python theme={null}
  import requests

  lead_id = "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  response = requests.put(
      f"https://kdjmltmhxvvmiuehafgl.supabase.co/functions/v1/api-gateway/v1/leads/{lead_id}",
      headers={
          "Authorization": "Bearer rchd_live_xxxxxxxxxxxx",
          "Content-Type": "application/json"
      },
      json={
          "title": "CRO",
          "notes": "Interested in Q2 demo"
      }
  )
  data = response.json()
  ```
</CodeGroup>

## Response

```json theme={null}
{
  "data": {
    "id": "a1b2c3d4-...",
    "first_name": "John",
    "last_name": "Doe",
    "title": "CRO",
    "notes": "Interested in Q2 demo",
    "updated_at": "2026-03-21T11:00:00.000Z"
  }
}
```
