You are here

function mailchimp_webhook_add in Mailchimp 7.4

Same name and namespace in other branches
  1. 8 mailchimp.module \mailchimp_webhook_add()
  2. 7.5 mailchimp.module \mailchimp_webhook_add()
  3. 7.3 mailchimp.module \mailchimp_webhook_add()
  4. 2.x mailchimp.module \mailchimp_webhook_add()

Wrapper around MailchimpLists->addWebhook().

Return value

mixed New webhook ID if added, FALSE otherwise.

2 calls to mailchimp_webhook_add()
MailchimpListsTestCase::testAddWebhook in modules/mailchimp_lists/tests/mailchimp_lists.test
Tests adding a webhook to a list.
mailchimp_lists_webhook_form_submit in modules/mailchimp_lists/includes/mailchimp_lists.admin.inc
Submit handler for mailchimp_lists_webhook_form().

File

./mailchimp.module, line 1319
Mailchimp module.

Code

function mailchimp_webhook_add($list_id, $url, $events = array(), $sources = array()) {
  try {

    /* @var \Mailchimp\MailchimpLists $mc_lists */
    $mc_lists = mailchimp_get_api_object('MailchimpLists');
    if (!$mc_lists) {
      throw new MailchimpException('Cannot add webhook without Mailchimp API. Check API key has been entered.');
    }
    $parameters = array(
      'events' => (object) $events,
      'sources' => (object) $sources,
    );
    $result = $mc_lists
      ->addWebhook($list_id, $url, $parameters);
    return $result->id;
  } catch (Exception $e) {
    watchdog('mailchimp', 'An error occurred adding webhook for list @list. "%message"', array(
      '@list' => $list_id,
      '%message' => $e
        ->getMessage(),
    ), WATCHDOG_ERROR);
    return FALSE;
  }
}