So Variables and Headers are lists of proplists? Shouldn't they be JSON objects? An Erlang proplist doesn't encode to JSON directly; it either needs to be wrapped in a tuple `{[{K,V},...]}` or be a list of JSON values (numbers, strings, other JSON objects, etc).