Creating Enrollment Automations With Zapier or API


Caleb Belanger
Last Updated: 5 months ago

Did you know that you can create enrollment automations for Arist courses based off of activity in other systems? This guide will walk you through setting up a course automation using Zapier or via API.

Setting Up Automations With Zapier

What is this for?

We can use Zapier to hook up data or activity in other software to Arist to trigger enrollments in SMS, Whatsapp, or Email courses (Does not apply to Teams or Slack... yet.)

Example use cases:

  • Your learners fill out a Qualtrics Survey or Google form. Then that data and action triggers an enrollment.

  • Some action happens in one of your external systems that Zapier connects to, like Salesforce, and the data hits our API enrollment endpoint to trigger an enrollment.


Steps to set this automation up:

  1. Log into your Zapier account.

  2. You can copy and use this template in Zapier: https://zapier.com/shared/f3db2dbc8a5e3b7afaad55f41f837b314032b72b

  3. Choose the Trigger

    1. If the Software you are using to trigger an enrollment is owned by the you, then you will need to login and connect your software to Zapier if you haven't already.

    2. Take an example action and validate the action provides the data needed to trigger an Arist course.

  4. Create the Arist Action with a webhook setup

    1. Set up your course schedule for which you want to trigger enrollments.

    2. Then fill out the distribution ID and org ID accordingly (which you can grab from your Arist dashboard). Copying the link from the schedule you want will give you the ID which should look like this:

      https://arist.app/orgs/[YOUR-ORG]/courses/43ba9df7-b716-40c1-b065-860954d13f89 <- DISTRIBUTION ID

      Your org ID can be found in your Arist Dashboard under Settings > Organization

    3. Add in fields for data that is being collected in the form or from the software activity (reference the API guide below to do so).

    4. Add the API key

  5. Test the automation: it’s successful if the test trigger activity creates the enrollment!


API Endpoint Guide

To make a SMS or WhatsApp enrollment via the Arist API several things are required:

  1. You will need to POST the organization_id, api_key, distribution_id, the user’s address_value, and the user’s address_type to the Arist API endpoint

  2. Optional params: delivery_time, timezone, country_code, first_name, last_name, email

  3. the Arist API will return the created enrollment_id upon success, and the user will get the activation message

Example:

curl -X POST \\
  -H "Content-Type: application/json" \\
  -d '{
    "organization_id": "UUID_here",
    "api_key": "UUID_here",
    "distribution_id": "UUID_here",
    "address_value": "1234567890_example",
		"address_type": "sms",
		"delivery_time": **"**2023-07-31 17:52:58 UTC**"**,
		"timezone": "Eastern Time (US & Canada)",
		"first_name": "Bruce",
		"last_name": "Wayne",
		"email": "bruce.wayne@email.com"
  }' \\
  <https://arist.app/ext_api/v1/enrollments/create>

Details:

  • API endpoint: https://arist.app/ext_api/v1/enrollments/create

  • Required params:

    • organization_id (required) - Arist will provide this id

    • api_key (required)- Arist will provide this key

    • distribution_id (required) - the specific distribution for the course you want to enroll the user in (NOT the course_id)

    • address_value (required) - the SMS/WA phone number or email address where you want to send the course

    • address_type (required) - specify what type of address the address_value field contains, eg:

      • sms

      • sms_whatsapp

      • email

  • Optional params:

    • delivery_time (optional) - string value datetime when the enrollment should be delivered. (We’ll convert the string to datetime.)

      • **"**2023-07-31 17:52:58 UTC**"**

    • timezone (optional) - string value of the user’s timezone, will overwrite existing values for existing users, eg:

      • "Eastern Time (US & Canada)"

      • "Pacific Time (US & Canada)"

      • "Central Time (US & Canada)"

    • country_code (optional) - this is only for SMS/Whatsapp (i.e., phone numbers) and the default is 1 if you don’t submit a value

    • first_name (optional) - string value of the user’s first name, will overwrite existing values for existing users

    • last_name (optional) - string value of the user’s last name, will overwrite existing values for existing users

    • email (optional) - string value of the user’s email (not a sending address), will overwrite existing values for existing users

  • Note: if you can locate the user or the address you will use the existing user and address. If the user or address is new, then you will create a new user and address.

Setting Up Automations Via API

You can trigger enrollments in courses or nudges to start by hitting our our API. We currently have a non-UI feature that allows Administrators to set up courses, or learning journeys to go out, based on activity triggers we recognize from within Arist (e.g. - course X completion) or from an outside system (e.g. - change in title.)

Examples of how this has been used by our customers:

  1. Trigger from external system activity (no UI):

    1. On our website, we set up a marketing automation where when someone puts in their phone number on our landing page, it calls our API and sends us the number, and we will automatically create their user and create an enrollment in a sample course. They get their course within minutes

    2. For a For-Good customer using Arist for research, we set up an automation so that when employees submit a Qualtrics form, we create an enrollment for them in a course.


    In order for external triggers to work, we have to have these systems “call” or contact our API. For the above two use cases, we used Zapier as an intermediary third-party that helps external systems “call” or connect to our API and trigger these enrollments. Zapier alone is pretty powerful for connecting general B2B software with Arist, but not so for HRIS and LMS systems.


  2. Trigger from Internal Arist activity (no UI):

    1. For Google Cloud, we set up a series of courses linked together so that when a learner completes Course 1, they go onto course 2, and so on. They have no admin control over this order once launched, or tracking from course to course (just regular analytics.) We’re doing this by recognizing when an enrollment is marked ‘complete’ and then that calls the same endpoint to start a new one.

It is important to note that this functionality is still considered to be in Beta and future improvements are coming. As it stands now, if you're interested in working with us to call this API endpoint, or use Zapier as an intermediary third-party for the integration, we can set an automation above but please note that you will have no UI to view or manage it once created (for now).


Was this article helpful?