Hello @Raja Sridhar Nagella
As Kaio said, the API approach could help you.
I would first separate two concepts here: "unused skills" and "skills in an Unassigned division" are not necessarily the same thing.
If the goal is to find routing skills that exist in the org but are not assigned to any user, I don't think there is a native report for that.
The general approach would be to get all routing skills with GET /api/v2/routing/skills, then get users and their assigned skills, either with GET /api/v2/users?expand=skills or by looping through users and calling GET /api/v2/users/{userId}/routingskills.
After that, build a list of all skill IDs assigned to at least one user. Any skill from the full routing skills list that does not appear in that assigned list can be considered unused from a user-assignment perspective.
I would just be careful with cleanup decisions. A skill may not be assigned to any user today, but it could still be referenced in Architect flows, outbound configuration, templates, onboarding processes, or future routing design. Also, if a skill is used for routing but no eligible agent has that skill, the interaction will not find a matching agent unless there is fallback logic.
So, for reporting, compare all skills versus user-assigned skills. For cleanup: also validate dependencies and business purpose before deleting or changing anything.
------------------------------
Arthur Pereira Reinoldes
------------------------------