Documentation Index
Fetch the complete documentation index at: https://docs.heffl.com/llms.txt
Use this file to discover all available pages before exploring further.
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
| Resource | Endpoints |
|---|---|
| Contacts | /api/v2/contacts |
| Companies | /api/v2/companies |
| Deals | /api/v2/deals |
| Quotations | /api/v2/quotations |
| Tasks | /api/v2/tasks |
| Products | /api/v2/products (accept cf_* on create/update; not returned on the product resource yet) |
Naming convention
Custom field keys are derived from the field label in Heffl:- Lowercase the label
- Replace spaces with underscores
- Prefix with
cf_
| Field label in Heffl | API key |
|---|---|
| Industry | cf_industry |
| Company Size | cf_company_size |
| Lead Score | cf_lead_score |
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.