Connect Quriobot to Freshdesk

Do you want Quriobot to create tickets on your Freshdesk portal? We support that!!

We’ll make use of the Quriobot Response Connections, bot variables, and Freshdesk API.

The demonstration you can watch here:

  1. Log in to your Quriobot account, select your bot and do to the Connections & Notifications tab -> Response connections and add Response Action and select Freshdesk in the dropdownfor the Response action types:
  2. Insert such URL into theURL field: https:// DOMAIN.freshdesk.com/api/v2/tickets, where the DOMAIN has to be replaced with your own Freshdesk subdomain name
  3. In theBasic Auth field, add TOKEN:X, where TOKEN is:
    1. Log in to your Support Portal
    2. Click on your profile picture on the top right corner of your portal
    3. Go to Profile settings Page
    4. Your API key will be available below the change password section to your right
  4. See the bottom of this page on how to use your ownVariables in the JSON body, but just adding the following is enough for this test and click S ave!
    1. {
          "description": "{{description}}",
          "subject": "{{subject}}",
          "email": "{{email}}",
          "name": "{{name}}",
          "priority": 1,
          "status": 2
      }
      
  5. Go to theBot settings tab -> Variables, add such variables:
    1. name:description, type: Step, select a corresponding step for the description of the ticket
    2. name:subject, type: Step, select a corresponding step for the subject of the ticket
    3. name:email, type: Step, select a corresponding step for the requester email address
    4. name:name,  type: Step, select a corresponding step for the requester name
  6. You can add more variables and put them in the JSON to send additional fields to Freshdesk

That’s it! Have fun connecting Quriobot to Freshdesk!

If you’d like your users to be able to first search for the answer among your Freshdesk knowledge base solutions before making the request, here are additional steps to take:

1. Enable development mode:

1. Create an autocomplete step so that the user can find the article:

Note that here we add only one option, in order for the user to be able to fall back to the creation of the support request, also with the manual option value being set to 1

2. In the advanced settings of the step, enable dynamic options population:

Enter such a code:

function(input, getVariableValue, callback) {
    var url = new quriobot.URL("https://DOMAIN.freshdesk.com/api/v2/search/solutions", true)
    if (input) {
      url.query.term = input;
    }
    getVariableValue("auth", function(auth) {
        quriobot.ajax(url.toString(), function(responseText) {
            var response = JSON.parse(responseText).map(function(item) {
                return {value: item.id, label: item.title, description: item.description}
            })
            response.push({value: 1, label: "I'd like to create a support request"});
            callback(response)
        }, null, {'Authorization': auth})
    })
}

3. Add such step responses:

one for the case if the user didn’t find the right solution:

another one for the redirect to the solution URL:

3. Create such additional bot variables:

  • solution
    • type: Step
    • step: Solution autocomplete step added before:
  • auth
    • type:Script

    • script :

      function(callback, variables) {
        // The `callback` argument has to be called with the result value in order to support the async operations. The `variables` argument is an object containing other variables
        callback('Basic ' + btoa('TOKEN:X'))
      }
      

      where TOKEN is the API token for the occasional agent with the minimum possible permissions:

  • solutionURL
    • type:Script
    • script:
    • function(callback, variables) {
        // The `callback` argument has to be called with the result value in order to support the async operations. The `variables` argument is an object containing other variables
        callback("https://DOMAIN.freshdesk.com/a/solutions/articles/" + variables.solution.value)
      }
      

This is it! With those additional steps taken, the user will first be able to search among your knowledge base, and if nothing suitable is found, he will be able to create a support request.

Edit this page