Skip to main content
PATCH
Update a lead

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Idempotency-Key
string

Optional. A unique key you generate (max 255 chars, such as a UUID) that makes this request safe to retry. Retrying with the same key replays the original response instead of repeating the operation. Reusing a key with a different body returns 422.

Maximum string length: 255
Example:

"a1b2c3d4-e5f6-7890-abcd-ef1234567890"

Path Parameters

cid
string<uuid>
required
Example:

"a7d4e2f1-08b3-4c65-9e7a-1b2c3d4e5f60"

leadId
string<uuid>
required
Example:

"c9e5b1a3-7f24-4d80-a6b9-2e4f8c0d1a37"

Body

application/json
email
string

The email can only be changed while the lead has not been contacted yet.

Maximum string length: 254
firstName
string
Maximum string length: 128
Example:

"Jane"

lastName
string
Maximum string length: 128
Example:

"Doe"

companyName
string
Maximum string length: 256
Example:

"Acme Inc."

jobTitle
string
Maximum string length: 128
Example:

"Head of Growth"

website
string
Maximum string length: 512
Example:

"https://acme.com"

linkedinProfile
string
Maximum string length: 512
Example:

"https://www.linkedin.com/in/janedoe"

location
string
Maximum string length: 128
Example:

"Berlin, Germany"

tags
string[]
Example:
customFields
object

Custom fields - each key must be lowercase letters, digits and underscores, starting with a letter, up to 64 characters (e.g. fund_manager); a key outside that form is rejected. The number of fields per campaign is capped, and each value is length-limited.

customFieldLabels
object

Display labels for custom-field columns (applied on first definition).

customFieldTypes
object

Data types for custom-field columns (text | url | number | date | image; applied on first definition).

status
enum<string>

Only user-settable statuses are allowed; platform-managed ones such as email_sent or scheduled are rejected. Reply-based statuses (lead_replied_*, lead_converted) require the lead to have already replied. lead_lost and blacklisted can be set at any time.

Available options:
lead_replied_interested,
lead_replied_meeting_request,
lead_replied_out_of_office,
lead_replied_wrong_person,
lead_replied_not_interested,
lead_replied_unsubscribed,
lead_replied_uncategorized,
lead_converted,
lead_lost,
blacklisted

Response

id
string<uuid>
required
Example:

"c9e5b1a3-7f24-4d80-a6b9-2e4f8c0d1a37"

email
string
required
tags
string[]
required
Example:
customFields
object
required
Example:
status
enum<string>
required
Available options:
not_contacted,
scheduled,
email_sent,
failed,
skipped,
lead_replied_interested,
lead_replied_meeting_request,
lead_replied_out_of_office,
lead_replied_bounce,
lead_replied_wrong_person,
lead_replied_not_interested,
lead_replied_unsubscribed,
lead_replied_uncategorized,
lead_converted,
lead_lost,
blacklisted
Example:

"not_contacted"

verification
object
required
metrics
object
required
createdAt
string<date-time>
required
firstName
string | null
Example:

"Jane"

lastName
string | null
Example:

"Doe"

companyName
string | null
Example:

"Acme Inc"

jobTitle
string | null
Example:

"VP Sales"

website
string | null
Example:

"https://acme.com"

linkedinProfile
string | null
Example:

"https://www.linkedin.com/in/janedoe"

location
string | null
Example:

"New York, US"

provider
string | null
Example:

"google"

sequenceProgress
object

Live sequence progress - included on the single-lead detail view.

lastContactedAt
string<date-time> | null
lastRepliedAt
string<date-time> | null