link icon
Ask The Community

Device Assignment

I have successfully deployed the custom host application using both jamf, and a shell script that uses curl to download the host.  It shows up in the correct computer group and I am able to remote in. All that works great. 

The problem is when I run the assignment tool.  I have done it in two different ways.  First, I downloaded the tool ( as guided in the management panel ) and used the -apitoken -datafile params when running the script.  When I do it that way, I get an error that AssignmentData.json is not found.  This was of course validated when I went to ~/Library/Application Support/Teamviewer Host

The second attempt used curl to download the agent, I then installed the application ( all worked great ).  I then chmod -x /Applications/  However, this tool does not take the -datafile param.  When running this tool -apitoken is changed to -api-token.  Either way, I run the assignment tool that way and I get an error 204.  Which according to standard API rules means "success".  The documentation from Team Viewer states The API encountered an error. 


Sorry for the long-winded story here.  As I have tried nearly everything I can think of to get the assignment to work.  My last step is to create a folder with a postinstall script, teamviewerhost and the teamview_assignment and see if it works.  But that doesn't seem to be documented anywhere and would be a complete custom approach.  

Either way.  Assignmentdata.json is never created with the custom install (and yes, the checkbox is marked in the panel )

Any help would be GREATLY appreciated in trying to get the Mac OSX Teamviewer 14 to assign!




  • Hello BenG1,

    We do experience the same issue. Did you ever find a fix for this ? Did TeamViewer support get back to you or do - as it seems - they ignore this question ?

  • Hi BenG1,

    we are having the same issue 204 on windows 10.

    C:\Program Files (x86)\TeamViewer\TeamViewer.exe assign --api-token <APITOKEN> --alias %COMPUTERNAME%

    Any updates on this?

    best regards,

  • Hello,

    Update on this from the TeamViewer Support Team would be welcome as well.



  • BuMa
    BuMa Posts: 2

    Since version 14, the configuration with the file  Assignmentdata.json is not supported. The file  does not appear. Now the configuration is from the command line. Current parameters for configuration here. 

    msiexec.exe /i "\\path to\TeamViewer_Host.msi" /qn CUSTOMCONFIGID=<my config id> APITOKEN=<my token> ASSIGNMENTOPTIONS="--grant-easy-access"

    I tests the installation with a command. for now, 50/50% of computers get correctly configurations. The rest do not automatically add to my account. I have to do it manually. The grand easy acces option also does not always turn itself on. 


  • RCT_IT
    RCT_IT Posts: 36 ✭✭

    Hey Buma,

    Where the same and can't assign machines to our TV account with the assignment command, it now no longer works? TV just seems to be getting buggier and buggier.........

    Thanks TV for testing your program on the latest Windows 10 build 1809, this is what the insider build should be for bugs and not the actual production version???

  • Hello,


    Well at least we're all on the same boat. Doing macOS deployement of TeamViewer 14 I also have about or slightly above 50% success rate at assignement.

    Also, since the AssignemenTool doesn't return any exit code - you never know if the machine has assigned successfully or not. I did actually have to write a (still buggy) "Post Flight" script to do an API request to check if the machine is announced or not.

    I think this is highly broken.

  • BuMa
    BuMa Posts: 2

    We're just starting with Team Wiewer recently. We bought one-year subscriptions and so far I have little disappointment. I have 300 computers for mass deployment and I would prefer to assign them automatically.

    We have a poweradmin account to which the license is assigned. On PowerAdmin account we have created a MSI Host package. Most computers are not automatically assigned to the account with this package .
    Today I created MSI Host package on my account (user with administrator rights). I tested two computers that did not want to be assignmen twith the PowerAdmin package and finally succeeded. But! automatic --grant-easy-access still does not work.

    Has anyone had similar situations? Maybe it's a coincidence or maybe some way to deal with it.

  • Our company is also seeing this. It seems to have happened in the last week or so.

    Desperate for a fix now.

  • RCT_IT
    RCT_IT Posts: 36 ✭✭

    Finally a TV Fix:

    We apologise for the trouble in this case.
    Currently, we are experiencing issues with our assignment API.

    At the moment, it is not possible for the system to look up group ID's for devices to be assigned into your contacts list.
    For this reason, devices will not be put into groups or assigned when using Custom Configuration ID's or the parameter --group

    Currently, the only work-around for this is to assigning the device after installation using a direct group ID.

    You can obtain the group Id using one of the following methods.

    ----1. Download the PowerShell script from the link below and run it in PowerShell. After entering your API token, this will list all available groups and their ID's
    Link disabled:

    Here is Powershell script:

    $token = Read-Host -Prompt "Paste the API token used for your Deployment here"
    $bearer = "Bearer",$token

    $header = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
    $header.Add("authorization", $bearer)

    $webrequest = Invoke-RestMethod -Uri "" -Method Get -Headers $header
    $machine = Invoke-RestMethod -Uri "Https://" -Method Get -Headers $header

    ForEach($grp in $webrequest.groups)
    Write-Host $ " - Group ID =" $
    $grpArr +=$;
    $ig = Read-Host -Prompt "Please note the group ID and use this in your assignment script"

    ----3. Send us your API token and the name of the group and we will send you back the relevant Group ID.

    Once you have the group ID, the device can be assigned after installation using command line.

    "C:\Program Files (x86)\TeamViewer\TeamViewer.exe" assign --api-token <API TOKEN> --alias %computername% --group-id <GROUP-ID> --reassign

    Note- This will only work in V14 and higher.

    We hope to have this issue resolved ASAP and we apologise for the inconvenience.

    Best Regards,
    -Support Engineer-

  • The solution posted by RCT_IT won't work in my case (sadly ;-()

    BTW, i've tested the TeamViewer_Assignment.exe's solution and that worked (below the Powershell code). The groupID has been retrieved with the RCT_IT solution.

    Start-Process -FilePath "C:\temp\TeamViewer_Assignment.exe" -ArgumentList "-apitoken `"xxxxxxx-xxxxxxxxxx`" -datafile `"C:\Program Files (x86)\TeamViewer\AssignmentData.json`" -groupID `"gxxxxxxxxx`"" -Wait -PassThru

    If you don't have the AssignmentData.json file you have to re-install TV14 with the following code (also in this case PowerShell):

    Start-Process -FilePath "msiexec.exe" -ArgumentList "/i C:\temp\TEAMVIEWER\TeamViewer_Host.msi /L*V C:\temp\TEAMVIEWER\TeamViewerInstall.log /qn CUSTOMCONFIGID=`"xxxxx`" APITOKEN=`"xxxxxx-xxxxxxxxx`" ASSIGNMENTOPTIONS=`"assign --grant-easy-access --reassign --alias %COMPUTERNAME%`" IMPORTREGFILE=1" -Wait -PassThru

    In this way the AssignmentData.json will appear (until the next TeamViewer problem...).

    Obviously this is only a workaround, not a solution...

  • Thanks. Using the Group ID worked for us. In fact I just used it in the MSI command and that worked perfectly; so it's just a one-liner:

    msiexec /i "TeamViewer_Host.msi" /qn APITOKEN=XXXXXXX-XXXXXXXXXXXXXX CUSTOMCONFIGID=xxxxxxxx ASSIGNMENTOPTIONS="--grant-easy-access --alias %COMPUTERNAME% --group-id g********* --reassign" IMPORTREGFILE=1
  • sparkymac
    sparkymac Posts: 3

    Hi, did you get a solution to these problems, we are having the same trouble?

    I can get TV installed via JAMF but the computer remains unassigned when run in a policy or a script!


  • AndyChips
    AndyChips Posts: 7

    I just had a look at the current installation line I use and it hasn't changed much since I posted that last one-liner. It's been a while now but I do recall that as soon as I started specifying the GROUPID the machines started registering perfectly. I haven't had a failure-to-register since then.

    I also remember some confusion over the email account used to create the policy. Our team had several logons and I had to be careful to use the right one when modifying the policy - and that tied in with the GROUPID. My memory is a bit hazy now but I do remember that this was important, especially when adding computers to the right group. At one point we had computers registering in a completely different account/group and that's why we couldn't find them.

    This is my current one-liner for version 14.1.9025.0 (in a .CMD file):

    msiexec /i "%~dp0TeamViewer_Host.msi" /qn APITOKEN=XXXXXX-XXXXXXXXXXXXXXXXX CUSTOMCONFIGID=xxxxxxx DESKTOPSHORTCUTS=0 IMPORTREGFILE=1 ASSIGNMENTOPTIONS="--grant-easy-access --alias %COMPUTERNAME% --group-id gxxxxxxxxx --reassign"
Sign In or Register to comment.