Skip to main content
MindTouch Success Center

Integrate a "Suggest Article" feature

This page applies to:MindTouch (current)

This article explains how to integrate a user-friendly publishing workflow into your existing CRM system.
 

This is a legacy integration. To integrate with our latest technology, visit our Touchpoint for CRM guide.

 

With the publishing workflow, agents can capture new customer success information as a by-product of support. Users can quickly suggest or draft articles, which are then routed to a queue (in your CRM) or published to a private area for review.
 

What are the benefits of a publishing workflow?


Integrating a suggested articles workflow allows you to:

  • Create a cycle of self-improvement. Customer information that solved a case is shared with the organization, which improves later support.
  • Drive collaboration. Agents feel empowered to use their experience to contribute to customer success.
  • Guarantee fast contributions. Agents can suggest content with the push of a button, without training.
     

How to create a "Suggest Article" workflow


Step 1: Modify the sample code

  1. Download the sample file to your computer.
  2. In the top of the file, replace the following:
  • SITE_URL — the MindTouch site to connect to (connect to the HTTPS version of the site, since most CRM systems are HTTPS themselves)
  • PAGE_TITLE — the default title that an article should have when opened (if none is provided in the input box). This is often populated with the ticket subject, if available.
  • PAGE_PATH — the location on the MindTouch site the article should be published to.
var MindTouch = {};
MindTouch.SITE_URL = "https://success.mindtouch.com";
MindTouch.PAGE_TITLE = "Default Title";
MindTouch.PAGE_PATH = "/Draft/";

Step 2: Verify the configuration variables

  1. Log into your MindTouch site as a pro member with edit permissions for the PAGE_PATH designated above.
  2. Open the file locally, type a sample page, and click Suggest Article.
  3. A new MindTouch page should open with the desired path and title.
     

Step 3: Add the code to your CRM

The last step is to integrate the code into your CRM. Copy the HTML code into the appropriate location.

A few caveats:

  • Single sign-on (SSO): The search configuration uses the API. No SSO is performed. If the user has an existing session with MindTouch, it will be re-used by these API requests (more on setting up SSO with MindTouch).
     
  • jQuery: The code uses a version of jQuery hosted by Google and is stored as $j in noConflict mode. If the CRM has an existing jQuery library, this can be used instead.
    <head>
        <!-- PREREQUISITE: jQuery -->
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
    </head>
    
  • Custom behavior: The code was written to be modular. The callback function for submitting the form just opens a new window. You can modify this to POST to the pages/contents API. Note: browsers block cross-domain POST requests, so a native REST API interface in the CRM should be used to execute the request.
    j$('#mt-publish-form').submit(function(){
        var title = j$('#mt-title-input').val() || MindTouch.PAGE_TITLE;
        // simple integration: open new page at desired location, ready to edit (if a licensed pro member).
        window.open(MindTouch.SITE_URL + MindTouch.PAGE_PATH + title);
        /* Advanced publishing: do a POST against the pages/contents API */ 
    });
    
  • Template-driven publishing: To publish content to MindTouch based on a template, do a GET on the pages/contents API to get the HTML for the template page. On the client, replace the desired sections with information from the ticket. (For example, you may have special strings like {Ticket.Subject} that will be replaced in the HTML.) Then, do a POST to the pages/contents API as described above.
     
  • Custom styling: The CSS can be modified to restyle the integration.
     

Step 4: Verify your configuration

After you perform the above steps, you should see a button similar to the following running inside your existing application:

  • Was this article helpful?