Users reported inconsistencies in the Discourse API documentation regarding the correct format for creating user fields via the REST API. zsan noted that the documentation showed multipart/form-data syntax but labeled it as application/json, leading to confusion. blake, who authored the docs, confirmed the error and clarified that when using application/json, the correct format is nested JSON like { "user_field": { "name": "...", "field_type": "...", ... } }. JamesNorth added that creating a new user with required user fields also required correct JSON formatting, such as { "user_fields": { "1": "Required User Field Data" } }, which resolved their 24-hour debugging struggle. Blake acknowledged the mistake and updated the docs via pull request #30133 to align the examples with the actual application/json format. The confusion stemmed from mismatched content-type labeling in the docs, which has now been corrected.
I also struggled for about 24 hours solid with this as the docs example suggests application/json formatted requests for creating a new user be boolean for user_field …
I was being told I hadn’t finished all the required user fields … but in my case I have an existing requireduser_field I need to enter data into that field and it should be formatted like this:
{
"name": "Full Name",
"email": "email@address.com",
"password": "348hqpwfaed",
"username": "UserName",
"user_fields": {
"1": "Required User Field Data"
}
}
The above formatting worked for me.
Are the docs correct in this case for creating a new user?