We are attempting to synchronize agent skill proficiencies from our external HR system into CXone. The goal is to update the proficiency level (e.g., beginner, intermediate, expert) for a specific list of agents against a defined set of skills.
The documentation suggests using the PATCH /api/v2/agents/{agentId} endpoint, but we are looking for a way to batch these updates. We tried sending a payload to the bulk update endpoint, but it seems to reject the skill proficiency objects.
Here is the structure we are sending to /api/v2/agents/bulk-update:
{
"agents": [
{
"id": "agent-123",
"skillProficiencies": [
{
"skillId": "skill-456",
"proficiency": "expert"
},
{
"skillId": "skill-789",
"proficiency": "intermediate"
}
]
}
]
}
The response is a 400 Bad Request with the following error:
{
"errors": [
{
"message": "Invalid property 'skillProficiencies' in update payload",
"code": "VALIDATION_ERROR"
}
]
}
It appears the bulk endpoint does not support the skillProficiencies array. We have verified that a single PATCH to /api/v2/agents/{agentId} works correctly with this payload. However, making individual calls for 500+ agents is inefficient and risks hitting rate limits.
Is there a supported REST API method to bulk update skill proficiencies? Or do we need to implement a retry logic with exponential backoff for individual agent updates? We are using the Python SDK for this integration.