# PUT /lead-gen/saved-searches/:id

**Resource:** [Lead Generation](./lead-gen.md)  
**Scopes:** `lead-gen:write`  
**Write operation:** yes

Partial update a saved search configuration. Only provided fields are updated.

## Parameters

| Name | In | Type | Required | Description |
|------|----|------|----------|-------------|
| `id` | path | uuid | yes | Saved search UUID |
| `name` | body | string | no | New name |
| `search_query` | body | string | no | Updated search query |
| `location` | body | string | no | Updated location |
| `max_results` | body | number | no | Updated max results |
| `radius_km` | body | number | no | Updated radius in km |
| `default_pipeline_id` | body | uuid | no | Updated default pipeline UUID |
| `default_stage_id` | body | uuid | no | Updated default stage UUID |
| `default_tags` | body | string[] | no | Updated default tags |
| `enrich_emails` | body | boolean | no | Updated email enrichment default. When true, all runs auto-set scrape_contacts=true (always async, forces website="withWebsite", email guarantee). |

## Request example

```bash
curl -X PUT \
  "https://api.trustpager.com/functions/v1/api/v1/lead-gen/saved-searches/7d05612a-..." \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "Sydney Electricians (Updated)", "max_results": 200}'
```

## Response example

```json
{
  "data": {
    "id": "7d05612a-...",
    "name": "Sydney Electricians (Updated)",
    "max_results": 200,
    "updated_at": "2026-04-17T05:00:00Z"
  }
}
```

---
Base URL: `https://api.trustpager.com/functions/v1/api/v1` — Auth: `Authorization: Bearer YOUR_API_KEY`