Category Archives: Integrations

Sending Slack Notifications from Decision Trees

slack+zingtree

Slack has become the go-to collaboration platform of choice for so many companies, and people are also using it to track events. We have also recently adopted Slack and wanted a way to send messages to Slack channels whenever something occurred in one of our own Zingtrees.

So, as part of our mission to make Zingtree interoperable with as many popular platforms as possible, we’ve added this capability to our most recent release.

How it Works

When an end-user visits a node in one of your decision trees, you can have that node trigger a custom Slack notification. Once you set up Slack for your organization, any node in any tree can send a message to Slack.

Notifications in Slack look like this:

Slack notification from Zingtree

Setup

First, you need to give your organization access to the Slack app:

  1. Go to Account > My Apps.
  2. Click Slack under Add Apps.Add Slack to Zingtree
  3. Slack will ask you to authorize Zingtree access. Select the Slack channel you want to receive notifications (“post to”), then click Authorize.Authorizing Slack
  4. You will be returned to Zingtree, and Slack will appear in your list of apps.Slack installed in Zingtree

Now you can configure any node in any tree to send a custom Slack notification:

  1. Pick a tree, and go to the Overview tool.
  2. Pick a node, and click the Edit button.
  3. Locate the Send Message To option, and select Slack.Slack messaging added to a Zingtree Node.
  4. Enter a message that will be sent to your Slack channel.  You can also include any form variables (i.e. #name#).

Now, Preview your tree, and visit the node where you just added a Slack message. The custom message will appear in Slack, along with a link to the session transcript:

Slack notification

 


 

Any questions about this, or any of our other integrations? Please contact us anytime.

This article was originally published on April 20, 2016.

Integrating a Decision Tree Transcript into CRM (and Other Apps)

doodle_banners

Beyond troubleshooting and support, Zingtree makes a handy interactive front-end for getting people to the right page on your website. We consistently see our customers building trees for sales prospecting, medical appointments, loan qualification, hiring and other environments where a little bit of automated filtering goes a long way. Plus, Zingtrees are a great means for information gathering, too!

We also get requests for integrating Zingtree within various back-end platforms – most notably, CRM. Often, when a customer’s data gets imported into another system, you’ll want the Q&A transcript of their Zingtree session attached.

We’ve created a Simple Sales Funnel demo tree and a basic back-end script in the Zingtree Gallery so you can see a working example.

Here’s how to pass a Zingtree Q&A transcript along to ANY system:

1. From your tree, create a link node to your contact form (i.e. contact_form.php), with a URL like this:

contact_form.php?session_id=#session#

2. In contact_form.php, add this JavaScript right above the ending </body> tag:

<script
id="zingtree_field_id"
value="session_data"
src="//zingtree.com/api/add-session-data-to-form.js">
</script>

3. In the form itself, add a hidden field with an id of “session_data”. The name can be whatever you like. Example:

<input id="session_data" name="zingtree_stuff" type="hidden" value="" />

That’s it!

Under the hood: When the form is loaded, the add-session-data-to-form.js script reads the session_id parameter, then loads the session transcript into the hidden field with the id=”session_data”.


BONUS:

Rather than having a field that must have an id of “session_data”, you can also specify the ID of the field that you want to insert Zingtree data into. This is especially helpful for Salesforce or other CRM apps that generate forms for you.

For example, if you added a multi-line text field to your CRM system form with an ID of “my_data_field”, you could use this piece of code instead:

<script
id="zingtree_field_id"
value="my_data_field"
src="//zingtree.com/api/add-session-data-to-form.js">
</script>

 

This article was originally published October 5, 2016.

Announcing Decision Trees with Logic Nodes

In order to make decision trees that can help solve real world problems, sometimes you need the ability to do more than just choose a path based upon a finite set of choices. For these reasons, we’ve introduced Logic Nodes into Zingtree.

In addition, we’ve found that many of our customer’s integrations are passing data variables into Zingtree, and there are situations where they would like to act on the value of those variables. Logic Nodes make this easy.

If you’re an existing Zingtree author, Logic Nodes replace Scoring Nodes from previous versions. Any tree that is using Scoring Nodes is automatically migrated to this new system, without losing any functionality or you having to do any updating of your trees.

Here’s How Logic Nodes Work

When you edit or create a Logic Node, you’ll see something like this:

Logic Nodes test the value of your Zingtree variables with a series of rules and jump to a node when a condition is met. The rules are applied in order, so once a rule condition is met, the node assigned to the rule opens next. You can also assign a default node to jump to in case no rules apply.

In the example above, if the variable fruit equals banana, then Zingtree will open node #8, the “Banana” node. If fruit is watermelon, then the default “Something Else” node opens.

About Variables

Variables can be numeric or text, and the comparisons work for either data type. You can bring variables into your trees in several ways:

Note: Your choice of variables is shown in a drop-down list. If Zingtree hasn’t encountered a variable yet in one of the above scenarios, then it won’t appear as an option.

Editing Rules

When editing your Logic Nodes, you can edit your rules as follows:

  • Reorder rules by dragging them up and down with this tool: Reorder Logic test
  • Delete a rule by clicking on this: Delete logic test
  • Select any existing variable from the Variables drop-down.
  • Select an operator (=, ≠, <, >, ≤, ≥ ).
  • Enter a value to perform the test upon.

You must also enter a default node to jump to if no conditions are met.

Conclusion

Zingtree Logic Nodes give your decision trees a bonus option for adding extra intelligence to your processes and troubleshooters. Do you have a cool application for Logic Nodes you’d like to share with us? Reach out and tell us your story!

Configuring Okta Single Sign-on

security-blog

If you’re looking for a way to get started with securing your trees via Single Sign-on, you’ll first need to have an Identity Provider to manage your logins. Okta is a great service – it’s easy to set up, and very popular.  This article will show you how to get Okta and Zingtree working together.

Set Up Overview

Configuring SSO requires Okta and Zingtree to share information with each other:

  1. Okta needs information about Zingtree.
  2. Zingtree needs information about your Okta.

Once you have Zingtree and Okta successfully working together, you can mark any of your trees as “SSO restricted” via the Zingtree Settings tool to require a login to get access.

For the setup, we recommend keeping two browser tabs open – ope in Okta, and one in Zingtree.

Configuring Okta

To start, in the Zingtree top menu, go to Account, Single-Sign-on. You’ll see the parameters (specific to your organization) to share with Okta:

Let’s use this information to set up the Okta side:

  1. If you haven’t already created a free Okta account, do it now.
  2. Go to the Okta Dashboard.
  3. Click Add Applications under Shortcuts.
  4. Click Create New App.
  5. Choose SAML 2.0 as the sign-on method, and click Create.
  6. In the General Settings, give your application a name (like “Zingtree”), and click Next.
  7. Under SAML Settings, configure it as shown below.  For the Single Sign-on URL, use Zingtree’s Login URL. For the Audience URI, use Zingtree’s Entity ID.

  8. Click Next to finish the SAML setup.

Configuring Zingtree

First, let’s get some information from Okta:

  1. In Okta, click Applications from the top menu, and go to Applications.
  2. Click the new Zingtree application we created.
  3. Click Sign on, then View Setup Instructions. Keep this page open in a browser tab.
  4. Now go back to the Zingtree tab, and click Edit Identity Provider Data.
  5. For the Zingtree Entity ID, use the Okta Identity Provider Issuer.
  6. For the Zingtree Login URL, use the Okta Identity Provider Single Sign-On URL.
  7. Copy the Okta certificate into the Zingtree certificate field.
  8. Make sure Enable access restrictions on specified trees is checked in Zingtree.
  9. Click Save Identity Provider Settings.

Testing Your SSO Setup

Once you’ve set up your Identity Provider and Zingtree for SSO, you can test from Zingtree as follows:

  1. In Zingtree, go to Account, Single Sign-on.
  2. Click the orange Test Setup button at the lower right of the page.

From here. you can test logging into Okta from Zingtree.  If you’re already logged in, the test will just return your email or other identifier from Okta.  If you’re not yet logged in, the Okta’s login screen will appear, and then you will be returned to the Zingtree SSO test page after logging in.

Enabling SSO on Your Trees

Once SSO is working properly from your test, you can restrict access to any tree as follows:

  1. Go to My Trees, and select the tree that you want to require SSO login.
  2. Click the Settings tool.
  3. Check Require Single Sign-on (SSO) Login to Access.
  4. Click Update Settings.

This process has been tested, but if you’re having trouble getting Okta and Zingtree working together, please let us know!

Zendesk Decision Tree Support App: Version 4

zendesk_zingtree-BLOG@2x

Travis A., who is implementing Zingtree for a video technology company, was keen on using Zingtree to try to reduce his team’s support ticket load. He also needed to import a synopsis of the Zingtree session data into his Zendesk tickets so his tech support people could get some time-saving background information.

Travis wanted to emphasize the condensed Q&A part of the session. Done!

Here’s the new look of the Zendesk Decision Tree Support app:

Here’s what’s new in the Zendesk Support App, version 4:

  • The Q&A view is now the default.
  • Any “back” or “restart” button clicks no longer show in Q&A view.
  • The answers clicked are highlighted, so it’s easy for a support person to see where the customer went at a glance.

You can download the latest Zingtree Decision Tree Support app for Zendesk here.

Need help installing the app? Instructions are here.

Travis' photo
This is Travis.

Thank you, Travis, for the awesome suggestions!

Single Sign-On for Zingtree Decision Trees

security-blog

We’ve had several requests to incorporate Single Sign-on (SSO) into Zingtree, as a means of restricting access to trees.  Many customers have sensitive corporate processes or procedures encapsulated in their trees, and ensuring these trees are accessible only to certain employees can be invaluable.

Single Sign-on is a service provided by many vendors, including Okta, Microsoft (Active Directory / Azure), Google (G-Suite), Salesforce and more.  These services are known as Identity Providers.  A single log-in through an Identity Provider gives a user secure, authenticated access to applications provided by Service Providers like Zingtree.

Once you log in through your Identity Provider, you don’t need to re-enter your login credentials. SSO is a very convenient way to secure access to your applications, while not burdening end-users with extra hurdles.

Zingtree supports any service that is SAML 2.0 compliant, which is a common standard.

Set Up Overview

Configuring SSO requires your Identity Provider and Zingtree to share information with each other:

  1. Your Identity Provider needs information about Zingtree.
  2. Zingtree needs information about your Identity Provider.

SSO just needs to be set up once for your organization. Once you have Zingtree and your Identity Provider successfully working together, you can mark any of your trees as “SSO restricted” via the Settings tool to require a login to get access.

Configuring Zingtree for SSO

To start, in the Zingtree top menu, go to Account, Single-Sign-on. You’ll see the parameters (specific to your organization) to share with your Identity Provider:

Configure your Identity Provider with these parameters.

Next, click the blue button to Enter Identity Provider Data into Zingtree. The following screen appears:

Copy the rest of these settings from your Identity Provider.

If you’re ready to test, make sure Enable access restrictions on specified trees is checked.

Click Save Identity Provider Settings when finished.

Testing Your SSO Setup

Once you’ve set up your Identity Provider and Zingtree for SSO, you can test from Zingtree as follows:

  1. In Zingtree, go to Account, Single Sign-on.
  2. Click the orange Test Setup button at the lower right of the page.

From here. you can test logging into your Identity Provider from Zingtree.  If you’re already logged in, the test will just return your email or other identifier from your Identity Provider.  If you’re not yet logged in, the Identity Provider’s login screen will appear, and then you will be returned to the Zingtree SSO test page after logging in.

Enabling SSO on Your Trees

Once SSO is working properly from your test, you can restrict access to any tree as follows:

  1. Go to My Trees, and select the tree that you want to require SSO login.
  2. Click the Settings tool.
  3. Check Require Single Sign-on (SSO) Login to Access.
  4. Click Update Settings.

Release Notes

SSO has been tested with a variety of Identity Providers.  If you’re having trouble configuring with a specific service, please let us know!

Embeddable Decision Trees for WordPress

There’s no getting around it – we love WordPress! As a powerful piece of software that enables people around the world to spread and share ideas, build amazing websites and more, we understand the need to be as integrative with this ever-popular tool.

Zingtree’s robust toolkit allows WordPress users to directly embed interactive decision trees into any web page needed, making it easy for customers and end-users to navigate through any process on your site in a simple question-and-answer flow.

Many of our amazing customers are already taking advantage of this plugin, by hosting powerful, customized decision trees directly on their respective websites! See if you could survive in the wild with this interactive journey built by Live Out There, then check out a robust and helpful troubleshooter decision tree from Screen Time.

Here’s how to get started with your own WordPress-hosted decision tree:

1. Download the plugin and install it into WordPress.

2. Use your Zingtree decision tree’s specific short code (which will appear like this) in your post:

[ zingtree id=”851580502″ ]

Hint: To locate your short code, login to Zingtree and go to My Trees. The ID number to the left of the decision tree title is your code.

Installation Video

Some more examples: 

To customize with a persistent button that will immediately take the user to whichever node you’d like while displayed in “panels” style, enter a short code like this:

[ zingtree id=”148196706″ style=”panels” persist_names=”Restart|Submit Ticket” persist_node_ids=”1|5″ ]

To hide the name of the decision tree, as well as the “back” button, enter a short code like this:

[ zingtree id=”148196706″ hide_title=”yes” hide_back_button=”yes” ]

Get the WordPress Plugin!

Don’t want to embed into WordPress? Zingtree can host your decision trees for you! Learn more here or contact us today.

This article was originally published May 2015.

How to Use Existing Login Credentials to Restrict Access to Decision Trees

security-blog

Some of our customers have asked for an extra level of security for their trees, such that only people authenticated via a corporate intranet can access it. This article shows how it’s done, for ANY login system on ANY intranet.

Universally restricting access is accomplished by having an internal server access the tree via a server-side include, rather than via a user’s browser via embedded code in the page. This means that all accesses of the tree come from a single corporate IP address or range. Zingtree has an IP filtering option for any tree, so it’s easy to restrict access and use whatever authentication processes are already in place on the corporate intranet.

The method described here can work with organizations using SSO (Single Sign On), or any other login system.

Here are the basics:

  1. Restrict access to your tree to just the IP address of your server(s). This is done via Zingtree’s Settings tool.
  2. Create a web page for the tree to display on your internal server. This page will include the necessary JS and CSS files to show the tree. Load your tree using a server-side call, instead of embedding it into an iFrame or linking to a URL hosted at Zingtree.com.

Examples

Here’s PHP source code for a simple server-side include.

See how this page appears.

Technical Details

The example above is written using PHP, but any server-side scripting language can be used.  Our demo is a template around which a URL for a tree can be loaded. This template contains all the CSS and JS files needed to display a functioning Zingtree decision tree.

Zingtree is built on top of Bootstrap 3, so the basic Bootstrap files are loaded.  There are a few custom controls as well included in the template.

You can swap out the PHP with Python, Ruby, Perl, or any other scripting language you choose.
Have any questions or comments about making your trees more secure? Talk to us!

Zapier Decision Tree Integrations with Zingtree

zingtree zapier integration

Our Zapier app makes it easy to send data collected during each Zingtree session to more than 500+ applications supported by Zapier. In case you haven’t heard of it, Zapier is a tool that simplifies data exchange between various web applications. We’re big fans.

Here are some cool things you can do with Zingtree and Zapier:

  • Send data collected in a Zingtree session to Salesforce, Zoho, Highrise, or any other CRM.
  • Add an email address entered in a tree into Mailchimp.
  • Send  yourself an email or SMS message when a customer reaches a critical node in a tree.
  • Save new customer information in a Google Sheets row.
  • Create Trello cards from trees, and include customer notes and session data.
  • And tons more!

When using Zapier, you create “Zaps.” A Zap has a “trigger,” which is the source of the data, and an “action,” which is where the data gets sent. Most of our customers want to send data from Zingtree to another app, so we’ll demonstrate how this is done here.

Before starting, you may want to examine a demo tree from our Gallery that gathers data and sends it to Zapier, or copy it to your account.

How to Set up Zapier for Zingtree

The Zingtree Zapier app is currently invite-only. But if you’re reading this article, you’re invited!

  1. Create a free Zapier account at Zapier.com.
  2. Go here to accept an invitation to use the Zingtree app. The invitation appears:

    Accept the invite.
  3. You’ll be prompted to make a new Zap:
    Click Make a new Zap.
  4. You’ll be asked to choose a Trigger App, which is the source of the data exchange.
    Search for Zingtree, and select Zingtree (Beta).
  5. You’ll be asked to choose a single trigger.
    Click Save + Continue.
  6. Next, you’ll need to connect your Zingtree account, and a tree to Zapier.
    Click Connect a New Account. 
  7. You’ll be asked for your Zingtree API Key, which you can find here at the bottom of this page. Also enter the Tree ID that will be sending data to Zapier.
    Click Continue when finished.
  8. Change the name of the account, then click Test.

    You should see “success.” Click Save + Continue.
  9. Next, Zapier will attempt to retrieve any variables or sample data from your tree. If this is a new tree, you may want to run through it once and gather some data.
    Click Fetch & Continue.
  10. You’ll see some of the stock data that Zingtree always provides, as well as any custom data for your tree. Again, if you don’t see all the data you expect, do a test run through your tree, and enter some data at least once. This will make the rest of the process easier.
    Click Continue.

Set up the Action App – Email Example

So now you’re done with the Zingtree part. Congratulations! Next, you need to set up an Action App, which will receive data from Zingtree. Let’s set up email delivery as an action, as follows:

  1. Search for email, and choose Email by Zapier as an action app.
    Select Email by Zapier.
  2. This app has just one action.
    Click Save + Continue.
  3. Fill in details for the outbound email. You can insert fields from Zingtree in the body of the email as well.Click Continue when the email is set up correctly.
  4. You’ll see  a preview of what to expect.
    Click Create & Continue to save the action and send a test email.
  5. You should see another “success” screen.
    Click Finish when the email appears as you like.
  6. Name your Zap Zingtree to Email, and turn it on!

Your Zapier Zap is all set.

Making Zingtree Send Data

The final step is to tell Zingtree when to send all the data collected in a session to Zapier. This can be triggered from one or more nodes, when they are seen by the end-user of your tree.

  1. From Overview, Edit Node, edit the node that you want to trigger sending data to Zapier.
  2. Go to Send Message to, and pick Zapier: Zingtree to Email. This is the new Zap you created.
  3. Click Save.
  4. Now try a test from Zingtree. Using Preview or the Publish tool, navigate your tree, and when you reach the node that triggers the send, you should see something in your inbox. IMPORTANT: Make sure to use https in your published Zingtree URL when using Zapier.

Once you get your first Zap done, it becomes easy and addictive to hook Zingtree to the other applications that your business depends upon. So keep going!

Have any questions? Contact us anytime!

How to Offer Always-On, Self-Service Customer Support

self-service customer support

Self-service is a win-win for rapidly-growing (and exceedingly busy) businesses, pleasing the majority of customers while at the same time providing an efficient, always-available support medium for customer service teams. Empowering customers to solve problems and answer their own questions means less work for support teams, and overall more satisfied consumers!

Don’t believe us? Here are some statistics about customer support self-service from our friends at Desk.com:

  • 72% of people think that self-service support is a fast and easy way to handle support issues
  • 40% of customers place a call after already looking for support or answers themselves
  • 91% of customers would regularly utilize an online, self-service support center if it was tailored to their needs

Your business doesn’t have to get swept up by the new wave of customer service; get your support team up-and-running with self-service support options with these 3 steps.

1. Bulk Up Your Knowledge Base & FAQ

It all starts with your FAQ and knowledge base of information — 56% of customers cite a lack of information as their reason for abandoning a website, so it’s critical to make sure that the content in your support center is totally user-relevant, helpful and currently up-to-date. Revisit and revamp knowledge base articles, FAQ answers and other support-related content on your site on a regular basis (quarterly or even monthly), to provide your customers with the most important, accessible information possible; both your customers and your team members will certainly thank you for your proactive customer care!

2. Implement Interactive Troubleshooters

It’s pretty amazing that in today’s world, you can easily provide 24/7 access to support without doling out for any extra staff members. Creating and integrating interactive, customer support troubleshooters makes it easy to help your customers even when no one is there for a one-on-one. Additionally, Zingtree decision trees make it possible to quickly gather customer background information in case a support ticket is submitted, so you have all of the key information you need in one place.

Pairing your existing knowledge base with interactive decision trees is the best way to cover every base where support is concerned, and simplifies the process of finding real solutions. In fact, organizations that use these decision tree troubleshooters have spent an average of 20% less on support costs overall.

3. Reach Out, and Be Easy to Reach Out To

When a customer is having a major issue, or really just prefers a good old fashioned human interaction, it’s always a good idea to provide a way to get in contact with a real live person. Make it as simple as possible to reach out to your support staff, sales team, or anyone else who could help out – having this kind of clear pathway laid out on your website can mean the difference between a super happy customer, and one that is completely stressed out by your online presence.

Better yet is the idea of reaching out to your customers before they have the chance to have a problematic situation occur; this makes people feel at ease whenever something does inevitably come up, and sets a positive tone for any future communications.


Zingtree makes it easy to build customized, informative decision trees to satisfy your customers and your business. Contact us to learn more or get started today!