---
title: "Update contact"
method: POST
path: "/v2/contacts/{contactKey}"
tags: ["Contacts"]
---

# Update contact

`POST /v2/contacts/{contactKey}`

## Request

- Base URL: `https://api.streak.com/api`
- URL: `https://api.streak.com/api/v2/contacts/{contactKey}`
- Auth: HTTP bearer

Applies supplied changes. Null or omitted fields remain unchanged.

## Path parameters

- `contactKey` string, required

## Request body

- ContactUpdate: Contact changes. Omitted or null properties remain unchanged. Lists replace existing values; an empty list clears them subject to contact validation.
  - `givenName` string, nullable: New given name; an empty string clears it if another identifier remains.
  - `familyName` string, nullable: New family name; an empty string clears it if another identifier remains.
  - `title` string, nullable: New job title; an empty string clears it.
  - `other` string, nullable: New notes; an empty string clears them.
  - `emailAddresses` string[], nullable: Replacement email addresses; a contact must retain an email address or a name.
  - `phoneNumbers` string[], nullable: Replacement phone numbers. Empty entries are removed.
  - `addresses` string[], nullable: Replacement postal addresses. Empty entries are removed.
  - `domains` string[], nullable: Replacement website domains.
  - `twitterHandle` string, nullable: Replacement Twitter handle.
  - `facebookHandle` string, nullable: Replacement Facebook handle.
  - `linkedinHandle` string, nullable: Replacement LinkedIn handle.
  - `instagramHandle` string, nullable: Replacement Instagram handle.
  - `photoUrl` string, nullable: Replacement photo URL.
  - `fields` object, nullable: Custom-field values to merge by field key. Null entries are ignored; an empty map leaves existing fields unchanged.
  - `contactLinks` ContactLinkInput[], nullable: Replacement links to contacts; an empty list removes the links.
    - `key` string, required: Key of the related contact.
    - `isMagicLinked` boolean: Whether the relationship was created automatically.
    - `creationTimestamp` integer, nullable: Relationship creation timestamp, in epoch milliseconds, when known.
  - `orgLinks` OrganizationLinkInput[], nullable: Replacement links to organizations; an empty list removes the links.
    - `key` string, required: Key of the related organization.
    - `isMagicLinked` boolean: Whether the relationship was created automatically.
    - `creationTimestamp` integer, nullable: Relationship creation timestamp, in epoch milliseconds, when known.

## Response `200`

OK

- Contact: A contact shared with the team.
  - `key` string, required: Stable key for this contact.
  - `teamKey` string, required: Key for the team that owns this contact.
  - `givenName` string, nullable: Given name of the contact.
  - `familyName` string, nullable: Family name of the contact.
  - `other` string, nullable: Notes about the contact.
  - `title` string, nullable: Job title of the contact.
  - `emailAddresses` string[], required: Normalized email addresses with duplicates removed, in first-occurrence order.
  - `phoneNumbers` string[], required: Phone numbers with duplicates and null entries removed, in first-occurrence order.
  - `addresses` string[], required: Postal addresses with duplicates and null entries removed, in first-occurrence order.
  - `domains` string[], required: Website domains associated with the contact.
  - `normalizedDomains` string[], required: Stored normalized domains used to match organizations.
  - `twitterHandle` string, nullable: Twitter profile handle.
  - `facebookHandle` string, nullable: Facebook profile handle.
  - `linkedinHandle` string, nullable: LinkedIn profile handle.
  - `instagramHandle` string, nullable: Instagram profile handle.
  - `photoUrl` string, nullable: URL of the contact profile image.
  - `lastSavedUserKey` string, nullable: Key for the user who last edited this record.
  - `creatorKey` string, nullable: Key for the user who created this record.
  - `creationDate` integer, nullable: Time this record was first created, in epoch milliseconds.
  - `versionTimestamp` integer, nullable: Time this version of the record was created, in epoch milliseconds.
  - `lastSavedTimestamp` integer, nullable: Time this record was last saved, in epoch milliseconds.
  - `lastEnrichmentTimestamp` integer, nullable: Time enrichment was last applied or reviewed, in epoch milliseconds.
  - `contactLinks` ContactLink[], required: Contacts linked to this record, in their stored order.
    - `key` string, required: Key for the linked contact.
    - `isMagicLinked` boolean: Whether Streak linked this record automatically.
    - `creationTimestamp` integer, nullable: Time the relationship was created, in epoch milliseconds.
  - `orgLinks` OrganizationLink[], required: Organizations linked to this record, in their stored order.
    - `key` string, required: Stable key for the linked organization.
    - `isMagicLinked` boolean: Whether Streak linked this record automatically.
    - `creationTimestamp` integer, nullable: Time the relationship was created, in epoch milliseconds.
  - `fields` object, required: Custom field values keyed by field identifier.

## Changes

- **2026-10-16** `1c3a5ef8b9ea`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/streakyc/apis/streak/changes/v2/contacts/:contactKey/post.md)

---

[API](https://skmtc.dev/streakyc/apis/streak.md) - [All operations](https://skmtc.dev/streakyc/apis/streak/llms.txt) - [OpenAPI document](https://skmtc.dev/streakyc/apis/streak/revisions/3648671fd1cf?raw)
