How to use activation and deactivation webhooks

In this article:

There are many different apps that can integrate with Kajabi. The simplest way to accomplish this would be using Zapier. However, if the app you hope to integrate with Kajabi is not available on Zapier, you can use Activation and Deactivation URLs to accomplish the same thing.

These URLs make it so that if an action is complete in one app, another action is automatically triggered in your Kajabi account. For example, adding a contact to InfusionSoft using an Activation Webhook URL for a specific Offer in your Kajabi account will automatically grant the contact access to that Offer in Kajabi.

If the Deactivation Webhook URL of a specific Offer is used, it will revoke access to all Products associated with that Offer.

Each offer has an Activation and Deactivation Webhook URL. To find these:

  • Open the Products tab from the dashboard.
  • Select Offers and begin editing and Offer.
  • Click the More Actions dropdown under the Offer title.
  • Click Webhooks:

Where to find Offer webhooks.

Activation Webhook URL

Normally, when you grant an Offer to a user it will send them an Offer Grant Confirmation email. This is an email automatically sent by Kajabi letting the user know what they have purchased or been granted. However, this email will not automatically send when the Offer is granted via Activation Webhook URL.

In order to send the Offer Grant Confirmation email when using the Activation Webhook URL, simply add this text to the end of your Activation Webhook URL: ?send_offer_grant_email=true.

Here's an example:

An example payload would like like:

{ “name”: “John Doe”, “email”: “”, “external_user_id”: “ext_123", }

Deactivation Webhook URL

When setting up this type of integration, you will use an HTTP POST. This will accept the Webhook URL as well as any parameter (or fields) included in the information being transferred.

For instance, if you need to Deactivate an Offer from a user's account, you will input the Deactivation Webhook URL when you are asked for the POST URL and replace with ~external_user_id~:

We do this because in any third party application, they will have their own name to identify the contact or member ID. When their information is transferred to Kajabi, we store that ID number as an external_user_id because it is a user ID number from an external platform.

Outbound Webhooks

An Outbound Webhook can be used when you would like to send contact information to a third party app after a purchase has been made in Kajabi. For this, third party apps will provide a Purchase Webhook URL.

Once you obtain the Purchase Webhook URL from the third party app:

  • Copy the Purchase Webhook URL.
  • Paste the Purchase Webhook URL in the Purchase Webhook URL field in Kajabi:

An example payload of an outbound webhook would like this:

Member payload:

{ id:, email:, name:, first_name: member.first_name, last_name: member.last_name }

Offer payload:

{ id:, title: offer.title }

Any extra checkout fields:


{:offer=>{:id=>42, :title=>"Special Offer"}, :member=> {:id=>99, :email=>"", :name=>"Joe Smith", :firstname=>"Joe", :lastname=>"Smith"}, :extracontactinformation=>{}, :affiliateconversion=>{}, :optin=>false, :trial=>false}


Affiliate payload:

{ id:, user: { id:, name:, email: } }

Contact support or access our 24/7 Live Chat:

Contact Support Live Chat

Need Help? Live Chat with Us.