Update Account
Accounts
Update an Account
PATCH
Update Account
Every field is optional — send only what you want to change.
tags, address, and custom_fields are wholesale replacements of the column, not merges.
PATCH only ever sets fields you explicitly include with a non-null value. The patch body is built by dropping every null/omitted field before sending it to the database — so {"domain": null} does not clear the domain, it’s indistinguishable from not sending domain at all. There’s currently no way to null out a previously-set field through this endpoint.industry is a closed enum, not free text — it accepts exactly one of the AccountIndustry values, and anything else fails validation with 422. An empty string ("") is treated as unset (i.e. a no-op, per the note above), not a validation error.
lifecycle_stage is checked in application code, not just the DB. Valid values are prospect, customer, churned, inactive — anything else is rejected with 400 before the write happens (the same values are also enforced by a CHECK constraint on the table).
Auth
Requires a CRM manage scope and an active organization on the token. Any*:manage scope qualifies — in practice contacts:manage, deals:manage, companies:manage, or activities:manage.
Response
The full updated account row — every column onaccounts (id, org_id, name, domain, industry, size_range, annual_revenue, health_score, website, linkedin_url, address, tags, custom_fields, created_by, created_at, updated_at, owner_id, lifecycle_stage, notes).
Errors
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
The account's id.
Body
application/json
New name; empty/whitespace-only is rejected.
New primary domain.
One AccountIndustry enum value; blank/omitted means unset.
Available options:
Food & Beverage, Technology, Healthcare, Financial Services, Retail, Manufacturing, Professional Services, Real Estate, Education, Media & Entertainment, Transportation & Logistics, Energy, Agriculture, Construction, Hospitality & Travel, Other New company website URL.
Freeform employee-count bucket, e.g. '11-50'.
Annual revenue.
Company LinkedIn profile URL.
Freeform postal address JSON, stored as-is.
Full replacement list of tag name strings.
Full replacement JSON object of custom field values.
One of prospect, customer, churned, inactive.
Free-text notes.
Response
Successful Response