conduyt_update_contact
Update an existing contact's name, email, phone, company, status, timezone, and custom fields. Merge custom field values while leaving omitted keys unchanged.
Instructions
Update an existing contact's fields — name, email, phone, company, custom fields. customFields merge into existing values (omit a key to leave it unchanged).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Contact UUID | |
| No | Updated email | ||
| phone | No | Updated phone | |
| source | No | Correct the lead's first-touch source (normally first-write-wins and set at creation — update only to FIX bad attribution). Pass null to clear. | |
| company | No | Updated company name | |
| lastName | No | Updated last name | |
| timezone | No | IANA timezone override (e.g. America/Denver); pass null to clear the override and re-derive from ZIP → area code → state | |
| firstName | No | Updated first name | |
| customFields | No | Structured custom-field values to merge, keyed by field key. Omit a key to leave it unchanged. | |
| masterStatus | No | Lifecycle status of the LEAD (master record), distinct from any deal's status: 'open' (default), 'won', 'lost', 'abandoned', 'disqualified', or an account-defined custom status. A terminal status (won/lost/abandoned/disqualified) SILENCES all outbound automations for this contact — drips, sequences, and scheduled sends stop. Use conduyt_get_lifecycle_settings to see the account's configured statuses. | |
| custom_fields | No | Alias for customFields (snake_case). Provide only one of customFields / custom_fields. |