Assignment API issue


So, recently I made an automated wrapper for TeamViewer installation via SCCM. Largely, this deployment is successful and works as intended.

However, I have several machines that are failing to assign due to this error:

2018-01-30 10:28:37	WebAPI: POST 'devices/assign' (Body: {"device_id":"[personal information removed]","assign_mode":"easyrollout","current_device_password":"REDACTED","enable_easy_access":true})
2018-01-30 10:28:40 => 400 (Body: {"error":"failed_to_assign_manager_to_device","error_description":"FailedToAssignManagerToDevice","error_code":17})
2018-01-30 10:28:40 => Assignment failed with:
POST-Request 'devices/assign' failed with 400 (API-Error: 'failed_to_assign_manager_to_device' (Code 17), Description: 'FailedToAssignManagerToDevice')

This same exact script works for 180 other machines as well as new images. Re-launching the deployment does not resolve. What password is the API trying to use here? What exactly is current_device_password?

One more thing; is there a way to manage endpoints as a centralized list rather than shared lists that all have to be updated individually? Having some issues with that as the whole point of this deployment was to completely reinstall a specific version of TV with unified policy; to do that they had to be re-assigned, and to do that I deleted them all from the web console.. but the contacts still exist on other account lists. Is there no centralized management of endpoint lists?