Skip to main content
PUT
Update company
Required scope: CRM_WRITE

Partial update

This endpoint performs a partial update — only the fields you include in the request body are modified. Omitted fields are left unchanged. All fields from the create endpoint are accepted and optional. custom_attributes is accepted too. Only the keys you send change.

Custom attributes

custom_attributes sets the values of your company attributes. Create the attribute first, then use its key here.
  • Send null for a key to clear its value.
  • Keys you leave out are not changed. {}, or leaving out custom_attributes, changes nothing.
  • An unknown or archived key returns 400 CUSTOM_ATTRIBUTE_KEY_UNKNOWN. A value of the wrong type returns 400 CUSTOM_ATTRIBUTE_VALUE_INVALID. In both cases param is custom_attributes.<key>.
  • The whole request is validated before anything is written, so a rejected request changes nothing.
  • The response always includes custom_attributes, {} when the company has none. Archived attributes and empty values are left out.
  • Values are also synced to your connected HubSpot and Attio. A value on an attribute that is synced from a CRM can be overwritten by the next CRM sync.
  • Teams on the legacy contact model get 404 TEAM_NOT_FOUND.

Example

This sets ping_pong_level and clears renewal_date. Any other custom attribute is untouched.

Authorizations

Authorization
string
header
required

Path Parameters

id
string
required

Company ID (e.g., "com-xyz789")

Example:

"com-xyz789"

Body

application/json

Request body for updating a company. Only provided fields will be updated.

name
string | null

Company name

website
string | null

Company website URL

industry
string | null

Industry sector

custom_attributes
object | null

Values for the company's custom attributes, keyed by attribute key. TEXT takes a string, NUMBER a finite JSON number (numeric strings are rejected), BOOLEAN a JSON boolean, DATE a YYYY-MM-DD string or ISO datetime, and DROPDOWN an option key or label (case-insensitive). Send null to clear a value; keys you omit are left untouched, and {} or omitting the field changes nothing. An unknown or archived key, or a value of the wrong type, rejects the whole request with CUSTOM_ATTRIBUTE_KEY_UNKNOWN or CUSTOM_ATTRIBUTE_VALUE_INVALID.

Example:

Response

Company updated

data
object

A company in the CRM