Commit Graph

724 Commits (88b35d1be5e016958878af6890286023b31aa272)

Author SHA1 Message Date
Travis Ralston 88b35d1be5 Clarify how third party invites work
This adds several diagrams to the Client-Server API about how invites
are handled, including what the server is expected to do. This helps
implementors know what they are supposed to do in the common cases,
and infer where needed to get the more complex cases correct.

Although lacking in some areas, this is how third party invites work
today.

A link to the now-improved client-server documentation for third party
invites has been added to the server-server specification. The existing
server-server specification needed no further changes on the subject.

Fixes https://github.com/matrix-org/matrix-doc/issues/1366
6 years ago
Kitsune Ral b41eb26124 Document OpenAPI extension
Signed-off-by: Alexey Rusakov <Alexey.Rusakov@pm.me>
6 years ago
Hubert Chathi cd4fed509c
convert IS endpoints to Swagger (#1427) 6 years ago
Hubert Chathi 292d334509
document new login identifier object (#1390) 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 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 b96ee3e393
Merge pull request #1423 from turt2live/travis/s2s/keys
Improve the server key exchange portion of the s2s specification
6 years ago
Andrew Morgan 54a88eebf0
Merge pull request #1414 from matrix-org/anoa/third_party_cleanup
Clarification on third party fields
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 f5af4d2fb5
Merge pull request #1457 from matrix-org/dbkr/fix_room_tags
Fix room tags spec
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
user 5f8967c074 Move TODO. field1, field2... -> fields... 6 years ago
user a2e2ced03b Add reverse-lookup examples. 6 years ago
user d785ac78a3 Remove explode and replace with TODO, require auth on CS 6 years ago
Andrew Morgan 53137a3c53 c/p bug, fix operationIds, move rst docs to md 6 years ago
Andrew Morgan 3e4962f211 Document standardized extensions to OpenAPI v2 6 years ago
Andrew Morgan 273acb277c Change fields to use new extended query array syntax 6 years ago