Merge remote-tracking branch 'matrix-org/master' into travis/all-the-auth
This commit is contained in:
commit
d7a979da63
11 changed files with 120 additions and 29 deletions
|
@ -61,7 +61,8 @@ paths:
|
||||||
description: The fully qualified user ID of the user being banned.
|
description: The fully qualified user ID of the user being banned.
|
||||||
reason:
|
reason:
|
||||||
type: string
|
type: string
|
||||||
description: The reason the user has been banned.
|
description: The reason the user has been banned. This will be supplied as the
|
||||||
|
``reason`` on the target's updated `m.room.member`_ event.
|
||||||
required: ["user_id"]
|
required: ["user_id"]
|
||||||
responses:
|
responses:
|
||||||
200:
|
200:
|
||||||
|
|
|
@ -100,6 +100,7 @@ paths:
|
||||||
name: allow_remote
|
name: allow_remote
|
||||||
x-example: false
|
x-example: false
|
||||||
required: false
|
required: false
|
||||||
|
default: true
|
||||||
description: |
|
description: |
|
||||||
Indicates to the server that it should not attempt to fetch the media if it is deemed
|
Indicates to the server that it should not attempt to fetch the media if it is deemed
|
||||||
remote. This is to prevent routing loops where the server contacts itself. Defaults to
|
remote. This is to prevent routing loops where the server contacts itself. Defaults to
|
||||||
|
@ -154,6 +155,7 @@ paths:
|
||||||
name: allow_remote
|
name: allow_remote
|
||||||
x-example: false
|
x-example: false
|
||||||
required: false
|
required: false
|
||||||
|
default: true
|
||||||
description: |
|
description: |
|
||||||
Indicates to the server that it should not attempt to fetch the media if it is deemed
|
Indicates to the server that it should not attempt to fetch the media if it is deemed
|
||||||
remote. This is to prevent routing loops where the server contacts itself. Defaults to
|
remote. This is to prevent routing loops where the server contacts itself. Defaults to
|
||||||
|
@ -221,6 +223,7 @@ paths:
|
||||||
name: allow_remote
|
name: allow_remote
|
||||||
x-example: false
|
x-example: false
|
||||||
required: false
|
required: false
|
||||||
|
default: true
|
||||||
description: |
|
description: |
|
||||||
Indicates to the server that it should not attempt to fetch the media if it is deemed
|
Indicates to the server that it should not attempt to fetch the media if it is deemed
|
||||||
remote. This is to prevent routing loops where the server contacts itself. Defaults to
|
remote. This is to prevent routing loops where the server contacts itself. Defaults to
|
||||||
|
@ -296,3 +299,44 @@ paths:
|
||||||
"$ref": "definitions/error.yaml"
|
"$ref": "definitions/error.yaml"
|
||||||
tags:
|
tags:
|
||||||
- Media
|
- Media
|
||||||
|
"/config":
|
||||||
|
get:
|
||||||
|
summary: Get the configuration for the content repository.
|
||||||
|
description: |-
|
||||||
|
This endpoint allows clients to retrieve the configuration of the content
|
||||||
|
repository, such as upload limitations.
|
||||||
|
Clients SHOULD use this as a guide when using content repository endpoints.
|
||||||
|
All values are intentionally left optional. Clients SHOULD follow
|
||||||
|
the advice given in the field description when the field is not available.
|
||||||
|
|
||||||
|
**NOTE:** Both clients and server administrators should be aware that proxies
|
||||||
|
between the client and the server may affect the apparent behaviour of content
|
||||||
|
repository APIs, for example, proxies may enforce a lower upload size limit
|
||||||
|
than is advertised by the server on this endpoint.
|
||||||
|
operationId: getConfig
|
||||||
|
produces: ["application/json"]
|
||||||
|
security:
|
||||||
|
- accessToken: []
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: The public content repository configuration for the matrix server.
|
||||||
|
schema:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
m.upload.size:
|
||||||
|
type: number
|
||||||
|
description: |-
|
||||||
|
The maximum size an upload can be in bytes.
|
||||||
|
Clients SHOULD use this as a guide when uploading content.
|
||||||
|
If not listed or null, the size limit should be treated as unknown.
|
||||||
|
examples:
|
||||||
|
application/json: {
|
||||||
|
"m.upload.size": 50000000
|
||||||
|
}
|
||||||
|
429:
|
||||||
|
description: This request was rate-limited.
|
||||||
|
schema:
|
||||||
|
"$ref": "definitions/error.yaml"
|
||||||
|
|
||||||
|
tags:
|
||||||
|
- Media
|
||||||
|
|
|
@ -143,6 +143,15 @@ paths:
|
||||||
description: The room identifier or alias to join.
|
description: The room identifier or alias to join.
|
||||||
required: true
|
required: true
|
||||||
x-example: "#monkeys:matrix.org"
|
x-example: "#monkeys:matrix.org"
|
||||||
|
- in: query
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
name: server_name
|
||||||
|
description: |-
|
||||||
|
The servers to attempt to join the room through. One of the servers
|
||||||
|
must be participating in the room.
|
||||||
|
x-example: ["matrix.org", "elsewhere.ca"]
|
||||||
- in: body
|
- in: body
|
||||||
name: third_party_signed
|
name: third_party_signed
|
||||||
schema:
|
schema:
|
||||||
|
|
|
@ -34,6 +34,10 @@ paths:
|
||||||
Kick a user from the room.
|
Kick a user from the room.
|
||||||
|
|
||||||
The caller must have the required power level in order to perform this operation.
|
The caller must have the required power level in order to perform this operation.
|
||||||
|
|
||||||
|
Kicking a user adjusts the target member's membership state to be ``leave`` with an
|
||||||
|
optional ``reason``. Like with other membership changes, a user can directly adjust
|
||||||
|
the target member's state by making a request to ``/rooms/<room id>/state/m.room.member/<user id>``.
|
||||||
operationId: kick
|
operationId: kick
|
||||||
security:
|
security:
|
||||||
- accessToken: []
|
- accessToken: []
|
||||||
|
@ -59,7 +63,9 @@ paths:
|
||||||
description: The fully qualified user ID of the user being kicked.
|
description: The fully qualified user ID of the user being kicked.
|
||||||
reason:
|
reason:
|
||||||
type: string
|
type: string
|
||||||
description: The reason the user has been kicked.
|
description: |-
|
||||||
|
The reason the user has been kicked. This will be supplied as the
|
||||||
|
``reason`` on the target's updated `m.room.member`_ event.
|
||||||
required: ["user_id"]
|
required: ["user_id"]
|
||||||
responses:
|
responses:
|
||||||
200:
|
200:
|
||||||
|
|
|
@ -78,8 +78,8 @@ paths:
|
||||||
for this room. If all users on a homeserver forget a room, the room is
|
for this room. If all users on a homeserver forget a room, the room is
|
||||||
eligible for deletion from that homeserver.
|
eligible for deletion from that homeserver.
|
||||||
|
|
||||||
If the user is currently joined to the room, they will implicitly leave
|
If the user is currently joined to the room, they must leave the room
|
||||||
the room as part of this API call.
|
before calling this API.
|
||||||
operationId: forgetRoom
|
operationId: forgetRoom
|
||||||
security:
|
security:
|
||||||
- accessToken: []
|
- accessToken: []
|
||||||
|
@ -99,6 +99,15 @@ paths:
|
||||||
}
|
}
|
||||||
schema:
|
schema:
|
||||||
type: object
|
type: object
|
||||||
|
400:
|
||||||
|
description: The user has not left the room
|
||||||
|
examples:
|
||||||
|
application/json: {
|
||||||
|
"errcode": "M_UNKNOWN",
|
||||||
|
"error": "User @example:matrix.org is in room !au1ba7o:matrix.org"
|
||||||
|
}
|
||||||
|
schema:
|
||||||
|
"$ref": "definitions/error.yaml"
|
||||||
429:
|
429:
|
||||||
description: This request was rate-limited.
|
description: This request was rate-limited.
|
||||||
schema:
|
schema:
|
||||||
|
|
|
@ -107,6 +107,7 @@ paths:
|
||||||
items:
|
items:
|
||||||
type: object
|
type: object
|
||||||
title: RoomEvent
|
title: RoomEvent
|
||||||
|
"$ref": "definitions/event-schemas/schema/core-event-schema/room_event.yaml"
|
||||||
examples:
|
examples:
|
||||||
application/json: {
|
application/json: {
|
||||||
"start": "t47429-4392820_219380_26003_2265",
|
"start": "t47429-4392820_219380_26003_2265",
|
||||||
|
|
|
@ -74,7 +74,7 @@ paths:
|
||||||
properties:
|
properties:
|
||||||
room_events:
|
room_events:
|
||||||
type: object
|
type: object
|
||||||
title: "Room Events"
|
title: Room Events Criteria
|
||||||
description: Mapping of category name to search criteria.
|
description: Mapping of category name to search criteria.
|
||||||
properties:
|
properties:
|
||||||
search_term:
|
search_term:
|
||||||
|
@ -103,7 +103,7 @@ paths:
|
||||||
The order in which to search for results.
|
The order in which to search for results.
|
||||||
By default, this is ``"rank"``.
|
By default, this is ``"rank"``.
|
||||||
event_context:
|
event_context:
|
||||||
title: "Event Context"
|
title: Include Event Context
|
||||||
type: object
|
type: object
|
||||||
description: |-
|
description: |-
|
||||||
Configures whether any context for the events
|
Configures whether any context for the events
|
||||||
|
@ -169,13 +169,13 @@ paths:
|
||||||
properties:
|
properties:
|
||||||
search_categories:
|
search_categories:
|
||||||
type: object
|
type: object
|
||||||
title: Categories
|
title: Result Categories
|
||||||
description: Describes which categories to search in and
|
description: Describes which categories to search in and
|
||||||
their criteria.
|
their criteria.
|
||||||
properties:
|
properties:
|
||||||
room_events:
|
room_events:
|
||||||
type: object
|
type: object
|
||||||
title: Room Event Results
|
title: Result Room Events
|
||||||
description: Mapping of category name to search criteria.
|
description: Mapping of category name to search criteria.
|
||||||
properties:
|
properties:
|
||||||
count:
|
count:
|
||||||
|
|
|
@ -15,6 +15,24 @@ Unreleased changes
|
||||||
- Sticker messages:
|
- Sticker messages:
|
||||||
- Add sticker message event definition.
|
- Add sticker message event definition.
|
||||||
(`#1158 <https://github.com/matrix-org/matrix-doc/pull/1158>`_).
|
(`#1158 <https://github.com/matrix-org/matrix-doc/pull/1158>`_).
|
||||||
|
- Document the ``server_name`` parameter on ``/join/{roomIdOrAlias}``
|
||||||
|
(`#1364 <https://github.com/matrix-org/matrix-doc/pull/1364>`_).
|
||||||
|
- Add 'token' parameter to /keys/query endpoint
|
||||||
|
(`#1104 <https://github.com/matrix-org/matrix-doc/pull/1104>`_).
|
||||||
|
- Add the room visibility options for the room directory
|
||||||
|
(`#1141 <https://github.com/matrix-org/matrix-doc/pull/1141>`_).
|
||||||
|
- Add spec for ignoring users
|
||||||
|
(`#1142 <https://github.com/matrix-org/matrix-doc/pull/1142>`_).
|
||||||
|
- Add the ``/register/available`` endpoint for username availability
|
||||||
|
(`#1151 <https://github.com/matrix-org/matrix-doc/pull/1151>`_).
|
||||||
|
- Add ``allow_remote`` to the content repo to avoid routing loops
|
||||||
|
(`#1265 <https://github.com/matrix-org/matrix-doc/pull/1265>`_).
|
||||||
|
- Add report content API
|
||||||
|
(`#1264 <https://github.com/matrix-org/matrix-doc/pull/1264>`_).
|
||||||
|
- Document ``/logout/all`` endpoint
|
||||||
|
(`#1263 <https://github.com/matrix-org/matrix-doc/pull/1263>`_).
|
||||||
|
- Document `highlights` field in /search response
|
||||||
|
(`#1274 <https://github.com/matrix-org/matrix-doc/pull/1274>`_).
|
||||||
- Document the GET version of ``/login``
|
- Document the GET version of ``/login``
|
||||||
(`#1361 <https://github.com/matrix-org/matrix-doc/pull/1361>`_).
|
(`#1361 <https://github.com/matrix-org/matrix-doc/pull/1361>`_).
|
||||||
|
|
||||||
|
@ -39,29 +57,18 @@ Unreleased changes
|
||||||
(`#1152 <https://github.com/matrix-org/matrix-doc/pull/1152>`_).
|
(`#1152 <https://github.com/matrix-org/matrix-doc/pull/1152>`_).
|
||||||
- Mark ``GET /rooms/{roomId}/members`` as requiring authentication
|
- Mark ``GET /rooms/{roomId}/members`` as requiring authentication
|
||||||
(`#1245 <https://github.com/matrix-org/matrix-doc/pull/1244>`_).
|
(`#1245 <https://github.com/matrix-org/matrix-doc/pull/1244>`_).
|
||||||
|
- Define what a ``RoomEvent`` is on ``/rooms/{roomId}/messages``
|
||||||
|
(`#1380 <https://github.com/matrix-org/matrix-doc/pull/1380>`_).
|
||||||
- Mark ``GET /presence/{userId}/status`` as requiring authentication
|
- Mark ``GET /presence/{userId}/status`` as requiring authentication
|
||||||
(`#1371 <https://github.com/matrix-org/matrix-doc/pull/1371>`_).
|
(`#1371 <https://github.com/matrix-org/matrix-doc/pull/1371>`_).
|
||||||
- Describe ``StateEvent`` for ``/createRoom``
|
- Describe ``StateEvent`` for ``/createRoom``
|
||||||
(`#1329 <https://github.com/matrix-org/matrix-doc/pull/1329>`_).
|
(`#1329 <https://github.com/matrix-org/matrix-doc/pull/1329>`_).
|
||||||
|
- Describe how the ``reason`` is handled for kicks/bans
|
||||||
- Changes to the API which will be backwards-compatible for clients:
|
(`#1362 <https://github.com/matrix-org/matrix-doc/pull/1362>`_).
|
||||||
|
- Clarify that clients must leave rooms before forgetting them
|
||||||
- Add 'token' parameter to /keys/query endpoint
|
(`#1378 <https://github.com/matrix-org/matrix-doc/pull/1378>`_).
|
||||||
(`#1104 <https://github.com/matrix-org/matrix-doc/pull/1104>`_).
|
- Clarify the request and result types on ``/search``
|
||||||
- Add the room visibility options for the room directory
|
(`#1381 <https://github.com/matrix-org/matrix-doc/pull/1381>`_).
|
||||||
(`#1141 <https://github.com/matrix-org/matrix-doc/pull/1141>`_).
|
|
||||||
- Add spec for ignoring users
|
|
||||||
(`#1142 <https://github.com/matrix-org/matrix-doc/pull/1142>`_).
|
|
||||||
- Add the ``/register/available`` endpoint for username availability
|
|
||||||
(`#1151 <https://github.com/matrix-org/matrix-doc/pull/1151>`_).
|
|
||||||
- Add ``allow_remote`` to the content repo to avoid routing loops
|
|
||||||
(`#1265 <https://github.com/matrix-org/matrix-doc/pull/1265>`_).
|
|
||||||
- Add report content API
|
|
||||||
(`#1264 <https://github.com/matrix-org/matrix-doc/pull/1264>`_).
|
|
||||||
- Document ``/logout/all`` endpoint
|
|
||||||
(`#1263 <https://github.com/matrix-org/matrix-doc/pull/1263>`_).
|
|
||||||
- Document `highlights` field in /search response
|
|
||||||
(`#1274 <https://github.com/matrix-org/matrix-doc/pull/1274>`_).
|
|
||||||
|
|
||||||
r0.3.0
|
r0.3.0
|
||||||
======
|
======
|
||||||
|
|
|
@ -701,8 +701,8 @@ func ignoreExitCodeOne(err error) error {
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
flag.Parse()
|
flag.Parse()
|
||||||
// It would be great to read this from github, but there's no convenient way to do so.
|
// It would be great to read this from github
|
||||||
// Most of these memberships are "private", so would require some kind of auth.
|
// cf https://github.com/matrix-org/matrix-doc/issues/1384
|
||||||
allowedMembers = map[string]bool{
|
allowedMembers = map[string]bool{
|
||||||
"dbkr": true,
|
"dbkr": true,
|
||||||
"erikjohnston": true,
|
"erikjohnston": true,
|
||||||
|
@ -715,6 +715,11 @@ func main() {
|
||||||
"rxl881": true,
|
"rxl881": true,
|
||||||
"uhoreg": true,
|
"uhoreg": true,
|
||||||
"turt2live": true,
|
"turt2live": true,
|
||||||
|
"Half-Shot": true,
|
||||||
|
"anoadragon453": true,
|
||||||
|
"mujx": true,
|
||||||
|
"benparsons": true,
|
||||||
|
"KitsuneRal": true,
|
||||||
}
|
}
|
||||||
if err := initCache(); err != nil {
|
if err := initCache(); err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
|
|
|
@ -502,6 +502,11 @@ class MatrixUnits(Units):
|
||||||
# assign value expected for this param
|
# assign value expected for this param
|
||||||
val_type = param.get("type") # integer/string
|
val_type = param.get("type") # integer/string
|
||||||
|
|
||||||
|
if val_type == "array":
|
||||||
|
items = param.get("items")
|
||||||
|
if items:
|
||||||
|
val_type = "[%s]" % items.get("type")
|
||||||
|
|
||||||
if param.get("enum"):
|
if param.get("enum"):
|
||||||
val_type = "enum"
|
val_type = "enum"
|
||||||
desc += (
|
desc += (
|
||||||
|
|
|
@ -16,6 +16,10 @@
|
||||||
Federation API
|
Federation API
|
||||||
==============
|
==============
|
||||||
|
|
||||||
|
.. WARNING::
|
||||||
|
This API is unstable and will change without warning or discussion while
|
||||||
|
we work towards a r0 release (scheduled for August 2018).
|
||||||
|
|
||||||
Matrix homeservers use the Federation APIs (also known as server-server APIs)
|
Matrix homeservers use the Federation APIs (also known as server-server APIs)
|
||||||
to communicate with each other. Homeservers use these APIs to push messages to
|
to communicate with each other. Homeservers use these APIs to push messages to
|
||||||
each other in real-time, to
|
each other in real-time, to
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue