Bulk mutate leads
Apply one operation (set_status, add_tags, remove_tags, or delete) across many leads. Target them by ids; delete also accepts a filter, or all: true to remove every lead. Reply-based statuses can only be set on leads that have already replied.
Requires one of the following scopes: leads:write, leads:all, all:all.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
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.
255"a1b2c3d4-e5f6-7890-abcd-ef1234567890"
Path Parameters
"a7d4e2f1-08b3-4c65-9e7a-1b2c3d4e5f60"
Body
set_status, add_tags, remove_tags, delete Target lead ids. Required for every operation except a filter-based delete.
1000Select targets by filter instead of ids - supported ONLY for delete, and must contain at least one condition (an empty filter is rejected).
Delete EVERY lead in the campaign. Only valid for delete, and mutually exclusive with ids / filter. Required as an explicit opt-in for mass deletion - an empty filter will NOT delete all.
false
Required for set_status. 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.
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 Required for add_tags / remove_tags.