mirror of
https://github.com/matrix-org/matrix-spec
synced 2025-12-24 09:58:38 +01:00
Historical note: this was originally a series of several commits, spread out over several weeks. They have been squashed together to make `git annotate` work properly. The original commits were: * 91ab3934 <Will> 2021-01-25 21:16:42 -0800 Add raw API end event schemas into /data directory * aae22f47 <Will> 2021-01-25 21:33:06 -0800 Remove non-data files * 1092d4ca <Will> 2021-01-26 20:41:33 -0800 Add data-compatiuble extension (.yaml) to all data files that currently omit one * 21060109 <Will> 2021-01-26 20:57:28 -0800 Remove symlink to event-schemas, and update openAPI schema paths accordingly * 4f633845 <Travis Ralston> 2021-04-12 21:54:54 -0600 Fix event schema examples too * 301c7b2f <Will> 2021-02-05 10:15:42 -0800 Restore docs describing OpenAPI extensions that we use
81 lines
3.2 KiB
YAML
81 lines
3.2 KiB
YAML
# Copyright 2016 OpenMarket Ltd
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
swagger: '2.0'
|
|
info:
|
|
title: "Matrix Client-Server Versions API"
|
|
version: "1.0.0"
|
|
host: localhost:8008
|
|
schemes:
|
|
- https
|
|
- http
|
|
basePath: /_matrix/client
|
|
produces:
|
|
- application/json
|
|
paths:
|
|
"/versions":
|
|
get:
|
|
summary: Gets the versions of the specification supported by the server.
|
|
description: |-
|
|
Gets the versions of the specification supported by the server.
|
|
|
|
Values will take the form ``rX.Y.Z``.
|
|
|
|
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``.
|
|
|
|
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, a feature currently
|
|
undergoing the proposal process may appear here and eventually be taken
|
|
off this list once the feature lands in the spec and the server deems it
|
|
reasonable to do so. Servers may wish to keep advertising features here
|
|
after they've been released into the spec to give clients a chance to
|
|
upgrade appropriately. Additionally, clients should avoid using unstable
|
|
features in their stable releases.
|
|
operationId: getVersions
|
|
responses:
|
|
200:
|
|
description: The versions supported by the server.
|
|
examples:
|
|
application/json: {
|
|
"versions": ["r0.0.1"],
|
|
"unstable_features": {
|
|
"org.example.my_feature": true
|
|
}
|
|
}
|
|
schema:
|
|
type: object
|
|
properties:
|
|
versions:
|
|
type: array
|
|
description: The supported versions.
|
|
items:
|
|
type: string
|
|
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:
|
|
- Server administration
|