Activity on an advanced (multichannel) campaign
Sent to URLs registered with type: advanced.
EMAIL_SENT: email step sent (the documented nameMAIL_SENTnever fires).OPENED,CLICKED,UNSUBSCRIBED: same tracking rules as legacy email, delivered 30 to 60 seconds later; contact withoutid, nosender.MAIL_REPLIED: first email reply, withreply,sentiment,sender,senderName,messageId,campaignId.BOUNCED: bounce detected; nocampaignfield,step0.VISITED,INVITED,ACCEPTED,MESSAGE_SENT(text incontent),INMAIL_SENT,LIKED: LinkedIn actions.LINKEDIN_REPLIED: LinkedIn reply withreplyandsentiment;campaignId,linkedinUrlProfileandlinkedinIdonly when detected in real time.WHATSAPP_MESSAGE_SENT,WHATSAPP_REPLIED: WhatsApp message sent, reply received (reply).CAMPAIGN_ENDING: see the campaignEnding webhook.
Never sent: SENT, MAIL_SENT, FOLLOWED, TASK_COMPLETED, TASK_FAILED, FAILED_ACTION, EXCLUDED, RE_REPLY_EMAIL, RE_REPLY_LINKEDIN. Only the real time LinkedIn path retries (once, network errors).
Delivery. One POST per event and per registered URL, header Content-Type: application/json, JSON body, no signature or secret header, default User-Agent of the HTTP library. No timeout is set. Your response (status and body) is ignored: an HTTP error is never retried. Network errors are retried only for some events (see each list). No event ID, no ordering guarantee, no replay; a URL registered twice receives everything twice. Absent fields are omitted, never null.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
Example Requests
/advancedCampaignActivityGETList webhooks
Returns the activity webhooks registered on the campaigns of the authenticated account: legacy email campaigns (typeOfCampaign: email), legacy LinkedIn campaigns (linkedin) and advanced campaigns (advanced), whatever the
EVENTCampaign finished
Sent once to URLs whose events include CAMPAIGN_ENDING, when a campaign is closed automatically by the daily job (04:00 server time).