Custom fields
Entities that support custom fields use thecf_ prefix. Send values as top-level keys on create and update; responses return the same keys on the resource object — not inside a customFields property.
Supported resources
Naming convention
Custom field keys are derived from the field label in Heffl:- Lowercase the label
- Replace spaces with underscores
- Prefix with
cf_
Example — create
Example — update
On update, custom fields are merged with existing values. Omittedcf_* keys are left unchanged.
Responses
Custom field values appear as top-levelcf_* keys on the resource (in list data items and on create/update/get responses). There is no customFields object in API v2.
null when unset (especially on list rows).
Validation
- Only documented fields and
cf_*keys are allowed — unknown fields return a validation error - Field types must match the custom field definition in your workspace (text, number, date, etc.)
Discover field keys via API
List definitions (key, label, type, allowed values) before writing integrations:entity values: contacts, companies, deals, tasks. For deals, pass pipelineId to include pipeline-scoped fields.