How to update Zeebe Task Variable

If my process has 1 zeebe user task and that task has input assigned - lets say I set its “local variable name” to “category” in the modeler. Lets also say in the modeler I give it a “Variable assignment value” of “category1”. Sometime after the task is created I desire to change the value of that variable to “category2”, how can I do that. Is there a rest api? can I do it thru a zeebe client in java (my preference) in my code? other way(s)? I am on camunda 8.6 Self managed.

I tried via zeebeclient via something like this:

	Map myVars = new HashMap();
	myVars.put("category", "category2");
	return zeebeClient.
    		newSetVariablesCommand(2251799813791040L).variables(myVars).local(true).send().join();

where the key value was both the usertaskkey and also tried the flow node instance key but neither worked. I also tried sever variations of the rest call using: POST v2/element-instances/2251799813791036/variables but always got “method not allowed”.

Any help or pointers would be greatly appreciated. Thanks!