Поиск дубликатов в списке

Если вам необходимо найти дубликаты в списке для удаления можете использовать скрипт:

const table = 'sys_cmdb_ci';
const condition = '()';
const groupBy = 'name';
const groups = getGroups(table, condition, groupBy);

if (!groups) {
    return;
}

const duplicateGroups = groups.filter(group => group.count > 1);

duplicateGroups.forEach(group => {
    const groupRec = new SimpleRecord(table);
    groupRec.addEncodedQuery(group.condition);
    groupRec.orderBy('sys_id');
    groupRec.query();
    groupRec.next(); // пропускаем запись, созданную первой
    while (groupRec.next()) {
        // print(`${groupRec.sys_id}\n`);
        // groupRec.deleteRecord();  // удаляем дубликат
    }
})

function getGroups(table, condition, groupBy) {
    let instanceUrl = ss.getProperty('simple.instance.uri');
    instanceUrl = !instanceUrl.includes('https://') ? `https://${instanceUrl}` : instanceUrl;
    instanceUrl = instanceUrl.endsWith('/') ? instanceUrl.slice(0, -1) : instanceUrl;
    const groupsRequest = sws.restRequestV1();
    groupsRequest.setRequestUrl(`${instanceUrl}/v1/list-group-filter/${table}`);
    groupsRequest.setRequestHeader('Content-type', 'application/json');
    groupsRequest.setRequestHeader('Authorization', `Bearer ${new SimpleUser().getAccessToken()}`);
    groupsRequest.setQueryParameter('condition', `${condition}^GROUPBYCOUNTDESC${groupBy}`);
    groupsRequest.setQueryParameter('per_page', 9999);
    const response = groupsRequest.execute();
    const { groups } = JSON.parse(response.getBody())?.data;

    return groups;
}