It may not make a difference, but why are you storing the data in a variable before sending it to the API form or do you just mean what's shown in the Request Payload? All of the input fields are already within the form tags, correct?
It's also possible the AC API form does not work correctly or as intended. A similar issue was encountered today with x-www-form-urlencoded.
I also recently discovered a few other issues with the AC API action.