Improvements to CS API "User Data" section (#2359)

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
This commit is contained in:
Kévin Commaille 2026-04-28 17:13:53 +02:00 committed by GitHub
parent a64381b395
commit 59a57be002
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 23 additions and 12 deletions

View file

@ -0,0 +1 @@
Clarify formats of string types.

View file

@ -4214,13 +4214,13 @@ an automatic propagation event to occur, informing likely-interested
parties of the new values. This change is conveyed using two separate
mechanisms:
- an `m.room.member` event (with a `join` membership) is sent to every
room the user is a member of, to update the `displayname` and
- an [`m.room.member`](#mroommember) event (with a `join` membership) is sent
to every room the user is a member of, to update the `displayname` and
`avatar_url`.
- an `m.presence` presence status update is sent, again containing the
new values of the `displayname` and `avatar_url` keys, in addition
to the required `presence` key containing the current presence state
of the user.
- an [`m.presence`](#mpresence) presence status update is sent, again
containing the new values of the `displayname` and `avatar_url` keys, in
addition to the required `presence` key containing the current presence
state of the user.
Both of these should be done automatically by the homeserver when a user
successfully changes their display name or avatar URL fields.

View file

@ -46,6 +46,8 @@ paths:
example: "@alice:example.com"
schema:
type: string
format: mx-user-id
pattern: "^@"
- in: path
name: keyName
description: The name of the profile field to set. This MUST be either
@ -69,11 +71,11 @@ paths:
description: |
An object which contains exactly one property. The key
of that property MUST match the `keyName` specified in the URL.
For `avatar_url`, the value MUST be an MXC URI string.
For `avatar_url`, the value MUST be an MXC URI string.
For `displayname`, the value MUST be a string.
For `m.tz`, the value MUST be a valid identifier from the [IANA Time Zone Database](https://www.iana.org/time-zones).
Servers MAY choose to validate the value. Clients MUST expect unknown or invalid
values.
@ -96,7 +98,7 @@ paths:
description: |
The input was invalid in some way. This can include one
of the following error codes:
- `M_BAD_JSON`: The provided value is not valid JSON.
- `M_MISSING_PARAM`: The required `keyName` property is
missing from the request body.
@ -158,6 +160,8 @@ paths:
example: "@alice:example.com"
schema:
type: string
format: mx-user-id
pattern: "^@"
- in: path
name: keyName
description: The name of the profile field to retrieve.
@ -216,6 +220,8 @@ paths:
example: "@alice:example.com"
schema:
type: string
format: mx-user-id
pattern: "^@"
- in: path
name: keyName
description: The name of the profile field to delete.
@ -286,6 +292,8 @@ paths:
example: "@alice:example.com"
schema:
type: string
format: mx-user-id
pattern: "^@"
responses:
"200":
description: The profile information for this user.

View file

@ -30,7 +30,7 @@ paths:
`public` [join rule](#mroomjoin_rules)
- users who are joined to rooms known to the homeserver that have a
`world_readable` [history visibility](#room-history-visibility)
The search MUST consider local users to the homeserver, and SHOULD
query remote users as part of the search.
@ -82,6 +82,8 @@ paths:
type: string
example: "@foo:bar.com"
description: The user's matrix user ID.
format: mx-user-id
pattern: "^@"
display_name:
type: string
example: Foo