EngageBay Webhooks

#Overview

You can use webhooks in EngageBay to send data back to your WordPress site using WP Fusion. Using webhooks you can create new users on your WordPress site based on automations in EngageBay, or update existing users’ meta data and tags.

Having trouble receiving webhooks? Check out our troubleshooting guide.

There are two ways to manage webhooks in EngageBay, either via an Automation or in the Account Settings.

#Automation Method

(Recommended) The automation method is best if you need to send a webhook to create or update a WordPress user as part of a specific process. For example:

  • Tag “Website Access” is added
  • Send webhook to create WordPress user
  • Send welcome email
  • Wait 3 days
  • Apply tag “Unlock Course Two”
  • Send webhook to update tags

Using a webhook in an automation lets you easily visualize the entire automation flow, and see where individual contacts are in the process.

A flowchart in EngageBay demonstrates automation steps: Tag added: Course:WWVDC 2019 links to JSON IO via a URL, proceeds to Delay: Minutes 1, and concludes at Send email: Your course access information, seamlessly integrating with WP Fusion CRM.

You’ll also be able to visualize where a single contact is in the automation, when the webhook was sent, and whether or not it was received successfully. Using webhooks in automations gives you a lot more control and better reporting than using Global Webhooks (see below).

To use webhooks in automations first create an automation and add JSON IO node to it, like in the example above. A modal will appear where you can configure your webhook:

Screenshot of a web interface for configuring an action with WP Fusion CRM integration. It shows fields for Node Name, URL, Type (GET), and options to add Headers and Parameters. A parameter contact_id is set to {{Subscriber.id}}. A red Update Action button awaits at the bottom.

The settings are:

  • Node Name: This is just a label in the automation builder, you can set it to whatever you want
  • URL: This is the URL to your WordPress site. See Webhook URL Parameters below for a description of the options. Your access key can be found at the bottom of the General tab in the WP Fusion settings.
  • Type: GET
  • Parameters: contact_id needs to be set to {{Subscriber.id}}. This identifies the contact to WP Fusion
  • Set output to: none

Now when the contact reaches the JSON IO step in the automation EngageBay will notify WP Fusion to load the contact’s data.

#Account Settings Method

(Advanced) You can also set up webhooks which are global to your account. This is best if you’re manually editing contact records in EngageBay (outside of an automation) and need these changes synced to WordPress.

Note: It’s not recommended to set up global webhooks with the add method, as then every contact in EngageBay will be given a WordPress user account.

To set up a webhook navigate to Account Settings » Webhooks in your EngageBay admin, and click Add Webhook to create a new webhook.

Screenshot of a web page showcasing account settings for WP Fusion CRM integration. The sidebar includes options like Users, Domain Settings, and Webhooks. The main area displays webhook entries with names, event types, and URLs. An Add Webhook button is conveniently located at the top right.

For the Event Type you can select either contact.update, or contact.create.

Screenshot of a webhook editing interface featuring WP Fusion CRM integration. Fields include Name set to Update WordPress and Event type as contact.update. Options for Select Fields display checkboxes for email, phone, first name, and more, with most selected.

For fields, choose Select All.

Keep in mind that, because these webhooks are global to your EngageBay account, bulk editing contacts will trigger webhooks to be sent to your site for every edited contact, which may make your WordPress site temporarily unstable.

Note: If you’ve set up global webhooks with the update or update_tags method it’s not necessary to also include those same webhooks in automations.

#Webhook URL parameters

You can format your webhook URL in a few different ways to customize the behavior:

#To update a user’s tags

To update an existing WordPress user’s tags from the contact record, the URL for the webhook should look like the following:

https://mydomain.com/?wpf_action=update_tags&access_key=YOURACCESSKEY

#To update a user’s tags and meta data

To update a user’s tags and pull any new meta data from EngageBay for that contact, the URL for the webhook should look like the following:

https://mydomain.com/?wpf_action=update&access_key=YOURACCESSKEY

#Create a new user

To create a new user, use the following URL:

https://mydomain.com/?wpf_action=add&access_key=YOURACCESSKEY

You can also specify additional parameters in user creation. For example, to send the user a welcome email containing a link to log in on your site, use the following:

https://mydomain.com/?wpf_action=add&access_key=YOURACCESSKEY&send_notification=true

You can also specify a specific user role to be assigned to the new user. For example, to set the new user to the “customer” role, use the following:

https://mydomain.com/?wpf_action=add&access_key=YOURACCESSKEY&role=customer

Note that you have to have registered a “customer” role on your site for this to work. By default users will be assigned the role of “subscriber”.

The add method will update a user if an existing user already exists. It will not create a duplicate user.

Note: By default, user accounts will be created with their email address as the username and a randomly generated password. However, if you have created a custom username field and password field in your EngageBay application, and enabled these fields in WP Fusion for sync with user_login and user_pass on your website, the new users will be given the usernames and passwords stored in their EngageBay contact record.

#User passwords

New user accounts will be created with an automatically generated password. If you’d like to use this password in your email marketing, you can send the password back to EngageBay after it has been generated.

In the Webhooks section of the General settings tab, check the box for Return Password, and select a field in EngageBay where the password should be stored.

Form interface for password settings. The checkbox for Send new users passwords back to your CRM after import is checked. Below, a text box labeled Return Password Field features the word Password. Integrate with Keap or Infusionsoft efficiently using HTTP Posts.

After a new user is created, their automatically generated password will now be saved back to their contact record, and you can use a merge field to include it in an email. The username will be the contact’s email address.

Was this helpful?