1. Home
  2. Documentation
  3. Marketing Automation
  4. Events & Webhooks

Events & Webhooks

Events & webhooks allow you to perform some behind-the-scenes magic to automate your marketing efforts. Once you start using webhooks to automate email marketing you will get hooked.

What Is An Event?

An event is any action taken by someone inside your plugin/theme.
You have control over what that action will be, and you can pick the user actions you’d like to use out of a list of actions Freemius currently supports for all plugins and themes.
We have found the actions on this list to be the most useful ones to use, but due to customer demand we plan to turn it into an open list, so that you will be able to add any action you want to it. That way, in case you think of an action that is not on the list, but may be very useful for your product to use – you can simply add and use it.

What Is A Webhook?

A webhook is a very useful way to implement a reaction to an event, in real time. It can provide data about an action to the Freemius API, which will, in turn, trigger another action. In the case of Freemius that action will be to send out an email to the user who performed the defined action.

How Can I Use Webhooks?

Let’s use an example where you want to use the Freemius webhooks mechanism to decrease the abandonment rate of your product.
You can leverage it as a trigger to automatically send an email to any user who deactivates your plugin/theme.
In the email you can to ask your user if he/she are having any issues with your product and offer assistance.

For now, the emails are not customizable. We are working on a templates engine that would probably use Twig for email customization.

You can customize the ‘From’ email addresses of the email messages sent by Freemius on your behalf.

Types of Events

This is a list of all the types of events we currently send. We may add more at any time, so you shouldn’t rely on only these types existing in your code.

You’ll notice that these events follow a pattern: resource.event. Our goal is to design a consistent system that makes things easier to anticipate and code against. NOTE: Events that occur on “sub” resources like developer.billing do not trigger the parent’s update event.

Event
addon.free.downloaded Occurs whenever a free version of an add-on is downloaded.
addon.premium.downloaded Occurs whenever a premium version of an add-on is downloaded.
coupon.created Occurs whenever a coupon is created.
coupon.deleted Occurs whenever a coupon is deleted.
coupon.updated Occurs whenever a coupon is updated.
developer.billing.updated Occurs whenever a the billing information of the developer is updated.
install.activated Occurs whenever a user is opted-in.
install.charset.updated Occurs whenever an installation charset is updated.
install.connected Occurs whenever a user opt-in after opting out from usage tracking.
install.deactivated Occurs whenever the plugin is deactivated.
install.deleted Occurs whenever a user delete the installation account.
install.disconnected Occurs whenever a user that opted-in manually opt-out from usage tracking.
install.installed Occurs whenever a user is opted-in (triggered after before install.activated).
install.language.updated Occurs whenever an installation language is updated.
install.ownership.candidate.confirmed Occurs whenever an account ownership transfer candidate confirms the transfer.
install.ownership.completed Occurs whenever an account ownership transfer is complete.
install.ownership.initiated Occurs whenever an account ownership transfer is initiated.
install.ownership.owner.confirmed Occurs whenever an account ownership transfer is confirmed by the current installation account owner.
install.plan.changed Occurs whenever an installation plan is changed.
install.plan.downgraded Occurs whenever an installation plan is downgraded to the default plan (if the default plan is free, then when downgraded back to the free version).
install.platform.version.updated Occurs whenever an installation WordPress version is updated.
install.premium.activated Occurs whenever the premium code version of the plugin is activated.
install.premium.deactivated Occurs whenever the premium code version of the plugin is deactivated.
install.programming_language.version.updated Occurs whenever an installation PHP version is updated.
install.sdk.version.updated Occurs whenever an installation Freemius WordPress SDK version is updated.
install.title.updated Occurs whenever an installation’s site title is updated.
install.trial.cancelled Occurs when a trial is cancelled.
install.trial.expired Occurs when a trial is expired.
install.trial.extended Occurs whenever a trial is manually extended.
install.trial.plan.updated Occurs whenever a trial plan is updated.
install.trial.started Occurs when a trial is started.
install.uninstalled Occurs whenever the plugin/theme is uninstalled.
install.updated Occurs whenever an installation data is updated (in addition to specific install update events).
install.url.updated Occurs whenever an installation’s home URL is updated.
install.version.downgrade Occurs whenever the plugin/theme is downgraded to a lower version (not related to the plan).
install.version.upgraded Occurs whenever the plugin/theme is upgrade to a newer version (not related to the plan).
license.activated Occurs whenever a license is activated (also triggered automatically after a successful plan upgrade).
license.cancelled Occurs when a license is cancelled.
license.created Occurs whenever a license is created.
license.deactivated Occurs whenever a license is deactivated.
license.expired Occurs when a license expires.
license.extended Occurs whenever a license is extended by the developer from the dashboard.
license.ownership.changed Occurs whenever a license ownership is changed by the developer from the dashboard.
license.quota.changed Occurs whenever a license quota is changed by the developer from the dashboard.
license.updated Occurs whenever a license is updated (in addition to specific license update events).
member.created Occurs whenever a developer is added as a team member.
member.deleted Occurs whenever a member is removed from a team.
member.updated Occurs whenever a team member role is updated.
payment.created Occurs whenever a successful payment is created.
payment.refund Occurs whenever a payment refund is processed.
plan.created Occurs whenever a plan is created.
plan.deleted Occurs whenever a plan is deleted.
plan.lifetime.purchase Occurs whenever a user purchases a lifetime package (doesn’t matter which plan).
plan.updated Occurs whenever a plan details are updated.
plugin.addresses.updated Occurs whenever email addresses are updated.
plugin.created Occurs whenever a plugin/theme is created.
plugin.feature.created Occurs whenever a plan feature is created.
plugin.free.downloaded Occurs whenever a free plugin/theme code version is downloaded.
plugin.premium.downloaded Occurs whenever a premium plugin/theme code version is downloaded.
plugin.version.deleted Occurs whenever a deployed version is deleted.
plugin.version.deployed Occurs whenever a new plugin/theme version is deployed to Freemius.
plugin.version.release.suspended Occurs whenever a deployment release is suspended.
plugin.version.released Occurs whenever a deployment is released.
plugin.version.updated Occurs whenever an existing version is re-deployed to Freemius.
pricing.created Occurs whenever a new pricing is added to a plan.
pricing.deleted Occurs whenever one of the plan pricing is deleted.
pricing.updated Occurs whenever a plan pricing is updated.
subscription.cancelled Occurs whenever a subscription is cancelled.
subscription.created Occurs whenever a subscription is created.
subscription.renewal_reminder.sent Occurs whenever an annual renewal reminder email is sent (30 days before the automatic renewal).
user.billing.updated Occurs whenever a customer billing information is updated (e.g. address, VAT ID, company name).
user.created Occurs whenever a new user installs the plugin/theme and opt-in.
user.email.changed Occurs whenever a user update their email address.
user.email.verified Occurs when a user email is verified (usually via email confirmation). If you need to use this event, please contac us first via [email protected]
user.name.changed Occurs whenever a user update their name.
webhook.created Occurs whenever a webhook is created.
webhook.deleted Occurs whenever a webhook is deleted.
webhook.updated Occurs whenever a webhook is updated.