Skip to main content
PATCH
Update a contact

Authorizations

Authorization
string
header
required

Authenticate every request with a Bearer token. Pass your Reply API key in the Authorization header:

Get your API key from the Reply dashboard: Settings → API Key.

Path Parameters

id
integer
required

Contact ID

Body

application/json

Request model for updating an existing contact. All fields are optional — only include the fields you want to change (PATCH semantics).

email
string<email>

Primary email address

firstName
string

First name

lastName
string

Last name

phone
string

Phone number

phone2
string

Secondary phone number

title
string

Job title

company
string

Organization name

companySize
enum<string>

Organization employee count range

Available options:
Empty,
SelfEmployed,
Ten,
Fifty,
TwoHundred,
FiveHundred,
OneThousand,
FiveThousand,
TenThousand,
OverTenThousand
industry
string

Business sector

city
string

City of residence

state
string

State/province

country
string

Country

timeZoneId
string

Timezone identifier

linkedInUrl
string<uri>

LinkedIn profile URL

linkedInSalesNavigatorUrl
string<uri>

Sales Navigator URL

linkedInRecruiterUrl
string<uri>

Recruiter URL

notes
string

Additional information

isOptedOut
boolean | null

Set or clear the contact's opted-out flag (suppresses all communications when true).

callStatus
enum<string> | null

Contact-level call status. Pass none to clear.

Available options:
none,
toCall,
called
meetingStatus
enum<string> | null

Contact-level meeting status. Pass none to clear.

Available options:
none,
meetingBooked
ownerUserId
integer | null

Change the owner of this contact. The new owner must be a member of the caller's team; otherwise the request fails with 404.

accountId
integer | null

ID of the contact account to link this contact to

customFields
object[]

Custom fields to update. Fields can be identified by id or name. Unlike the response model which uses key/value, the patch model accepts id, name, and value.

Response

Contact updated successfully

Contact response model

id
integer
read-only

Unique ID

email
string<email>

Primary email address

domain
string
read-only

Email domain (derived from email)

firstName
string

First name

lastName
string

Last name

phone
string

Phone number

title
string

Job title

company
string

Organization name

companySize
enum<string>

Organization employee count range

Available options:
empty,
selfEmployed,
ten,
fifty,
twoHundred,
fiveHundred,
oneThousand,
fiveThousand,
tenThousand,
overTenThousand
industry
string

Business sector

city
string

City of residence

state
string

State/province

country
string

Country

timeZoneId
string

Timezone identifier

linkedInUrl
string<uri>

LinkedIn profile URL

linkedInSalesNavigatorUrl
string<uri>

Sales Navigator URL

linkedInRecruiterUrl
string<uri>

Recruiter URL

phoneStatus
enum<string>

Phone validation status

Available options:
pending,
invalid,
valid,
validationFailed,
notValidated
notes
string

Additional information

ownerUserId
integer

ID of the user who owns this contact

accountId
integer | null

ID of the contact account this contact belongs to

isOptedOut
boolean
read-only

Whether the contact has opted out of communications

callStatus
enum<string>

Contact-level call status

Available options:
none,
toCall,
called
meetingStatus
enum<string>

Contact-level meeting status

Available options:
none,
meetingBooked
addingDate
string<date-time> | null
read-only

Date the contact was added

createdAt
string<date-time> | null
read-only

Creation timestamp

lastModifiedAt
string<date-time> | null
read-only

Last modification timestamp

customFields
object[]

User-defined fields