--- title: UserSkillRanking - Global description: The UserSkillRanking API provides methods to configure options for choosing the right user and getting a sorted list of qualified users based on number of matching skills and skill-level gap.Instantiates a UserSkillRanking object.Provides a list of qualified users based on matching mandatory skills and levels if the isSkillLevelEnforced parameter is true\). locale: en-US canonical_url: https://www.servicenow.com/docs/r/australia/api-reference/server-api-reference/UserSkillRankingAPI.html release: australia product: Server API Reference classification: server-api-reference topic_type: concept last_updated: "2026-03-12" reading_time_minutes: 1 breadcrumb: [Server API reference, API reference, API implementation and reference] --- # UserSkillRanking- Global The UserSkillRanking API provides methods to configure options for choosing the right user and getting a sorted list of qualified users based on number of matching skills and skill-level gap. This API requires the Skills Management plugin \(com.snc.skills\_management\), which you can activate if you have the admin role. See [Qualify and rank users based on skills and skill levels](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/servicenow-platform/assign-work-based-on-skills.md). **Parent Topic:**[Server API reference](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/api-reference/server-api-reference/api-server.md) ## UserSkillRanking - UserSkillRanking\(\) Instantiates a UserSkillRanking object. |Name|Type|Description| |----|----|-----------| |None| | | ## UserSkillRanking - getQualifiedRankedUsers\(String requiredSkillsJson, String usersJson, String rankType, Boolean isSkillLevelEnforced\) Provides a list of qualified users based on matching mandatory skills and levels if the `isSkillLevelEnforced` parameter is true\).
Name Type Description
requiredSkillsJson String List of required skills to qualify users.Each skill is listed as a JSON entry in the following format: - sys\_id: String. Sys ID of skill from the Skills \[cmn\_skill\] table. - is\_mandatory: Boolean. Flag that indicates whether the skill is mandatory. - level: String. Sys ID from the Skill Levels \[cmn\_skill\_level\] table.
usersJson String List of user Sys IDs from sys\_user table \(in JSON format\) representing users to be qualified against required skills.
rankType String Enables sorting qualified users based on ranking type. Possible values are comparators to provide sorted list of qualified users based on number of matching skills and skill level gap: - NO\_RANKING \(default\) – Used if empty value provided. - NUM\_SKILLS – Number of skills matched against required skills. - NUM\_SKILL\_ MATCHING\_LEVEL – Number of user skills matching the required skill level. - LEAST\_SKILL\_ LEVEL\_GAP – Finds user skill that most closely meets minimum skill level requirements. - MOST\_SKILL\_ LEVEL\_GAP – Finds user that least meets minimum skill level requirements. - BEST\_OPTIMUM\_ USER – Finds optimum user for all skill levels.
isSkillLevelEnforced Boolean True if user must have minimum skill level for all required mandatory skills, false otherwise. Default: false.
Type Description
String List of qualified users as JSON.Error if inaccurate parameters or malformed JSON provided.
``` var skills = [{"sys_id":"48c9f873c0a8018b65c3814608b201e6", "is_mandatory": true, "level":"4e0ac4d6b3332300290ea943c6a8dc4e"}, {"sys_id":"48c9fdddc0a8018b04bd8d7914c82c9d", "is_mandatory": false, "level":"4e0ac4d6b3332300290ea943c6a8dc4eS"}]; var users = ["a8f98bb0eb32010045e1a5115206fe3a", "62826bf03710200044e0bfc8bcbe5df1"]; var userSkillRanking = new SNC.UserSkillRanking(); var qualifiedUsers = userSkillRanking.getQualifiedRankedUsers(JSON.stringify(skills), JSON.stringify(users), "BEST_OPTIMUM_USER", true); ```