Skip to content

MailPoet Automations

How to Unsubscribe a MailPoet Subscriber When a Webhook Is Received

When somebody opts out in another system — a CRM, a billing tool, a support desk — your MailPoet lists should follow. Zapify can unsubscribe them the moment that system sends a webhook, using the free A webhook is received trigger and the Unsubscribe a subscriber action. MailPoet is a Zapify PRO integration.

What this automation does

The automation is one trigger plus one action:

  • Trigger: A webhook is received (WEBHOOK_RECEIVED, Webhooks)
  • Action: Unsubscribe a subscriber (MAILPOET_UNSUBSCRIBE, MailPoet)

When the outside service sends the person's email address to your endpoint, Zapify unsubscribes them from every MailPoet list.

The email field is required

Unlike the other MailPoet actions, Unsubscribe a subscriber does not fall back to the user the run is for. An action that cuts somebody off completely should never act on whoever happened to trigger it, so you must insert the email from the webhook.

If they are already unsubscribed, or unknown

Nothing is changed and the run is recorded as skipped with the reason, not as a failure.

PRO feature

MailPoet is a Zapify PRO integration. The MailPoet action used in this automation needs an active Zapify PRO licence.

No Connection needed

MailPoet runs on your own site rather than somebody else's server. There is no API key to paste and nothing to set up under Settings → Connections — the integration only needs MailPoet installed and active.

Before you start

  • MailPoet installed and active.
  • An outside service that can send a webhook containing the person's email address, or any tool that can POST JSON.

How to build the automation

Step 1: Create a new automation

  1. In the WordPress admin, go to Zapify → Automations.
  2. Click Add New to open the builder.
  3. Name it clearly, such as Unsubscribe people who opt out elsewhere.

Create a new automation

Step 2: Add the "A webhook is received" trigger

  1. Click Add Trigger.

Add a trigger

  1. Choose Webhooks as the app.

Select Webhooks as the trigger app

  1. Select the trigger A webhook is received.

Select A webhook is received

Copy the endpoint URL the builder shows and paste it into the sending service's webhook settings. Then send one test delivery while Listen mode is on, so Zapify captures the payload and lists its fields as tokens. See Zapify Webhooks for how endpoints, sources and Listen mode work.

Step 3: Add the "Unsubscribe a subscriber" action

  1. Click Add Action.

Add an action

  1. Choose MailPoet as the app.

Select MailPoet as the action app

  1. Select Unsubscribe a subscriber.

Select Unsubscribe a subscriber

Step 4: Configure the action

Field Required What it does
Subscriber email Yes Insert the token for the email field in the webhook payload.

Step 5: Set the steps Live and save

Each trigger and action has its own Live / Off / Draft switch. A new automation starts as a Draft and does nothing until its steps are Live.

  1. Set the trigger and every action to Live.
  2. Click Save.

Set the automation live

Step 6: Test it

Send a test delivery with the email of a test subscriber. Check that their status in MailPoet → Subscribers is Unsubscribed, or open Zapify → Logs to confirm the run.

Tokens you can use

The A webhook is received trigger always offers Received at, Raw body, Event type and External ID. Once you have captured a sample with Listen mode, every field from that payload appears as a token too. After the action runs it exposes Subscriber ID.

Conclusion

With the free A webhook is received trigger and the Unsubscribe a subscriber action, an opt-out anywhere reaches MailPoet. To react to the same webhook with a notification, see sending an email when a webhook is received.

FAQs

Is this free in Zapify?

Receiving webhooks is free (up to three sources). Unsubscribe a subscriber is part of the MailPoet PRO integration and needs an active Zapify PRO licence.

Does it delete the subscriber?

No. Their status becomes Unsubscribed and they leave every list, but the record stays in MailPoet.

Can they be subscribed again later?

Not by Zapify. The Add a subscriber to lists action skips anyone who has unsubscribed. They can re-subscribe themselves through a MailPoet form.

How do I keep the endpoint safe?

Treat the URL as a credential and turn on Require a signature on the trigger if the sending service supports signing.

Do I need to write any code?

No. Everything is configured visually.

Was this page helpful?