Thanks for your suggestion, did you have something like the following in mind?
oldInput = {};
While[True,
userInput = Normal[CloudGet[CloudObject[$formURL]]];
If[oldInput =!= userInput,
Replace[userInput,
HoldPattern[tag_ -> value_] :> outputDigital[tag, value], 1]];
oldInput = userInput
Pause[5]
]
Or instead using something more elegant such as ScheduledTask
? Of course, this makes a miniscule delay between the time that the form is submitted and when the LED color is changed.