Workflows allow you to add automation to your VolunteerHub site.  

TABLE OF CONTENTS


Introduction to Workflows

Workflows is a page within the Admin View of VolunteerHub which consolidates the creation of workflows.

Figure 1: From Workflows you can create new Workflows or browse existing ones.


Workflows are generally used for building an onboarding path for new volunteers or placing members of external groups (e.g. employees of a company) into their User Group.


Creating a Workflow

    1. Navigate to the Workflows page

    2. Click 'Create New Workflow'

    3. Give the Workflow a name

    4. Choose a Trigger

    5. Select Additional Trigger Settings (optional)

    6. Select an Action

    7. Select Action Settings

    8. Add More Actions or Save

9.  The newly created Workflow is now active, but can be deactivated if necessary.


Active:

Deactivated:


Explanation of Triggers

TriggerExplanationExample
Background Check API

This is only used by Support when configuring a background check integration and should never be used by an administrator.


Hours Recorded

A user receives hours for an event.

This trigger can be tied to all users or just users who are members of a specific User Group.

Initialize User

This trigger applies as a new user account is being created.

Most commonly used as part of an onboarding process to place new users into User Groups.

Landing Page VisitedThis trigger executes the action any time a user visits the specified landing page.  There is an option within the trigger to only apply the action if a user is also a member of a specific User Group.This is used for placing users in groups for their external groups (e.g. a company or church - Example B), or for marking a volunteer as 'approved' following an onboarding process (see Example D).
New User Account CreatedThis trigger applies after an account has been created.Sending an email to the volunteer or an administrator.
User Achieves Number of HoursA user achieves a cumulative total of a certain number of hours.Sending emails or assigning to a 'core' volunteer group.
User has a Birthday
Happy Birthday emails
User Joins User GroupAn existing user joins (or is placed into) a User Group.Most commonly used to tie User Groups together.  E.g. If a user joins the checkbox group for "I am interested in working with children", then also add them to the "Needs Background Check" User Group.
User Registers for EventThis only triggers if a user registers themselves within Volunteer View or Kiosk, it does not include admin methods of registration.Emailing an alternative administrator (in addition to the Event Contact).

Creating branching onboarding processes based on which location is chosen for an orientation.


NOTE: Only one trigger may be used per Workflow.  For example if you'd like a Landing Page to trigger both for a user visiting the page as well as a new user account being created--two workflows would be needed.
New User Account Created vs Initialize User:
    
    If you want something to happen right after an account has been created, it would be New User Account Created as the trigger. An example would be that you'd want that user to receive an email.  That action of the email happens as a result of the account now existing.
    
    If you want something to happen as part of the creation of a new user, it would be Initialize User as the trigger.  An example would be, all new users should be placed into a particular User Group.  That action is already happening while the account is being created.
    
This distinction is most important for organizations that have the Configurable Forms module or Background Check integration.


Explanation of Actions

Add User to User Group:

  • This places the users into the specified user group when the trigger is active.
  • This is the most common action.

Remove User from User Group:

  • This removes the user from the specified user group when the trigger is active.
  • This is primarily used within an onboarding process, to remove a user from an onboarding group and pairs well with an action adding the user to an approved User Group (see Example D).

Email User:

  • Send to triggering user
    • This sends the constructed email to the volunteer who triggered the Workflow. Most commonly used to email a welcome or instructions either to new users, or newly approved users.
  • Send to selected user

    • This allows for selecting any user (most likely an administrator) in the system for the constructed email to be sent to. Most commonly used to alert an administrator to a new user in their group or that the admin needs to complete a task (e.g. run a background check).

  • Send to organization contact

    • The Organization Contact is likely the primary Superuser on a VolunteerHub site (found under Settings). Most commonly used to alert the primary Superuser whenever a new account is created.

  • Include link to triggering user

    • This includes a hyperlink within the email to the profile of the user who triggered the Workflow; only relevant when email is directed to an administrator.

Redirected to Background Check:

  • This is only used by Support when configuring a background check integration and should never be used by an administrator.
NOTE: Multiple actions may be used within a single Workflow.


Sample Workflows

Example A:  Building a Site Wide Onboarding Workflow

This workflow establishes a Site Wide onboarding process to place all new users into User Groups for a phone screening and orientation.


Example B: Assigning External Volunteers to their User Group

This workflow places any user who accesses the page (new or existing) into the Bank of America user group.  The trigger 'Landing Page Visited' would be used in this instances because there may be existing volunteers who work at Bank of America.  They wouldn't be creating new accounts but should be placed in the BOA user group.


NOTE: Site Wide workflows would still be in effect for any landing page specific workflows.  If Examples A & B were from the same VolunteerHub site, users creating account via the Bank of America landing page would still be placed in the Phone Screening and Orientation user groups.  


Example C: Building an Onboarding Workflow for the Default Landing Page 

This workflow places all new users created from the default landing page into an Orientation user group.  Utilizing Advanced Permissions, the Orientation group can be set set to allow users to only view and sign up for orientation events.

Attaching the onboarding workflow to the default landing page is often done when only individual volunteers (not external group members) need to go through onboarding.

Example D: Approving New Applicants

This workflow is for approving volunteers who need an orientation.  This assumes that orientation is the first event that a new volunteer would be receiving hours for, and is the final (or only) step in their onboarding.  After they have received their hours, they are moved to an approved group, which allows them to register for more events.  If orientation is not the final step in their onboarding, the workflow could be set to move them to a User Group denoting that step.


Workflows within Landing Pages

Though the Workflows page allows for creating Workflows associated with a Landing Page, the Landing Page edit dialogue also contains limited workflow functionality.

Figure 2: The Behavior area decides which events should be displayed on the page: either associated with an Event Group and/or with reservations for a User Group.  For more information about Landing Page behaviors, click here.


Figure 3: The Workflow section is an alternative way to create Workflows within the Landing Page.


This workflow (Figure 3) was created through the Workflows page, but display as the settings within the corresponding Landing Page.  This interchangeability allows for creating Workflows in either location and them being present in both.


Recommended Workflows

   

  1. Add all new users into a 'site-wide new users' group

Trigger: Initialize User

Landing Page: (Sitewide)

Action: Add User to User Group: choose User Group

 

  1. Add users who create a new account on a landing page into a 'New users created on that page' group

Trigger: Initialize User

Landing Page: choose landing Page

Action: Add User to User Group: choose User Group

 

  1. Add users who go to a landing page into a 'visited LP' group

Trigger: Landing Page Visited

Landing Page: choose Landing Page

Action: Add User to User Group: choose User Group

 

  1. Use a landing page to remove users from a group

Trigger: Landing Page Visited

Landing Page: choose Landing Page

(Optional condition: "And user is a member of user group")

Action: Remove User from User Group: choose User Group

 

  1. Send email to users when they are created (site-wide)        
    - Note: The standard Account Created email is still going to be sent, which provides their username. 

Trigger: New User Account Created

Action: Email User

(Additional use case: Format the email as an Out-of-Office notification to be temporarily used if there will be delay in processing their account.  Remove the message or deactivate the workflow upon the Admin's return).

 

  1. Send email to users when they are created on a specific landing page

Would have to have Workflow #2 in place also.

Trigger: New User Account Created

And user is a member of user group: {the group from Workflow 2}

Action: Email User

 

  1. Send email to users when they are added to a user group
    - Note: this is only for existing users… for new users you would need Workflow #8

Trigger: User Joins User Group: choose User Group

Action: Email User

 

  1. Send email to users who join a group when they create an account
    (For new users. Example: want to explain court-ordered process to users who need court-ordered hours)

Trigger: New User Account Created

And user is a member of user group "I need court-ordered volunteer hours"

Action: Email User

 

  1. Remove a user from a user group when hours are recorded
    (example: want to remove them from 'New Volunteers' once they get hours)

Trigger: Hours Recorded

And user is a member of user group "New Volunteers"

Action: Remove User from User Group "New Volunteers"

 

  1. Send email to users when they have hours recorded and are part of a specific user group 

Trigger: Hours Recorded

And user is a member of user group "_____"

Action: Email User

 

  1. Combination of #9 and #10

Trigger: Hours Recorded

And user is a member of user group "New Volunteers"

Action: Remove User from User Group "New Volunteers"

Action: Email User

 

  1. When user joins Group A also add them to Group B 
    (Existing users only. Ex.: When user joins "I want to work with children" add them to "Needs Background Check")

Trigger: User Joins User Group

Action: Add User to User Group

 

  1. When new user creates account in Group A also add them to Group B 
    (New users only. Ex.: When user is created and joins "I want to work with children" add them to "Needs Background Check")

Trigger: New User Account Created

And user is a member of user group "I want to work with children"

Action: Add User to User Group


14. Email Organization Contact any time a new user creates an account

    (New users only. Ex.: When any new user account is created, primary Superuser receives an email)


Trigger: New User Account Created

Action: Email User (Send to organization contact)


15. Email a particular administrator when a new user is created in a user group

    (New users only. Ex.: When a user creates an account and checks the box that they are 'Interested in working with children', email Bill to let him know he has to run a background check)


Trigger: New User Account Created

And user is a member of user group "I am interested in working with children"

Action: Email User (Send to: 'Bill')


16. Email a particular administrator when an existing user is added to their group

(Existing users only. Ex.: When a user has been onboarded and is added to the 'Approved Docents' User Group, email Sally to let her know)


Trigger: User Joins User Group

User Group: Approved Docents

Action: Email User (Send to: 'Sally')


17. Add a user to a User Group when they achieve # volunteer hours


Trigger: User Achieves Number of Hours (#)

(optionally set for a specific User Group)

Action: Add user to User Group: *selected group*

(optionally send congratulations email to volunteer and/or email an administrator)


Video Guides


Onboarding Email Workflows

This video covers: 

  • Getting an email when a new user creates an account
  • Emailing new users a 'Welcome' email
  • Emailing an additional administrator to complete their portion of an onboarding
  • Emailing an additional administrator to let them know they have a new volunteer

 

Volunteer Milestones Workflows

This video covers: 

  • Categorizing volunteers who meet a milestone of volunteer hours
  • Recognizing volunteers
  • Tracking Shadowing hours for the purpose of Onboarding