When trying to create a form using the code you provided, I'm able to see that the firstname, lastname, email and telephone placeholder got sent through. The placeholder was missing for both the dropdown list, is that the missing placeholder fields that you'd like to populate?
If that's the case, to populate the dropdown list placeholder you'll need to use the following property:
"unselectedLabel": "Placeholder for dropdown list"
Whereas for text field, you can use the placeholder property.
After modification, the code below have placeholder set for the dropdown fields as well:
"unselectedLabel":"",// DEPRECATED - this field is not used.
I'm a little hesitant to build on a feature that is officially deprecated. As I read it, it shouldn't work now, and even if it does, it may stop working at any time. Where could I find information on when this field stops working, and what replaces it?
Pardon for the delayed in response! I'd just like to let you know that I'm still looking into things here with my team and I'll keep you posted on what's the best field to use to populate the select input placeholder when creating form via API.