Categories:
  1. ServiceNow AI
  2. ServiceNow AI tables
  3. Now Assist Custom Skill
  4. Get & Update Incident
  5. Predictive Intelligence ServiceNow
  6. Predictive Inteligence + Now Assist
  7. NowAssist in UI Builder

Get Category & Subcategory in JSON format

Tool Editor Code:

var result = {
        categories: []
    };

    var categoryMap = {}; // { categoryLabel : [subCategoryLabels] }

    // Step 1: Get CATEGORY choices
    var catGR = new GlideRecord('sys_choice');
    catGR.addQuery('name', 'incident');
    catGR.addQuery('element', 'category');
    catGR.addQuery('inactive', false);
    catGR.orderBy('sequence');
    catGR.query();

    while (catGR.next()) {
        var categoryValue = catGR.getValue('value');
        var categoryLabel = catGR.getValue('label');

        categoryMap[categoryValue] = {
            label: categoryLabel,
            subcategories: []
        };
    }

    // Step 2: Get SUBCATEGORY choices
    var subGR = new GlideRecord('sys_choice');
    subGR.addQuery('name', 'incident');
    subGR.addQuery('element', 'subcategory');
    subGR.addQuery('inactive', false);
    subGR.orderBy('sequence');
    subGR.query();

    while (subGR.next()) {
        var subLabel = subGR.getValue('label');
        var dependentValue = subGR.getValue('dependent_value'); // category value

        if (categoryMap[dependentValue]) {
            categoryMap[dependentValue].subcategories.push(subLabel);
        }
    }

    // Step 3: Build final JSON structure
    for (var cat in categoryMap) {
        result.categories.push({
            category: categoryMap[cat].label,
            subcategories: categoryMap[cat].subcategories.length
                ? categoryMap[cat].subcategories
                : ["None"]
        });
    }

    //gs.info(JSON.stringify(result, null, 4));

    return result;

Total Views: 1310