Overcoming Kajabi’s limited api webhooks and automations with a piped email automation

If you use Kajabi and you have wanted to setup some kind of external database to track progression and/or some kind external automation, you will find that the Kajabi API and the Kajabi Webhooks and the Kajabi Automations that they provide are limited in nature.

Problem: We wanted to provide a customized certificate (with their own name on it) after they had completed and passed 15 of our courses. Kajabi limitations mean that we could not accomplish this, and it would have to be tracked and done manually. Kajabi only allows for a generic certificate (not personalized) at the completeion of each course, and there was not way to do one certificate after the completion of multiple courses.

The solution then (I thought) would be to use Kajabi API or Webhooks to send an event (“user passed a course”) to an external database and then I can could create a custom script to check when they had passed all 15 courses, and then generate the certificate for them. However, neither the API nor the Webhooks allow you get information about users passing a course, so this was not going to work either.

Fortunately, kajabi’s automations had one “trick” that we could use to get the information we needed.

Solution: We ended up using an Automation of “Send Email” to a special email address that we created. This special email address uses a pipe to redirect the email directlu into a PHP program that will then parse the email, pull the information about user and course passed and then store that information in a database. So now we have an external database that tracks all courses passed by users, and I wrote another script that checks the database daily and looks for users that have passed all 15 courses, and then sends them a certificate.

SUMMARY:
So lets use example course called WIDGETS 101 with a FINAL EXAM ASSESSMENT:
– go to Marketing and then Automations and ADD NEW AUTOMATION
– choose WHEN ASSESSMENT IS COMPLETED and choose FINAL EXAM FOR WIDGETS 101
– choose THEN SEND AN EMAIL
– select send the email TO MY TEAM and use special piped email address you setup like kajabi-workflow@mydomain.com
– customize the SUBJECT to: EXAM PASSED WIDGETS 101
– customize the BODY to: start|EXAM PASSED|WIDGETS 101|{{first_name}}|{{last_name}}|{{email}}|end
– add a CONDITION of IF PASSED ANY OF THESE ASSESSMENTS and choose FINAL EXAM FOR WIDGETS 101
– APPLY the conidtion and SAVE the automation

The PHP script can now receive the email and parse the subject and body and get the info it needs to store in database.