diff --git a/changelog.d/8705.misc b/changelog.d/8705.misc new file mode 100644 index 000000000000..1189464a02a2 --- /dev/null +++ b/changelog.d/8705.misc @@ -0,0 +1 @@ +Improve the error returned when a non-string displayname or avatar_url is used when updating a user's profile. \ No newline at end of file diff --git a/synapse/handlers/profile.py b/synapse/handlers/profile.py index 14348faaf3f0..74a1ddd7805f 100644 --- a/synapse/handlers/profile.py +++ b/synapse/handlers/profile.py @@ -189,7 +189,9 @@ async def set_displayname( ) if not isinstance(new_displayname, str): - raise SynapseError(400, "Invalid displayname") + raise SynapseError( + 400, "'displayname' must be a string", errcode=Codes.INVALID_PARAM + ) if len(new_displayname) > MAX_DISPLAYNAME_LEN: raise SynapseError( @@ -273,7 +275,9 @@ async def set_avatar_url( ) if not isinstance(new_avatar_url, str): - raise SynapseError(400, "Invalid displayname") + raise SynapseError( + 400, "'avatar_url' must be a string", errcode=Codes.INVALID_PARAM + ) if len(new_avatar_url) > MAX_AVATAR_URL_LEN: raise SynapseError(