Add support for unstable feature advertising via /versions

Incorporates https://github.com/matrix-org/matrix-doc/issues/1497
pull/977/head
Travis Ralston 6 years ago
parent bd72ecfa58
commit ccc1cdaead

@ -33,13 +33,25 @@ paths:
Only the latest ``Z`` value will be reported for each supported ``X.Y`` value. Only the latest ``Z`` value will be reported for each supported ``X.Y`` value.
i.e. if the server implements ``r0.0.0``, ``r0.0.1``, and ``r1.2.0``, it will report ``r0.0.1`` and ``r1.2.0``. i.e. if the server implements ``r0.0.0``, ``r0.0.1``, and ``r1.2.0``, it will report ``r0.0.1`` and ``r1.2.0``.
The server may additionally advertise experimental features it supports
through ``unstable_features``. These features should be namespaced and
may optionally include version information within their name if desired.
Features listed here are not for optionally toggling parts of the Matrix
specification and should only be used to advertise support for a feature
which has not yet landed in the spec. For example, an accepted proposal
for a feature needing implementation would advertise itself here with
the intention of being removed from this list once the spec changes land.
operationId: getVersions operationId: getVersions
responses: responses:
200: 200:
description: The versions supported by the server. description: The versions supported by the server.
examples: examples:
application/json: { application/json: {
"versions": ["r0.0.1"] "versions": ["r0.0.1"],
"unstable_features": {
"org.example.my_feature": true
}
} }
schema: schema:
type: object type: object
@ -50,5 +62,15 @@ paths:
items: items:
type: string type: string
description: The supported versions description: The supported versions
unstable_features:
type: object
description: |-
Experimental features the server supports. Features not listed here,
or the lack of this property all together, indicate that a feature is
not supported.
additionalProperties:
type: boolean
description: Whether or not the namespaced feature is supported.
required: ['versions']
tags: tags:
- Server administration - Server administration

Loading…
Cancel
Save