update_contact
Update a contact's profile fields, tags, or custom fields. Depending on the organization's settings, this either executes immediately or files a proposal for approval; the response status field says which happened.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| bio | No | New biography. | |
| org | No | Organization slug. Only needed when you belong to multiple organizations; must be one returned by list_my_orgs. | |
| tags | No | Replacement list of free-text tags for the contact. | |
| type | No | The contact's type/category. | |
| phone | No | New phone number. | |
| rating | No | A numeric rating/score for the contact. | |
| status | No | The contact's status. 'archived' hides them; this is reversible. | |
| company | No | New company. | |
| eventId | Yes | Event id, as returned by list_events. | |
| website | No | New personal website URL. | |
| jobTitle | No | New job title. | |
| lastName | No | New last name. | |
| location | No | New location. | |
| contactId | Yes | The contact id to update. | |
| firstName | No | New first name. | |
| request_id | Yes | Client-generated unique id for this write (e.g. a UUID). Retries with the same request_id return the original executed or proposed outcome instead of creating a duplicate. Never reuse a request_id for different arguments. | |
| socialLinks | No | The contact's social profile links. | |
| customFields | No | Key→value map of custom fields. Only include keys you want to add or change; existing custom fields are preserved (send a key with value null to remove it). You may key each entry by the field's display name (e.g. 'Portal enabled') or its stored key, the server matches it to the correct custom field, so you do NOT need to guess the exact snake_case key. Values may be strings, numbers, or booleans. Reading the record first (search_contacts / list_sessions / list_sponsors) shows the custom fields already set. | |
| expertiseAreas | No | Replacement list of the contact's areas of expertise. |