Commit Graph

86 Commits (5b73a0174dec6889d00aba7488ffd79df9c319dc)

Author SHA1 Message Date
Travis Ralston 2aa0e7b00f
Merge pull request #1483 from turt2live/travis/s2s/typing
Document how typing notifications work over federation
6 years ago
Travis Ralston 56dbeeb22a
Merge pull request #1469 from turt2live/travis/s2s/backfill
Improve documentation for backfilling rooms
6 years ago
Travis Ralston 721be47eb1 Describe how get_missing_events actually works
The original text wasn't far off, except for being wrong about what the fields actually do. This commit also adds a bit of clarity for how the server is expected to behave.
6 years ago
Travis Ralston 0a7e670715 Document how typing notifications work over federation
Relevant synapse code: d69decd5c7/synapse/handlers/typing.py (L221-L230)
6 years ago
Travis Ralston a77975ba68
Merge pull request #1450 from turt2live/travis/s2s/inviting-rooms
Improve documentation for how non-third party invites work
6 years ago
Travis Ralston 0f8954d839
Merge pull request #1463 from turt2live/travis/s2s/pdus-and-edus
Improve documentation around EDUs and PDUs
6 years ago
Travis Ralston 57eeddd849 Remove unused origin and destination on EDUs 6 years ago
Travis Ralston cfdbee5fc2 EDU origin and destinations aren't required 6 years ago
Travis Ralston 7ada91787a age_ts isn't real 6 years ago
Travis Ralston 521dcdd5d5 Merge remote-tracking branch 'matrix-org/master' into travis/s2s/backfill 6 years ago
Travis Ralston 35f15ba3d8
Merge pull request #1477 from turt2live/travis/s2s/public-rooms
Document the /publicRooms endpoint for federation
6 years ago
Travis Ralston 8724ed99ad
Merge pull request #1480 from turt2live/travis/s2s/swagger-consumes-json
Specify which federation swagger APIs consume JSON
6 years ago
Travis Ralston e10770ae8b
Merge pull request #1475 from turt2live/travis/s2s/event-auth
Document /event_auth and /query_auth
6 years ago
Travis Ralston ef9d766dc3 Remove irrelevant TODO
We fixed the EDU, so we don't need this comment.
6 years ago
Travis Ralston 2e6d6e2790 Specify which swagger APIs consume JSON 6 years ago
Travis Ralston 8dd63388e0 invites consume JSON 6 years ago
Travis Ralston 13a2b54bf9 query_auth consumes JSON 6 years ago
Travis Ralston 6ac25d167c get_missing_events consumes JSON 6 years ago
Travis Ralston 2ac80d38d7 Document the /publicRooms endpoint for federation
This intentionally doesn't document the third party network aspect of the endpoint. This is scheduled for a later area for dealing with third party network/IDs and is reported as https://github.com/matrix-org/matrix-doc/issues/1476

The client-server response has been broken out to a shared file: both the client-server and server-server /publicRoom endpoints return the same thing, with slightly different inputs.

The inputs (and behaviour) are based upon the docstring here: 43ecfe0b10/synapse/federation/transport/server.py (L583-L612)
6 years ago
Travis Ralston 73958ecbff Document /event_auth and /query_auth
/event_auth is a fairly easy endpoint to determine the use case of. /query_auth is a little harder to investigate and has a fairly interesting purpose: it appears to be used for the sending server to admit defeat and shop around for the right auth chain, correcting it's own perspective as it goes.

/query_auth is based off the following research points in synapse:
* 43ecfe0b10/synapse/handlers/federation.py (L1947-L1990)
* 43ecfe0b10/synapse/handlers/federation.py (L2049-L2187)
* 43ecfe0b10/synapse/handlers/federation.py (L1716-L1761)
* 43ecfe0b10/synapse/federation/federation_server.py (L393-L446)
* https://github.com/matrix-org/synapse/blob/master/synapse/federation/transport/server.py#L482-L487
6 years ago
Travis Ralston 6b67d501e4
Merge branch 'master' into travis/s2s/query 6 years ago
Travis Ralston 3a9fb11c9b
Merge branch 'master' into travis/s2s/backfill 6 years ago
Travis Ralston 1578da453b
Merge branch 'master' into travis/s2s/get-event 6 years ago
Travis Ralston 86d7f42173
Merge pull request #1455 from turt2live/travis/s2s/leaving-rooms
Document how leaving rooms/rejecting invites over federation works
6 years ago
Travis Ralston d48f1e1713
Merge pull request #1461 from turt2live/travis/s2s/transactions
Improve documentation on how Transactions work
6 years ago
Travis Ralston cda88f3b3d Document /get_missing_events
Fixes https://github.com/matrix-org/matrix-doc/issues/1385
6 years ago
Travis Ralston e766606f24 join -> leave 6 years ago
Travis Ralston 0b313dbdd9 Don't explain what a 400 Bad Request is 6 years ago
Travis Ralston 05bb7e1050 Spelling and word choice 6 years ago
Travis Ralston 53d4003d3a manual merge of master into travis/s2s/query 6 years ago
Travis Ralston 48972addbf
Merge pull request #1428 from turt2live/travis/s2s/joining-rooms
Improve the documentation for joining rooms
6 years ago
Travis Ralston 5596243add origin is required 6 years ago
Travis Ralston 8b7bc60367 list -> array 6 years ago
Travis Ralston 9d474bb819 Document event retrieval endpoints in more detail
This also adds a previously-undocumented endpoint: /state_ids

Backfill is technically not part of this section, however it is being left untouched to make the merge with #1469 easier (which moves it out of the file).

Reference material:
* Some calls to synapse on these endpoints with a relatively simple private room.
6 years ago
Travis Ralston 4b1955f395 Clarify what the auth_events on a PDU are 6 years ago
Travis Ralston 5aef545128 Improve documentation for backfilling rooms
There's not a whole lot to improve here - most of the changes are about reorganization and minor clarifications.
6 years ago
Travis Ralston d0e8df8f3f prev_content is an object 6 years ago
Travis Ralston 5027a9a59a Improve documentation around EDUs and PDUs
Clarify fields, improve examples, and make the tables in the spec be generated rather than duplicated.
6 years ago
Travis Ralston 7679b4f1d1 Improve documentation on how Transactions work
The response is based upon various sections of the Synapse code in how it generates a response.

There are no new fields added to the transaction. Originally, `previous_ids` and `pdu_failures` were to be documented however neither of these are used in the real world.
6 years ago
Travis Ralston 73b0a03b9b Remove more padding 6 years ago
Travis Ralston cafd1a9ab3 Use more modern timestamps 6 years ago
Travis Ralston e27f4a69a0 Key versions must be [0-9a-zA-Z_] 6 years ago
Travis Ralston bdccfca726 Timestamps should be in milliseconds 6 years ago
Travis Ralston cad1db2a14 Unpadded means unpadded 6 years ago
Travis Ralston 9dbb627d7b Undo accidental changes to the operation ID 6 years ago
Travis Ralston 2f71703427 Deprecate key ID querying 6 years ago
Travis Ralston 9fdd8a6f96 Document how leaving rooms/rejecting invites over federation works
Fixes https://github.com/matrix-org/matrix-doc/issues/1401

This is very similar to the joining rooms handshake, and much of it is a near copy/paste of the make_join and send_join API. The major difference is the send_leave API doesn't return anything.

References:
* Handling of make_leave: d69decd5c7/synapse/handlers/federation.py (L1285-L1310)
* send_leave route: d69decd5c7/synapse/federation/transport/client.py (L267)
* make_leave route: d69decd5c7/synapse/federation/transport/server.py (L396)
* send_leave returning nothing: d69decd5c7/synapse/handlers/federation.py (L1346)
6 years ago
Travis Ralston fcaa299f81 Include information on how invite_room_state works
This is completely optional, and the events included are up to the sender. 

Sources:
* Structure: d69decd5c7/synapse/handlers/message.py (L896-L904)
* What events are recommended: d69decd5c7/synapse/config/api.py (L30-L40)
6 years ago
Travis Ralston f873bae0cc Improve documentation for how non-third party invites work
The details are fairly straightforward. An `event` has been added to the response body because that's what Synapse returns, despite the spec saying otherwise until now: d69decd5c7/synapse/federation/federation_server.py (L339)
6 years ago
Travis Ralston c2f1c6e78d Improve the joining rooms handshake documentation
There isn't a whole lot to this section that needed work. The section overall lost the table schema in favour of having the endpoints close by.

The directory query is improved in https://github.com/matrix-org/matrix-doc/pull/1443
6 years ago