All webhooks share the following:

  • All webhooks provide data in a JSON format
  • All webhooks are sent using the HTTP POST method
  • All href properties link to resource details in GetResponse APIv3
  • All IDs can be used with GetResponse APIv3
  • Each payload contains the following fields:
    • type - event type
    • account - information about the account
    • event - information about the event

Webhook headers

Each request will have the following headers:


    Content-Type: application/json
    X-Webhook-Type: contact_removed_link
    X-Webhook-ID: 9b287712-80b9-4aba-ad5e-df31929dad75
    X-Request-ID: cf3c768a-3465-4a6d-9ad9-ddae2705f526
                
  • Content-Type - Information about content type application/json
  • X-Webhook-Type - Type of event. Same as type field from the payload
  • X-Webhook-ID - UUID of webhook (unique per event, same for first request and retries)
  • X-Request-ID - UUID of request (unique per request)

Webhook types

Message opened

Get notified every time a contact opens an email

Payload example Description
{
    "type": "contact_opened_message",
    "contact": {
        "contactId": "abc123",
        "email": "example@example.com",
        "name": "Friend",
        "campaign": {
            "campaignId": "bcd234",
            "name": "my_first_campaign",
            "href": "https://api.getresponse.com/v3/campaigns/bcd234"
        },
        "href": "https://api.getresponse.com/v3/contacts/abc123"
    },
    "message": {
        "resourceType": "autoresponders",
        "resourceId": "cde345",
        "name": "my_first_newsletter",
        "subject": "My First Newsletter",
        "href": "https://api.getresponse.com/v3/autoresponders/cde345"
    },
    "account": {
        "accountId": "def456"
    },
    "event": {
        "occurredAt": "2021-04-27T12:56:00+00:00"
    }
}
  • type - Webhook event type - contact_opened_message
  • contact - Contact who opened the message
    • campaignId - Campaign (list) ID
    • name - Campaign (list) name
    • href - Link to campaign (list) details
    • contactId - Contact ID
    • email - Contact email address
    • name - Name of the contact nullable
    • campaign - Campaign (List) a contact is in
    • href - Link to contact details
  • message - Opened email (Newsletter, Autoresponder, or RSS Newsletter)
    • resourceType - Type of the opened message (autoresponders, newsletters, rssNewsletters)
    • resourceId - ID of the opened message
    • name - Name of the opened message
    • subject - Subject of the opened message
    • href - Link to message details
  • account - Information about the account
    • accountId - Account ID
  • event - Information about the event
  • occurredAt - Date of opening message in ISO8601/RFC3339 format


Get notified every time a contact clicks a link in an email

Payload example Description
{
    "type": "contact_clicked_message_link",
    "contact": {
        "contactId": "abc123",
        "email": "example@example.com",
        "name": "Friend",
        "campaign": {
            "campaignId": "bcd234",
            "name": "my_first_campaign",
            "href": "https://api.getresponse.com/v3/campaigns/bcd234"
        },
        "href": "https://api.getresponse.com/v3/contacts/abc123"
    },
    "message": {
        "resourceType": "autoresponders",
        "resourceId": "cde345",
        "name": "my_first_newsletter",
        "subject": "My First Newsletter",
        "href": "https://api.getresponse.com/v3/autoresponders/cde345"
    },
    "clickTrack": {
        "clickTrackId": "xyz789",
        "name": "Some link",
        "url": "http://example.com",
        "href": "https://api.getresponse.com/v3/click-tracks/xyz789"
    },
    "account": {
        "accountId": "def456"
    },
    "event": {
        "occurredAt": "2021-04-27T12:56:00+00:00"
    }
}
  • type - Webhook event type - contact_clicked_message_link
  • contact - Contact who clicked on the message link
    • contactId - Contact ID
    • email - Contact email address
    • name - Name of the contact nullable
    • campaign - Campaign (List) a contact is in
      • campaignId - Campaign (list) ID
      • name - Campaign (list) name
      • href - Link to campaign (list) details
    • href - Link to contact details
  • message - Message (Newsletter, Autoresponder, or RSS Newsletter) that contains the link clicked
    • resourceType - Type of the message (autoresponders, newsletters, rssNewsletters)
    • resourceId - ID of the message
    • name - Name of the message
    • subject - Subject of the message
    • href - Link to the message details
  • clickTrack - Clicked link
    • clickTrackId - ID of the link
    • name - Name of the link
    • url - URL of the link
    • href - Link to the details of the link clicked
  • account - Information about the account
    • accountId - Account ID
  • event

Get notified every time a contact clicks a link in a text message (SMS)

Payload example Description
{
    "type": "contact_clicked_sms_link",
    "contact": {
        "contactId": "abc123",
        "email": "example@example.com",
        "name": "Friend",
        "campaign": {
            "campaignId": "bcd234",
            "name": "my_first_campaign",
            "href": "https://api.getresponse.com/v3/campaigns/bcd234"
        },
        "phoneNumber": {
            "customFieldId": "exdqz",
            "href": "https://api.getresponse.com/v3/custom-fields/exdqz"
        },
        "href": "https://api.getresponse.com/v3/contacts/abc123"
    },
    "sms": {
        "smsId": "cde345",
        "name": "my_first_sms",
        "href": "https://api.getresponse.com/v3/sms/cde345"
    },
    "clickTrack": {
        "clickTrackId": "xyz789",
        "name": "Some link",
        "url": "http://example.com",
        "href": "https://api.getresponse.com/v3/click-tracks/xyz789"
    },
    "account": {
        "accountId": "def456"
    },
    "event": {
        "occurredAt": "2021-04-27T12:56:00+00:00"
    }
}
  • type - Webhook event type - contact_clicked_sms_link
  • contact - Contact who clicked a link in an SMS
    • contactId - Contact ID
    • email - Contact email address
    • name - Name of the contact nullable
    • campaign - Campaign (List) a contact is in
      • campaignId - Campaign (list) ID
      • name - Campaign (list) name
      • href - Link to campaign (list) details
    • phoneNumber - Contact phone number custom field
      • customFieldId - Phone custom field ID
      • href - Link to phone custom field
    • href - Link to contact details
  • sms - SMS (SMS) that contains the link clicked
    • smsId - ID of the SMS
    • name - Name of the SMS
    • href - Link to the SMS details
  • clickTrack - Clicked link
    • clickTrackId - ID of the link
    • name - Name of the link
    • url - URL of the link
    • href - Link to the details of the link clicked
  • account - Information about the account
    • accountId - Account ID
  • event

Contact subscribed

Get notified when a contact is added. This event is NOT triggered by imports.

Payload example Description
{
    "type": "contact_added",
    "contact": {
        "contactId": "abc123",
        "email": "example@example.com",
        "name": "Friend",
        "campaign": {
            "campaignId": "bcd234",
            "name": "my_first_campaign",
            "href": "https://api.getresponse.com/v3/campaigns/bcd234"
        },
        "ip": "1.2.3.4",
        "origin": "api",
        "href": "https://api.getresponse.com/v3/contacts/abc123"
    },
    "account": {
        "accountId": "def456"
    },
    "event": {
        "occurredAt": "2021-04-27T12:56:00+00:00"
    }
}
  • type - Webhook event type - contact_added
  • contact - Contact added
    • contactId - ID of added contact
    • email - Email address of added contact
    • name - Name of added contact nullable
    • campaign - Campaign (List) the contact is added to
      • campaignId - ID of campaign (list) the contact is added to
      • name - Name of campaign (list) the contact is added to
      • href - Link to campaign (list) details
    • ip - Contact's IP, if provided nullable
    • origin - How contact was added
    • href - Link to contact details
  • account - Information about the account the contact is added to
    • accountId - Account ID
  • event

Contact copied

Get notified when a contact is copied.

Payload example Description
{
    "type": "contact_copied",
    "contact": {
        "contactId": "abc123",
        "email": "example@example.com",
        "name": "Friend",
        "campaign": {
            "campaignId": "bcd234",
            "campaignName": "my new campaign",
            "href": "https://api.getresponse.com/v3/campaigns/bcd234"
        },
        "sourceCampaign": {
            "campaignId": "mnb321",
            "campaignName": "my source campaign",
            "href": "https://api.getresponse.com/v3/campaigns/mnb321"
        }
        "href": "https://api.getresponse.com/v3/contacts/abc123"
    },
    "account": {
        "accountId": "def456"
    },
    "event": {
        "occurredAt": "2021-04-27T12:56:00+00:00"
    }
}
  • type - Webhook event type - contact_copied
  • contact - Contact copied
    • contactId - New contact ID
    • email - New contact email address
    • name - New contact name nullable
    • campaign - Campaign (List) the contact is copied to
      • campaignId - ID of the campaign (list) the contact is copied to
      • campaignName - Name of the campaign (list) the contact is copied to
      • href - Link to the campaign (list) details
    • sourceCampaign - Campaign (List) the contact is copied from
      • campaignId - ID of the campaign (list) the contact is copied from
      • campaignName - Name of the campaign (list) the contact is copied from
      • href - Link to the campaign (list) details
    • href - Link to contact details
  • account - Information about the account the contact is added to
    • accountId - Account ID
  • event

Contact moved

Get notified when a contact is moved.

Payload example Description
{
    "type": "contact_moved",
    "contact": {
        "contactId": "abc123",
        "email": "example@example.com",
        "name": "Friend",
        "campaign": {
            "campaignId": "bcd234",
            "campaignName": "my new campaign name",
            "href": "https://api.getresponse.com/v3/campaigns/bcd234"
        },
        "sourceCampaign": {
            "campaignId": "mnb321",
            "campaignName": "my previous campaign name",
            "href": "https://api.getresponse.com/v3/campaigns/mnb321"
        }
        "href": "https://api.getresponse.com/v3/contacts/abc123"
    },
    "account": {
        "accountId": "def456"
    },
    "event": {
        "occurredAt": "2021-04-27T12:56:00+00:00"
    }
}
  • type - Webhook event type - contact_moved
  • contact - Contact moved
    • contactId - Contact ID
    • email - Contact email address
    • name - Contact name nullable
    • campaign - Campaign (List) the contact is moved to
      • campaignId - ID of the campaign (list) the contact is moved to
      • campaignName - Name of the campaign (list) the contact is moved to
      • href - Link to the campaign (list) details
    • sourceCampaign - Campaign (List) the contact is moved from
      • campaignId - ID of the campaign (list) the contact is moved from
      • campaignName - Name of the campaign (list) the contact is moved from
      • href - Link to the campaign (list) details
    • href - Link to contact details
  • account - Information about the account the contact is added to
    • accountId - Account ID
  • event

Contact unsubscribed

Get notified whenever a contact unsubscribes via unsubscribe link

Payload example Description
{
    "type": "contact_removed_link",
    "contact": {
        "contactId": "abc123",
        "email": "example@example.com",
        "name": "Friend",
        "campaign": {
            "campaignId": "bcd234",
            "name": "my_first_campaign",
            "href": "https://api.getresponse.com/v3/campaigns/bcd234"
        }
    },
    "account": {
        "accountId": "def456"
    },
    "event": {
        "occurredAt": "2021-04-27T12:56:00+00:00"
    }
}
  • type - Webhook event type - contact_removed_link
  • contact - Unsubscribed contact
    • contactId - ID of the contact
    • email - Email address of the contact
    • name - Name of the contact nullable
    • campaign - Campaign (List) a contact unsubscribed from
      • campaignId - ID of campaign (list) the contact unsubscribed from
      • name - Name of campaign (list) the contact unsubscribed from
      • href - Link to campaign (list) details
  • account - Information about the account
    • accountId - Account ID
  • event

Custom field value changed

Get notified whenever an existing contact has a custom field assigned, unassigned, or updated.

Please remember that the webhook is not triggered by:

  • Assigning a custom field when adding a new contact via any method.
  • Updating custom fields values via contact imports.
  • Updating custom field values via marketing automation.
  •  
Payload example Description
{
    "type": "contact_custom_field_changed",
    "contact": {
        "contactId": "abc123",
        "href": "https://api.getresponse.com/v3/contacts/abc123"
    },
"customField": {
"customFieldId": "cfv123",
"href": "https://api.getresponse.com/v3/custom-fields/cfv123",
"action": "changed",
"addedValues": ["cat", "dog"],
"removedValues": ["rabbit"]
}, "account": { "accountId": "def456" }, "event": { "occurredAt": "2021-04-27T12:56:00+00:00" } }
  • type - Webhook event type - contact_custom_field_changed
  • contact - contact details
    • contactId - ID of the contact
    • href - Link to contact details
  • customField - Custom field details
    • customFieldId - Custom field ID
    • href - Link to custom field details
    • action - Change type. Possible changes are: added|changed|removed
    • addedValues - Array with new custom field values
    • removedValues - Array with removed custom field values
  • account - Information about the account
    • accountId - Account ID
  • event

Case study

  1. The multivalue custom field "pets" is assigned to a contact. The initial state of the custom field is: ["rabbit", "hamster"]
    • A webhook with the following values will be triggered:
      • action: added
      • addedValues: ["rabbit", "hamster"]
      • removedValues: []
  2. Your contact has changed the value for the custom field “pets”. The value "rabbit" is removed and two new values are provided: "cat" and "dog".
    • A webhook with the following values will be triggered:
      • action: changed
      • addedValues: ["cat", "dog"]
      • removedValues: ["rabbit"]
  3. Your contact has removed the custom field "pets".
    • A webhook is triggered without custom field values. It looks as follows:
      • action: removed
      • addedValues: []
      • removedValues: []

Contact's email changed

Get notified when a contact's email address has changed.

Payload example Description
{
    "type": "contact_email_changed",
    "contacts": [
        {
            "contactId": "abc123",
            "email": "sample@email.com",
            "href": "https://api.getresponse.com/v3/contacts/abc123",
            "campaign": {
                "campaignId": "bcd234",
                "name": "my_first_campaign",
                "href": "https://api.getresponse.com/v3/campaigns/bcd234"
            }
        },
        {
            "contactId": "def456",
            "email": "sample@email.com",
            "href": "https://api.getresponse.com/v3/contacts/def456",
            "campaign": {
                "campaignId": "efg345",
                "name": "my_second_campaign",
                "href": "https://api.getresponse.com/v3/campaigns/efg345"
            }
        }
    ],
    "account": {
        "accountId": "def456"
    },
    "event": {
        "occurredAt": "2023-07-13T12:56:00+00:00"
    }
}
  • type - Webhook event type - contact_email_changed
  • contacts - List of contacts whose emails were changed
    • contactId - Contact ID
    • email - New email address
    • href - Go to Contact details
    • campaign - Campaign (List)
      • campaignId - Campaign (list) ID
      • name - Campaign (list) name
      • href - Link to the campaign (list) details
  • account - Information about the account the contact is added to
    • accountId - Account ID
  • event

Contact import finished

Receive a notification when a contact import is complete, and receive information about the status (success/failure) of the import.

Payload example Description
{
    "type": "contacts_import_finished",
    "status": "OK",
    "account": {
        "accountId": "def456"
    },
"import": { "importId": "abc456",
"href": "https://api.getresponse.com/v3/imports/abc456" } }
  • type - Webhook event type - contacts_import_finished
  • account - Information about the account
    • accountId - Account ID
  • status - Import status - [ok, failed]
  • import - Information about the import
    • importId - Import ID
    • href - link to import details