Create trackers

This guide describes how to use the Management API Create Tracker and Create Multiple Trackers operations.

If you want to detect trackers in conversations, you need to create trackers as described here, or choose from the Managed Trackers Library.

All trackers in Your Trackers are identified when you process a conversation. Trackers are enabled by default for all conversations.

Authentication

Before using this API, you must generate your authentication token (AUTH_TOKEN) as described in Authenticate.

Use cases

Trackers are flexible and can be applied in many use cases:

  • Sales: Sandra is the training head of the Sales team in her company. She uses insights from the Intro Tracker to look at how great sales agents start conversations. The Intro Tracker Sandra uses tracks contextually similar phrases such as "thank you for taking some time to speak with me" and "have you ever noticed."

  • Quality Assurance: Tom is the Chief Quality Assurance Manager and wants to see how many agents are using negative phrases on the customer calls. He gets insights from the Negative Phrases Tracker by tracking the contextually similar phases, such as "I am not interested," "this makes me uncomfortable," and "I am skeptical."

  • Business Leads: Samuel uses insights from the Leads Tracker for all the dial out calls at his car insurance company. By tracking phrases that show buying intent, inquiries about policy options, quotes, discounts, and so on, he generates more leads for his business. The Leads Tracker detects the following contextually similar phrases: "policy options," "Fits our requirements," and "quotes."

Request body parameters

The following request body parameters apply to both Create Tracker and Create Multiple Trackers operations.

ParameterRequiredDescription
nameYesThe name you want to assign to this Tracker, in the form of a unique text string.
descriptionNoA sentence describing the Tracker, in the form of a unique text string.
categoriesYesOne or more category names for the Tracker to be assigned. This can be an existing category such as General and Sales, or a new category such as Marketing.
languagesYesOne or more of these predefined language values: en-US, en-GB, en-AU, en-IE, en-IN, en-ZA.
vocabularyYesOne or more phrases based on a central theme. Taken as a whole, this array of strings define the meaning of the Tracker.

Create tracker

Submit a request to create a single tracker.

POST <https://api.symbl.ai/v1/manage/trackers>

To make a sample request directly from the API Reference, see Create Tracker.

Create tracker request

To create a tracker, use the POST <https://api.symbl.ai/v1/manage/trackers> operation.

import fetch from 'node-fetch';

const accessToken = '<ACCESS_TOKEN>';
const trackerParams = {
  'name': '<TRACKER_NAME>',
  'description': '<TRACKER_DESC>',
  'categories': [ 
      '<TRACKER_CATEGORY>',
      '<TRACKER_CATEGORY>'
      ...
      ]
  'languages': [
      'en-US',
      'en-IN'
      ...
      ]
    'vocabulary': [
    '<TRACKER_VOCAB>',
    '<TRACKER_VOCAB>',
    ...
  ]
}

const fetchResponse = await fetch('https://api.symbl.ai/v1/manage/trackers', {
  method: 'post',
  body: JSON.stringify(trackerParams),
  headers: {
    'Authorization': 'Bearer ${accessToken}',
    'Content-Type': 'application/json'
  }
});

const responseBody = await fetchResponse.json();

console.log(responseBody);

Where:

  • <ACCESS_TOKEN> is a valid API access token.
  • <TRACKER_NAME> is the name you want to assign to this tracker, such as Insurance.
  • <TRACKER_DESC> is the descriptions of the Tracker, such as Used to identify insurance mentions in the conversation.
  • <TRACKER_CATEGORY> are one or more category names for the tracker to be assigned. This can be an existing category such as General or a new category such as Insurance.
  • Language values are one or more of the language codes such as en-US and listed in the Request Body Parameters table.
  • <TRACKER_VOCAB> are one or more phrases based on a central theme such as My insurance policy, I have health insurance, We need car insurance, and Do you offer life insurance.

For more detailed descriptions, see the Request Body Parameters table.

Create tracker response

{
   "tracker": {
       "id": "5654001296080896",
       "name": "Insurance",
       "description": "Used to identify insurance mentions in the conversation",
       "categories": [
           "General"
       ],
       "languages": [
           "en-US",
           "en-IN"
       ],
       "vocabulary": [
            "My insurance policy",
            "I have health insurance",
            "We need car insurance",
            "Do you offer life insurance"
       ],
       "createdOn": "2022-08-29T03:43:47.381Z",
       "updatedOn": "2022-08-29T03:43:47.381Z"
   }
}

Added response parameters

The following fields are added to the response body. Other response fields are identical to the parameters you specified in the request.

FieldDescription
idThe tracker ID, in the form of a unique integer string.
createdOnTimestamp when the Tracker was created.
updatedOnTimestamp when the Tracker was updated. Identical timestamps indicate no update.

Create multiple trackers

Submit a request to create more than one tracker in a single operation.

POST <https://api.symbl.ai/v1/manage/trackers/bulk>

To make a sample request directly from the API Reference, see Create Trackers.

Create multiple trackers request

To create multiple trackers, use the POST <https://api.symbl.ai/v1/manage/trackers/bulk> operation.

import fetch from 'node-fetch';

const accessToken = '<ACCESS_TOKEN>';
const trackerParams = [
  {
    'name': '<TRACKER_NAME>',
    'description': '<TRACKER_DESC>',
    'categories': [ 
      '<TRACKER_CATEGORY>',
      '<TRACKER_CATEGORY>'
      ...
    ]
    'languages': [
      'en-US',
      'en-IN'
      ...
    ]
    'vocabulary': [
      '<TRACKER_VOCAB>',
      '<TRACKER_VOCAB>',
      ...
    ]
  },
  {
    'name': '<TRACKER_NAME>',
    'description': '<TRACKER_DESC>',
    'categories': [ 
      '<TRACKER_CATEGORY>',
      '<TRACKER_CATEGORY>'
      ...
    ]
    'languages': [
      'en-US',
      'en-IN'
      ...
    ]
    'vocabulary': [
      '<TRACKER_VOCAB>',
      '<TRACKER_VOCAB>',
      ...
    ]
  },
  ...
]

const fetchResponse = await fetch('https://api.symbl.ai/v1/manage/trackers/bulk', {
  method: 'post',
  body: JSON.stringify(trackerParams),
  headers: {
    'Authorization': 'Bearer ${accessToken}',
    'Content-Type': 'application/json'
  }
});

const responseBody = await fetchResponse.json();

console.log(responseBody);

Where:

  • <ACCESS_TOKEN> is a valid API access token.
  • <TRACKER_NAME> is the name you want to assign to each Tracker, such as Website Support and Phone Call Support.
  • <TRACKER_DESC> is the descriptions of the Tracker, such as Used to identify website support requests in the conversation and Used to identify phone call support requests in the conversation.
  • <TRACKER_CATEGORY> are one or more category names for the Tracker to be assigned. This can be an existing category such as Contact Center or a new category such as Website and Phone Support.
  • Language values are one or more of the language codes such as en-US and en-IN listed in the Request Body Parameters table.
  • <TRACKER_VOCAB> are one or more phrases based on a central theme. First example: site crashed, website is down, site shows wrong information, and website not working. Second example: phone number for support, is there a helpline number, alternative contact number, toll free number.

For more detailed descriptions, see the Request Body Parameters table.

Create multiple trackers response

{
    "trackers": [
        {
            "id": "5639193993674752",
            "name": "Website Support",
            "description": "Used to identify website support in the conversation",
            "categories": [
                "Contact Center",
                "Website"
            ],
            "languages": [
                "en-US",
                "en-IN"
            ],
            "vocabulary": [
                "site crashed",
                "website is down",
                "site shows wrong information",
                "website not working"
            ],
            "createdOn": "2022-08-29T03:52:32.817Z",
            "updatedOn": "2022-08-29T03:52:32.817Z"
        },
        {
            "id": "5745434338263040",
            "name": "Phone Call Support",
            "description": "Used to identify phone call support in the conversation",
            "categories": [
                "Contact Center",
                "Phone Support"
            ],
            "languages": [
                "en-US",
                "en-IN"
            ],
            "vocabulary": [
                "phone number for support",
                "is there a helpline number",
                "alternative contact number",
                "toll free number"
            ],
            "createdOn": "2022-08-29T03:52:32.866Z",
            "updatedOn": "2022-08-29T03:52:32.866Z"
        }
    ]
}

Added response fields

The following fields are added to the response body. Other response fields are identical to the parameters you specified in the request.

FieldDescription
idThe Tracker ID, in the form of a unique integer string.
createdOnTimestamp when the Tracker was created.
updatedOnTimestamp when the Tracker was updated. Identical timestamps indicate no update.

Did this page help you?