Webhooks

Webhooks are used to send events from Maître to your server.

To enable webhooks, go to " Settings > Webhooks".
From there, click on the " + New Webhook" green button.

Add your endpoint URL plus specify which events you want to send.


How webhooks work

We send a POST HTTP request with a JSON payload when specific events occur.

There are 6 types of events:

  • new_registration
    is called when a new person subscribes to your list and verifies their email address. If you are using our API V2 and disable the double-opt-in, this webhook is called as soon as the person is subscribed to the list.
  • subscriber_promoted
    is called when you promote a subscriber
  • subscriber_deleted
    is called when you delete a subscriber
  • bonus_unlocked
    is called only for lead magnets, when a subscriber unlocks a bonus
  • subscriber_position_changed
    is called when the position of a subscriber change.
  • tracking_pixel_conversion
    is called when a conversion is triggered by the tracking pixel.

The JSON object sent for  new_registration will contain the following parameters:

{
  list_uuid: "MFXXXX", //The UUID of your list
  subscriber_id: "sub_123ABC", // Subscriber's ID
  response: "new_registration",
  name: "John Doe", //Subscriber's name
  first_name: "John",
  last_name: "Doe",
  email: "john.doe@email.com", //Subscriber's email
  extra_field: "+1 2348891123", // Subscriber's extra field's value
  code: "2hg36dvs", //Subscriber's unique referral code
  source: "facebook", //Subscriber's source. If the subscriber doesn't have a source the value will be "direct_visit"
  referred: true,
  referral: {
    name: "Mark",
    email: "mark@yahoo.com",
    code: "hxgs6csgy",
    people_referred: 26,
    points: 27
  }, //This property can have 3 possible values: an empty string (if the subscriber has not been referred), an object containing data of the referral (if the subscriber has been referred) or "subscriber_deleted" (if the subscriber has been referred but the user has been deleted.)
  referral_link: "http://mywebsite.com/LINK_PLAIN",
  people_ahead: 2873, //number of people in the list in front of the current subscriber (Only for Waiting lists)
  created_at: 1234567889 // Timestamp of the subscriber's sign up
}

The JSON object sent for subscriber_promoted will contain the following parameters:

{
  list_uuid: "MFXXXX", //The UUID of your list
  subscriber_id: "sub_123ABC", // Subscriber's ID
  response: "subscriber_promoted",
  name: "John Doe", //Subscriber's name
  first_name: "John",
  last_name: "Doe",
  email: "john.doe@email.com", //Subscriber's email
  extra_field: "+1 2348891123", // Subscriber's extra field's value
  code: "2hg36dvs", //Subscriber's unique referral code
  source: "facebook", //Subscriber's source. If the subscriber doesn't have a source the value will be "direct_visit"
  referred: true,
  referral: {
    name: "Mark",
    email: "mark@yahoo.com",
    code: "hxgs6csgy",
    people_referred: 26,
    points: 27
  }, //This property can have 3 possible values: an empty string (if the subscriber has not been referred), an object containing data of the referral (if the subscriber has been referred) or "subscriber_deleted" (if the subscriber has been referred but the user has been deleted.)
  referral_link: "http://mywebsite.com/LINK_PLAIN",
  created_at: 1234567889 // Timestamp of the subscriber's promotion
}

The JSON object sent for  subscriber_deleted will contain the following parameters:

{
  list_uuid: "MFXXXX", //The UUID of your list
  subscriber_id: "sub_123ABC", // Subscriber's ID
  response: "subscriber_deleted",
  name: "John Doe", //Subscriber's name
  first_name: "John",
  last_name: "Doe",
  email: "john.doe@email.com", //Subscriber's email
  extra_field: "+1 2348891123" // Subscriber's extra field's value
}

The JSON object sent for  bonus_unlocked will contain the following parameters:

{
  list_uuid: "MFXXXX", //The UUID of your list
  subscriber_id: "sub_123ABC", // Subscriber's ID
  response: "bonus_unlocked",
  name: "John Doe", //Subscriber's name
  first_name: "John",
  last_name: "Doe",
  email: "john.doe@email.com" //Subscriber's email
  extra_field: "+1 2348891123", // Subscriber's extra field's value
  code: "2hg36dvs", //Subscriber's unique referral code
  people_referred: 3, //Number of people referred
  referral_link: "http://mywebsite.com/LINK_PLAIN"
}

The JSON object sent for  subscriber_position_changed will contain the following parameters:

{
  response: "subscriber_position_changed",
  list_uuid: "MFXXXX", //The UUID of your list
  subscriber_id: "sub_123ABC", // Subscriber's ID
  old_position: 237, // Old position in the ranking
  new_position: 205, // New position in the ranking
  name: "John Doe", //Subscriber's name
  first_name: "John",
  last_name: "Doe",
  email: "john.doe@email.com" //Subscriber's email
  extra_field: "+1 2348891123", // Subscriber's extra field's value
  code: "2hg36dvs", //Subscriber's unique referral code
  people_referred: 3, //Number of people referred
  referral_link: "http://mywebsite.com/LINK_PLAIN"
}

The JSON object sent for  tracking_pixel_conversion will contain the following parameters:

{
  response: "tracking_pixel_conversion",
  list_uuid:  "MFXXXX", //The UUID of your list
  referrer_id: "sub_123ABC", // Referrer's ID
  data: {
    points: 10, // How many points this conversion is worth
    source: "Twitter",
    currency: "USD",
    value: 10, 
    category: "purchase", 
    transaction_id: "txn_123", 
    product_id: "iPhone", 
    first_name: "John", 
    last_name: "Doe", 
    email: "joh.doe@email.com"
  },
  created_at: 1234567889 // Timestamp of the conversion
}

Errors

Please send back a blank response with a status code of 200.
All not-200 responses will be considered errors. After 10 consecutive bad responses, the webhook will be disabled.

If a webhook fails, we will try to deliver it 3 times over a period of 5 minutes.

How to test a webhook

To test a webhook just click on the " Test" button next to the webhook URL you want to test.

We will ping your webhook URL with a JSON file containing fake data.

Still need help? Contact Us Contact Us