Skip to main content
PUT
/
v1
/
contacts
/
{contactId}
Update a contact
curl --request PUT \
  --url https://api.prod.getdex.com/v1/contacts/{contactId} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "full_name": "<string>",
  "first_name": "<string>",
  "last_name": "<string>",
  "description": "<string>",
  "job_title": "<string>",
  "legacy_location": "<string>",
  "company": "<string>",
  "education": "<string>",
  "starred": true,
  "source": "linkedin_sync",
  "coordinates": {
    "operation": "set",
    "data": {
      "latitude": 123,
      "longitude": 123
    }
  },
  "image_url": "<string>",
  "image_source": "<string>",
  "business_card_url": "<string>",
  "website": "<string>",
  "birthday": "2023-12-25",
  "birthday_year": 2000,
  "frequency": "<string>",
  "last_seen_at": "2023-11-07T05:31:56Z",
  "never_keep_in_touch": true,
  "next_reminder_at": "2023-11-07T05:31:56Z",
  "linkedin": "<string>",
  "twitter": "<string>",
  "facebook": "<string>",
  "instagram": "<string>",
  "telegram": "<string>",
  "tiktok": "<string>",
  "youtube": "<string>",
  "whatsapp_message_link": "<string>",
  "whatsapp_message_snippet": "<string>",
  "whatsapp_last_message_at": "2023-11-07T05:31:56Z",
  "imessage_message_link": "<string>",
  "imessage_message_snippet": "<string>",
  "imessage_last_message_at": "2023-11-07T05:31:56Z",
  "linkedin_message_link": "<string>",
  "linkedin_last_message_snippet": "<string>",
  "linkedin_last_message_at": "2023-11-07T05:31:56Z",
  "linkedin_data": {},
  "instagram_message_link": "<string>",
  "instagram_message_snippet": "<string>",
  "instagram_last_message_at": "2023-11-07T05:31:56Z",
  "gmail_last_interaction_at": "2023-11-07T05:31:56Z",
  "gmail_last_interaction_provider_id": "<string>",
  "gmail_last_interaction_subject": "<string>",
  "gmail_last_interaction_provider": "GOOGLE",
  "gcal_last_interaction_at": "2023-11-07T05:31:56Z",
  "gcal_last_interaction_provider_id": "<string>",
  "gcal_last_interaction_title": "<string>",
  "gcal_last_interaction_provider": "GOOGLE",
  "phone_call_last_interaction_at": "2023-11-07T05:31:56Z",
  "phone_call_interaction_snippet": "<string>",
  "web_search_summary": {},
  "legacy_contact_addresses": [
    {
      "formatted": "<string>"
    }
  ],
  "contact_emails": [
    {
      "email": "<string>",
      "label": "<string>",
      "ranking": 123
    }
  ],
  "contact_phone_numbers": [
    {
      "phone_number": "<string>",
      "country_code": "<string>",
      "phone_number_sanitized": "<string>",
      "label": "<string>",
      "ranking": 123
    }
  ],
  "groups_contacts": [
    {
      "group_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
    }
  ],
  "tags_contacts": {
    "append": [
      {
        "tag_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
      }
    ],
    "remove": [
      {
        "tag_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "contact_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
      }
    ],
    "replace": "<unknown>"
  },
  "custom_fields": [
    {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "type": "input",
      "text_value": "<string>",
      "custom_field": "<unknown>"
    }
  ],
  "contact_birthdays": {
    "contact_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "last_dismissal_year": 2000
  },
  "is_archived": true,
  "ignore_merge": true,
  "related_contacts": {
    "append": [
      {
        "destination": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "source_contact": "<unknown>",
        "destination_contact": "<unknown>"
      }
    ],
    "remove": [
      {
        "source": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "destination": "<unknown>"
      }
    ],
    "replace": "<unknown>"
  }
}
'
{
  "error": true,
  "data": {
    "contact": {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "full_name": "<string>",
      "first_name": "<string>",
      "last_name": "<string>",
      "job_title": "<string>",
      "company": "<string>",
      "description": "<string>",
      "legacy_location": "<string>",
      "website": "<string>",
      "image_url": "<string>",
      "starred": true,
      "is_archived": true,
      "birthday": "<string>",
      "linkedin": "<string>",
      "twitter": "<string>",
      "facebook": "<string>",
      "instagram": "<string>",
      "frequency": "<string>",
      "source": "<string>",
      "created_at": "<string>",
      "updated_at": "<string>"
    }
  }
}

Use cases

  • Update a contact’s job title or company after a career change
  • Star or archive a contact
  • Add or change a contact’s email address or phone number
This performs a partial update. Only send the fields you want to change — any field you omit will keep its current value.

Authorizations

Authorization
string
header
required

Use your Dex API key (e.g. dex_abc123...) as the Bearer token.

Path Parameters

contactId
string<uuid>
required

Body

application/json
full_name
string | null
first_name
string | null
last_name
string | null
description
string | null
job_title
string | null
legacy_location
string | null
company
string | null
education
string | null
starred
boolean
source
enum<string>
Available options:
linkedin_sync,
facebook_import,
cal_ingest,
email_ingest,
web_import,
csv_import,
whatsapp_sync,
imessage_sync,
phone_calls_sync,
mobile,
mobile_import,
instagram_sync,
oauth_interaction
coordinates
object
image_url
string<uri> | null
image_source
string<uri> | null
business_card_url
string<uri> | null
website
string | null
Maximum string length: 2083
birthday
string<date> | null
birthday_year
number | null
Required range: 1900 <= x <= 2100
frequency
string | null
last_seen_at
string<date-time> | null
never_keep_in_touch
boolean
next_reminder_at
string<date-time>
linkedin
string | null
twitter
string | null
facebook
string | null
instagram
string | null
telegram
string | null
tiktok
string | null
youtube
string | null
whatsapp_message_snippet
string | null
whatsapp_last_message_at
string<date-time> | null
imessage_message_snippet
string | null
imessage_last_message_at
string<date-time> | null
linkedin_last_message_snippet
string | null
linkedin_last_message_at
string<date-time> | null
linkedin_data
object
instagram_message_snippet
string | null
instagram_last_message_at
string<date-time> | null
gmail_last_interaction_at
string<date-time> | null
gmail_last_interaction_provider_id
string | null
gmail_last_interaction_subject
string | null
gmail_last_interaction_provider
enum<string> | null
Available options:
GOOGLE,
OFFICE365
gcal_last_interaction_at
string<date-time> | null
gcal_last_interaction_provider_id
string | null
gcal_last_interaction_title
string | null
gcal_last_interaction_provider
enum<string> | null
Available options:
GOOGLE,
OFFICE365
phone_call_last_interaction_at
string<date-time> | null
phone_call_interaction_snippet
string | null
web_search_summary
object
legacy_contact_addresses
object[]
contact_emails
object[]
contact_phone_numbers
object[]
groups_contacts
object[]
tags_contacts
object
custom_fields
object[]
contact_birthdays
object
is_archived
boolean
ignore_merge
boolean

Response

Successful response

error
boolean
required
data
object
required