Skip to main content
PATCH
/
contacts
/
{id}
Update a contact
curl --request PATCH \
  --url https://api.heffl.com/api/v2/contacts/{id} \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "firstName": "<string>",
  "lastName": "<string>",
  "salutation": "<string>",
  "email": "[email protected]",
  "phone": "<string>",
  "jobTitle": "<string>",
  "companyId": "<string>",
  "stageId": "<string>",
  "leadStageId": "<string>",
  "ownerUserId": "<string>",
  "vendorId": "<string>",
  "sourceId": "<string>",
  "billingAddress": {
    "city": "<string>",
    "address": "<string>",
    "landmark": "<string>",
    "state": "<string>",
    "country": "<string>",
    "postalCode": "<string>"
  }
}
'
{
  "id": "<string>",
  "name": "<string>",
  "number": "<string>",
  "firstName": "<string>",
  "openingBalance": 123,
  "showJobAmountToWorker": true,
  "isClientPortalEnabled": true,
  "lastName": "<string>",
  "email": "<string>",
  "phone": "<string>",
  "salutation": "<string>",
  "jobTitle": "<string>",
  "description": "<string>",
  "taxNumber": "<string>",
  "website": "<string>",
  "companyId": "<string>",
  "companyName": "<string>",
  "parentClientId": "<string>",
  "stageId": "<string>",
  "stageName": "<string>",
  "leadStageId": "<string>",
  "ownerUserId": "<string>",
  "crmSourceId": "<string>",
  "sourceName": "<string>",
  "currency": "<string>",
  "internalNotes": "<string>",
  "profileImage": "<string>",
  "instagram": "<string>",
  "facebook": "<string>",
  "linkedin": "<string>",
  "twitter": "<string>",
  "createdAt": "2023-11-07T05:31:56Z",
  "updatedAt": "2023-11-07T05:31:56Z"
}

Authorizations

x-api-key
string
header
required

API key for authentication. Get yours at app.heffl.com/settings/developers

Path Parameters

id
string
required

Contact person's ID (clt_ prefix). Must be a contact record.

Body

application/json
firstName
string

Contact first name

lastName
string

Contact last name

salutation
string

Title (Mr., Mrs., Dr., etc.)

email
string<email> | null

Email address

phone
string

Phone number with country code

jobTitle
string

Job title or position

companyId
string | null

ID of the parent company to link this contact to. Pass null to unlink.

stageId
string

Client stage ID

leadStageId
string

Lead stage ID

ownerUserId
string

Owner user ID

vendorId
string

Vendor ID

sourceId
string

CRM source ID

billingAddress
object
{key}
any

Custom field values using cf_* keys (for example cf_industry). Only documented fields and cf_* keys are accepted.

Response

OK

id
string
required

Contact person's ID (clt_ prefix)

name
string
required

Display name

number
string
required

Auto-generated contact number

firstName
string
required

First name

openingBalance
number
required

Opening balance

showJobAmountToWorker
boolean
required

Whether job amounts are visible to field workers

isClientPortalEnabled
boolean
required

Whether the client portal is enabled

type
enum<string> | null

Record type (always contact for this endpoint)

Available options:
contact,
company
lastName
string | null

Last name

email
string | null

Email address

phone
string | null

Phone number

salutation
string | null

Salutation

jobTitle
string | null

Job title

description
string | null

Description

taxNumber
string | null

Tax number

website
string | null

Website URL

companyId
string | null

Parent company ID

companyName
string | null

Parent company name

parentClientId
string | null

Parent client ID (same as companyId for contacts)

stageId
string | null

Client stage ID

stageName
string | null

Client stage label

leadStageId
string | null

Lead stage ID

ownerUserId
string | null

Owner user ID

crmSourceId
string | null

CRM source ID

sourceName
string | null

CRM source name

currency
string | null

Currency code

internalNotes
string | null

Internal notes

profileImage
string | null

Profile image URL

instagram
string | null

Instagram handle or URL

facebook
string | null

Facebook handle or URL

linkedin
string | null

LinkedIn handle or URL

twitter
string | null

Twitter handle or URL

createdAt
string<date-time>

When the contact was created

updatedAt
string<date-time>

When the contact was last updated

{key}
any

Custom field values as top-level cf_* keys (for example cf_industry). There is no customFields wrapper.