Update

Partial update of a contact person

POST https://do.workzeal.com/contact/update

Only the fields you pass are changed. Everything else stays as it was. When the last name, first name, or middle name changes, the full name in the card is reassembled automatically.

Phones and email addresses are updated with separate methods. See the Phones and emails page (pass contact_id).

Request Body

Name Type Description
id* Int Contact person ID
company_id* Int Client ID (for the access rights check)
first_name String First name
last_name String Last name
middle_name String Middle name
position String Position
note String Note (replaces the old one)
status_id Int Contact person status code
{
    "id" : 186442,
    "company_id" : 368132,
    "position" : "Chief Commercial Officer",
    "note" : "Changed position in August 2026"
}

Note

Required parameters are id and company_id, plus at least one field to update.

Example

curl --location --request POST 'https://do.workzeal.com/contact/update' \
--header 'Authorization: Bearer XXXX-XXXXXXX-XXXXXXX' \
--header 'Content-Type: application/json' \
--data-raw '{
    "id" : 186442,
    "company_id" : 368132,
    "position" : "Chief Commercial Officer"
  }
  '
var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://do.workzeal.com/contact/update',
  'headers': {
    'Authorization': 'Bearer XXXX-XXXXXXX-XXXXXXX',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    "id": 186442,
    "company_id": 368132,
    "position": "Chief Commercial Officer"
  })
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

Response

{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 0,
  "pages": 0,
  "page": 0,
  "value": "1"
}
// value: 1 - contact person updated, 0 - error (text in the error field)