mirror of
https://github.com/matrix-org/matrix-spec
synced 2026-02-24 15:03:43 +01:00
Clarify that org.matrix is reserved
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
This commit is contained in:
parent
7f59715369
commit
35eb6e1d2b
|
|
@ -458,25 +458,31 @@ In summary:
|
||||||
|
|
||||||
Unstable endpoints MUST use `/unstable` as the endpoint version and a
|
Unstable endpoints MUST use `/unstable` as the endpoint version and a
|
||||||
vendor prefix in Java package naming format. For example:
|
vendor prefix in Java package naming format. For example:
|
||||||
`/_matrix/client/unstable/org.matrix.mscxxxx/login`. The foundation's
|
`/_matrix/client/unstable/com.example.mscxxxx/login`.
|
||||||
preferred vendor prefix is `org.matrix`.
|
|
||||||
|
{{% boxes/note %}}
|
||||||
|
Proposal authors operating with a Matrix.org Foundation mandate SHOULD use
|
||||||
|
a vendor prefix within the `org.matrix` namespace. This namespace is otherwise
|
||||||
|
restricted. Authors who don't own a domain MAY use the `com.github` namespace
|
||||||
|
instead.
|
||||||
|
{{% /boxes/note %}}
|
||||||
|
|
||||||
Note that unstable namespaces do not automatically inherit endpoints from
|
Note that unstable namespaces do not automatically inherit endpoints from
|
||||||
stable namespaces: for example, the fact that `/_matrix/client/v3/sync`
|
stable namespaces: for example, the fact that `/_matrix/client/v3/sync`
|
||||||
exists does not imply that `/_matrix/client/unstable/org.matrix.mscxxxx/sync`
|
exists does not imply that `/_matrix/client/unstable/com.example.mscxxxx/sync`
|
||||||
exists.
|
exists.
|
||||||
|
|
||||||
Vendor prefixes MUST also be used for:
|
Vendor prefixes MUST also be used for:
|
||||||
|
|
||||||
- New parameters on existing endpoints. For example:
|
- New parameters on existing endpoints. For example:
|
||||||
`/_matrix/client/v3/publicRooms?org.matrix.mscxxxx.ordered_by=member_count`.
|
`/_matrix/client/v3/publicRooms?com.example.mscxxxx.ordered_by=member_count`.
|
||||||
- New properties in existing JSON objects. For example:
|
- New properties in existing JSON objects. For example:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"avatar_url": "mxc://matrix.org/SDGdghriugerRg",
|
"avatar_url": "mxc://matrix.org/SDGdghriugerRg",
|
||||||
"displayname": "Alice Margatroid",
|
"displayname": "Alice Margatroid",
|
||||||
"org.matrix.mscxxxx.phone": [{
|
"com.example.mscxxxx.phone": [{
|
||||||
"type": "landline",
|
"type": "landline",
|
||||||
"number": "+1-206-555-7000"
|
"number": "+1-206-555-7000"
|
||||||
}],
|
}],
|
||||||
|
|
@ -487,7 +493,7 @@ Vendor prefixes MUST also be used for:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"errcode": "ORG.MATRIX.MSCXXXX.M_INVALID_EMAIL",
|
"errcode": "COM.EXAMPLE.MSCXXXX.M_INVALID_EMAIL",
|
||||||
"error": "The email address you provided is invalid."
|
"error": "The email address you provided is invalid."
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
@ -496,13 +502,13 @@ If the client needs to be sure the server supports the feature, an
|
||||||
unstable feature flag that MUST also be vendor prefixed is to be used.
|
unstable feature flag that MUST also be vendor prefixed is to be used.
|
||||||
This flag shows up in the `unstable_features` section of
|
This flag shows up in the `unstable_features` section of
|
||||||
[`/_matrix/client/versions`](/client-server-api/#get_matrixclientversions)
|
[`/_matrix/client/versions`](/client-server-api/#get_matrixclientversions)
|
||||||
as, for example, `org.matrix.mscxxxx.new_login`.
|
as, for example, `com.example.mscxxxx.new_login`.
|
||||||
|
|
||||||
{{% boxes/note %}}
|
{{% boxes/note %}}
|
||||||
MSCs MUST still describe what the stable endpoints/feature looks like
|
MSCs MUST still describe what the stable endpoints/feature looks like
|
||||||
with a note towards the bottom for what the unstable feature
|
with a note towards the bottom for what the unstable feature
|
||||||
flag/prefixes are. For example, an MSC would propose `/_matrix/client/v1/new/endpoint`,
|
flag/prefixes are. For example, an MSC would propose `/_matrix/client/v1/new/endpoint`,
|
||||||
not `/_matrix/client/unstable/org.matrix.mscxxxx/new/endpoint`.
|
not `/_matrix/client/unstable/com.example.mscxxxx/new/endpoint`.
|
||||||
{{% /boxes/note %}}
|
{{% /boxes/note %}}
|
||||||
|
|
||||||
When using this approach correctly, the implementation can release
|
When using this approach correctly, the implementation can release
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue