Commit Graph

1196 Commits (c8e0ed60624d3ec1cbbd39c73810dbcb54c56b11)

Author SHA1 Message Date
Travis Ralston 49ec0a36a8
Merge pull request #1481 from turt2live/travis/s2s/authentication
Define authorization requirements on federation swagger APIs
6 years ago
Travis Ralston 4b9922b641
Merge pull request #1494 from turt2live/travis/general/openid
Document OpenID in the client-server and server-server APIs
6 years ago
Travis Ralston 5b30d33b89
Simpler language 6 years ago
Travis Ralston c891e4a957 Require the push gateway URL to be of a specific path 6 years ago
Travis Ralston 2aa0e7b00f
Merge pull request #1483 from turt2live/travis/s2s/typing
Document how typing notifications work over federation
6 years ago
Travis Ralston 45c68e323a Add general clarity to the /createRoom endpoint
This commit does a number of things:
* Minor formatting/alignment changes
* Document the room_alias response key. This could be deprecated now, or forfeited, if needed.
* Remove the guest_can_join parameter - it is not actually supported
* Document the previously undocumented power_level_content_override parameter
* Clarify that the room_id is required on the response
* More clearly spell out which events are created as part of the request
* Clarify how the room alias becomes the canonical alias
* Clarify how the `visibility` may be used to determine a default preset to apply
* Document the `m.federate` creation content parameter, adding an option for the homeserver to define a default value

References:
* Preset being inferred by the visibility: cd32c19a60/synapse/handlers/room.py (L172-L177)
* Power level content overrides:
  * https://github.com/matrix-org/synapse/blob/master/synapse/handlers/room.py#L198
  * https://github.com/matrix-org/synapse/blob/master/synapse/handlers/room.py#L335-L359
* Aliases becoming canonical: https://github.com/matrix-org/synapse/blob/master/synapse/handlers/room.py#L366-L370
* `m.federate` landing in the create event: https://github.com/matrix-org/synapse/blob/master/synapse/handlers/room.py#L311-L315

Fixes https://github.com/matrix-org/matrix-doc/issues/1243
Fixes https://github.com/matrix-org/matrix-doc/issues/1471
Inspired by https://github.com/matrix-org/matrix-doc/issues/1213
6 years ago
Travis Ralston fde48e7ee8 Specify how room versioning works
This is the spec PR for https://github.com/matrix-org/matrix-doc/issues/1425

Room version upgrades are not part of MSC1425.

Documented aspects:
* room_version on the create event
* creating a room with a specific version (useful for testing)
* make_join behaviour
* error code documentation
* grammar of room versions

Based upon https://docs.google.com/document/d/1urKgReoHqxX8R_XtySB17dPi-DZcKhqTEL2_s895Wz0/edit
6 years ago
Travis Ralston de961fb7d6 Improve wording on push gateways 6 years ago
Hubert Chathi fcca80dad8 various minor fixes
- formatting fixes
- add examples to homeserver/identity server discovery schema
- replace DNS name with hostname
6 years ago
Hubert Chathi 6a3cf10be9 Merge remote-tracking branch 'origin/master' into well-known 6 years ago
Travis Ralston 6ad71f785e Improve documentation for pushers and push gateways
This fixes a number of formatting issues alongside a few documentation problems:
* The push gateway can actually expect less parameters than previously advertised. This is for user privacy.
* Introduction of the `m.email` pusher for email-capable homeservers.
* Fields not being flagged as required on some endpoints.
* Document the `event_id_only` format

Note: this does not attempt to document push rules, just pushers.

Fixes https://github.com/matrix-org/matrix-doc/issues/1374
Fixes https://github.com/matrix-org/matrix-doc/issues/1087
6 years ago
Travis Ralston a556e33eb9 Spec /3pid/onbind
Fixes https://github.com/matrix-org/matrix-doc/issues/1422
6 years ago
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 25c77ab2d0 Define authorization requirements on federation swagger APIs 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 e03bfbc47b Document how read receipts work over federation
Federation format: d69decd5c7/synapse/handlers/receipts.py (L153-L166)

Population of the fields that the above uses to construct the EDU: d69decd5c7/synapse/handlers/receipts.py (L48-L56)
6 years ago
Travis Ralston 05a2427c73 Document how presence EDUs work between servers
It's worth noting that Synapse does not make use of the `poll` or `unpoll` fields, and therefore the wording has been updated to permit servers to reject users. In the case of synapse, it would automatically reject everyone in the list by nature of ignoring it.
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 dcae88c290 Document OpenID in the server-server API
Part of https://github.com/matrix-org/matrix-doc/issues/857

Reference: d69decd5c7/synapse/federation/transport/server.py (L543-L557)
6 years ago
Travis Ralston 8ffac01efe Document OpenID in the client-server API
Part of https://github.com/matrix-org/matrix-doc/issues/857

Reference: d69decd5c7/synapse/rest/client/v2_alpha/openid.py (L31-L58)
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
Andrew Morgan 0ff882fb3b Field definitions for protocol metadata 6 years ago
Kitsune Ral 346db48588 Revert giving get() a default
As per the PR review.

Signed-off-by: Alexey Rusakov <Alexey.Rusakov@pm.me>
6 years ago
Kitsune Ral c6bfac41c5 Bypass jsonschema references resolver
jsonschema's resolver doesn't work with local files on Windows.
resolve_references only works with the local files (on Windows as well)
but that's exactly what's needed for the case (as long as we don't have
remote references, that is).

Signed-off-by: Alexey Rusakov <Alexey.Rusakov@pm.me>
6 years ago
Kitsune Ral d17ec7f184 Check that path starts with file://, not file:///
Because file:/// is not a thing on Windows.
6 years ago
Kitsune Ral 2c9f00d37a Follow PEP 8 6 years ago
Kitsune Ral 31687608dc Factor out common code 6 years ago
Travis Ralston 73b0a03b9b Remove more padding 6 years ago
David Baker 5ddf5374db Missing comma 6 years ago
David Baker e4fd088fcc Fix room tags spec 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
Travis Ralston 8e97b0ca81 Improve the server key exchange portion of the s2s specification
Most of the text has been shuffled into the swagger definitions to bring it closer to where it matters.

This also attempts to clarify what is out in the wild. Most importantly, the first version of the key exchange is outright removed from the specification. Other research points/questions are:

* What is a "Key ID"?
  * 1241156c82/synapse/rest/key/v2/local_key_resource.py (L81-L83)
  * 1241156c82/synapse/rest/key/v2/local_key_resource.py (L88-L91)
* Returning a cached response if the server throws a 400, 500, or otherwise not-offline status code
  * 1241156c82/synapse/rest/key/v2/remote_key_resource.py (L227-L229)
* `minimum_valid_until_ts` default
  * This branch of the ladder: 1241156c82/synapse/rest/key/v2/remote_key_resource.py (L192)
* Returning empty arrays when querying offline/no servers
  * Queried by hand against matrix.org as a notary server with a fake domain name to query
* Returning all keys even when querying for specific keys
  * Queried by hand using matrix.org as a notary server against a server publishing multiple keys.

The examples and descriptions were also improved as part of this commit.
6 years ago
Travis Ralston d914c402e2 Improve the profile query to have more sane responses
This is a mix of Synapse and Dendrite behaviour, mostly Dendrite. Synapse returns `null` for field values that aren't set, however Dendrite just doesn't return them and instead opts for an empty object.

Further, synapse is lacking in error codes in this area. Dendrite does some additional validation on this API which introduces more errors for bad requests, instead of defaulting to empty objects/200 OK responses.

Likewise, Dendrite returns a 404 when the user is not found while Synapse returns 200 OK/empty object.
6 years ago
Travis Ralston 0ddf578b61 Combine all queries into their own section
This removes the Directory and Profile sections, instead opting to document them as Queries. 

The behaviour of profile queries is based on Synapse's behaviour. A few issues have been opened to improve the behaviour:
* https://github.com/matrix-org/matrix-doc/issues/1434
* https://github.com/matrix-org/matrix-doc/issues/1435
* https://github.com/matrix-org/matrix-doc/issues/1436
* https://github.com/matrix-org/matrix-doc/issues/1437

This fixes https://github.com/matrix-org/matrix-doc/issues/1404
6 years ago
Travis Ralston b0744aa1e9
Merge pull request #1413 from turt2live/travis/s2s/join-swagger
Convert joins/invites to swagger
6 years ago
Travis Ralston af0629a520 Full stop 6 years ago
Travis Ralston 9f399a08fe Full stops
I'm never going to remember these
6 years ago
Travis Ralston 0d1b82a601 Add the event_id to unsigned PDUs
This went missing in the swagger conversion. The example already has an event_id.
6 years ago
Travis Ralston eaf175056f Full stops 6 years ago
Travis Ralston 797aca87bd Update the check_examples.py script to resolve references
The script previously wasn't chasing down valid references in examples.
6 years ago
Travis Ralston 7314405904 Update comment 6 years ago
Travis Ralston 45ec8269e6 Fill out the required fields in all the examples 6 years ago
Travis Ralston 9c1c541a38 Remove extra "required" declarations
"required" is something that is handled as an array, and these are invalid. The `type` in both cases is covered by a required array elsewhere
6 years ago
Travis Ralston 004998b98f Convert invites to swagger
The whole section reads like a description for the endpoint, and has been replaced by the swagger definition now (rather than at a later stage). All the same information should be kept.
6 years ago
Travis Ralston f09c4fd286 Convert joins to swagger 6 years ago
Travis Ralston cb4fcd1d09 Merge remote-tracking branch 'matrix-org/master' into travis/s2s/transactions-swagger 6 years ago
Travis Ralston 88beaf4ad8 Completely remove /pull
It's not been in use for years - we can safely let it disappear
6 years ago
Travis Ralston 21c4af70a9 Fix schema definitions (spelling, attributes) 6 years ago
Travis Ralston 2aafde4549
Merge pull request #1419 from turt2live/travis/s2s/3pinvites-swagger
Convert third party invite exchange to swagger
6 years ago
Travis Ralston 89384c96c1 Full stops, language. 6 years ago
Travis Ralston e226b60c7f Merge remote-tracking branch 'matrix-org/master' into travis/s2s/transactions-swagger 6 years ago
Travis Ralston bafdcf3640 Full stops, spelling, and operation IDs. 6 years ago
Travis Ralston 7cb918407d Merge remote-tracking branch 'matrix-org/master' into travis/s2s/keys-swagger 6 years ago
Travis Ralston 05fb94e195 Merge remote-tracking branch 'matrix-org/master' into travis/better-errors 6 years ago
Travis Ralston 272f3d8432 Fix documentation link 6 years ago
Travis Ralston cf93c88337 Convert third party invite exchange to swagger 6 years ago
Travis Ralston d2b0b1bbda
Merge pull request #1379 from turt2live/travis/preset-guests
Document guest_access in /createRoom presets; Make presets a table
6 years ago
Travis Ralston e5da1e1741 Improve upon the transaction schema and examples
Reduces data duplication and makes the objects more reusable for other areas of the spec
6 years ago
Travis Ralston 51faf8ed2e Convert the general query API to swagger
Includes "moving" the directory query API into the same area. This will make more sense once the other query types are specified.
6 years ago
Travis Ralston 1829589d23 Convert 3pn errors to new definition 6 years ago
Travis Ralston 197c36c520 Merge remote-tracking branch 'matrix-org/master' into travis/better-errors 6 years ago
Travis Ralston 91c59e7384
Merge pull request #1353 from matrix-org/anoa/as_thirdparty_lookup
Thirdparty Entity Lookup API
6 years ago
Andrew Morgan 291a4dfc76 Third party lookup module. Fix wording 6 years ago
Travis Ralston 6e3993effe Merge remote-tracking branch 'matrix-org/master' into travis/preset-guests 6 years ago
Travis Ralston 84e07a0c10 Convert errors in presence.yaml 6 years ago
Travis Ralston 16125f16f5 Spec retry_after_ms on ratelimit errors 6 years ago
Travis Ralston 8b513b9f8e Merge remote-tracking branch 'matrix-org/master' into travis/better-errors 6 years ago
Andrew Morgan 8999887245 Path -> query params 6 years ago
Andrew Morgan 9bde78ac28 $ref needs to be under a schema: 6 years ago
Andrew Morgan 114bcf1a2e Use $ref, clean up, fix errors, AS is now a C-S module. 6 years ago
Travis Ralston 374ec00046 Convert things that mention "Transaction" to swagger
There's two kinds of transactions currently: one with EDUs and one without. The one with EDUs is only used on /send, however the schema is still somewhat worth splitting out for simplicity.

The examples are brought apart to make them slightly more reusable for when they get dumped into the relevant sections of the spec (see TODO in server_server_api.rst)

Further, the Transactions stuff introduces tuples to the spec. The units.py has been updated to support this.
6 years ago
Travis Ralston 3e13ec2841 Fix required properties in POST /query 6 years ago
Travis Ralston 96889f16e9 Split out and fix the /server and /query key APIs 6 years ago
Travis Ralston bd2c0b7c98 Convert server keys to swagger 6 years ago
Travis Ralston fbee83d5cf Clarify some of the properties on the search result
Fixes https://github.com/matrix-org/matrix-doc/issues/773
6 years ago
Travis Ralston d7a979da63 Merge remote-tracking branch 'matrix-org/master' into travis/all-the-auth 6 years ago
Travis Ralston 516000bdc3 Fix error reference in media repo 6 years ago
Travis Ralston ab75fc4b20 Merge remote-tracking branch 'matrix-org/master' into travis/better-errors 6 years ago
Travis Ralston e7a6ff1064
Merge branch 'master' into travis/spec-reason 6 years ago
Travis Ralston 1722734a51
Merge pull request #1364 from turt2live/travis/server-name-join
Document the server_name query parameter on /join/{roomIdOrAlias}
6 years ago
Will Hunt ff3c379339
Merge pull request #1189 from Half-Shot/hs/upload-limits
GET media/config 🎉
6 years ago
Will Hunt 77f4ac54aa
Wordy intro sentence for description 6 years ago
Will Hunt 2e6cc8045c
Better indent of description 6 years ago
Will Hunt d5ce87e956
Split summary up into description and summary 6 years ago
Travis Ralston bbf63d116c Fix reference to error.yaml in forget room API 6 years ago
Travis Ralston 55c27d6212
Merge branch 'master' into travis/better-errors 6 years ago
Travis Ralston 4485b2f025
Merge branch 'master' into travis/server-name-join 6 years ago
Travis Ralston c1c1f28c79
Merge branch 'master' into travis/dont-forget-to-leave 6 years ago
Travis Ralston 3935861445
Merge pull request #1380 from turt2live/travis/define-roomevent
Define RoomEvent on /rooms/{roomId}/messages
6 years ago
Andrew Morgan e81e0328c2 Fix single protocol metadata endpoint path, remove 500s 6 years ago
Travis Ralston 16860ddd22 De-quote 6 years ago
Andrew Morgan 4c38012122 I can spell 6 years ago
Andrew Morgan e6218b56ab Switch properties to schema 6 years ago
Andrew Morgan a6dad76c01 Fix indentation 6 years ago
Andrew Morgan cc3724b54a fix indentation, error messages. add rest of PR 6 years ago
Kitsune Ral dfdc5f9bef search.yaml: Rename some titles to avoid confusion between request and response schemas
Signed-off-by: Alexey Rusakov <Alexey.Rusakov@pm.me>
6 years ago
Travis Ralston 436b410698 Document the error code when someone tries to forget a room they are in 6 years ago
Travis Ralston 9b1f3a1f47 Document guest_access in /createRoom presets; Make presets a table
Previously the presets ended up being rendered as one long string (the indentation was not respected). This was hard to read and wasn't very clear.

Now that there's a larger amount of information, it makes some sense to put it into a table. Tables don't work nicely when nested in another table, so the preset definitions have been moved into the general route description.

This commit also updates the documentation to reference `preset`, not `presets` given the param is singular.

Fixes https://github.com/matrix-org/matrix-doc/issues/881
6 years ago
Hubert Chathi ce1e2c0904 incorporate feedback from reviewers 6 years ago
Travis Ralston 9e796192e4 Document that clients must leave before forgetting rooms
Fixes https://github.com/matrix-org/matrix-doc/issues/1011
6 years ago
Hubert Chathi 5bc29eb11c remove accidentally-committed backup file 6 years ago
Travis Ralston 05c85fd840 Spec the 403 on GET /presence/{userId}/status 6 years ago
Kitsune Ral 981d1004bc Add a missing $ref 6 years ago
Travis Ralston 442ad99727
Merge pull request #1273 from QMatrixClient/content-repo-use-default
Add 'default' to formally enforce the description
6 years ago
Travis Ralston caa6d4d9ad Give all errors a schema reference
This just helps keep an overall structure
6 years ago
Travis Ralston 7cd22f5690 Describe the rate limit error everywhere
Fixes https://github.com/matrix-org/matrix-doc/issues/1153
6 years ago
Travis Ralston 1f12637d3f Getting presence requires authentication 6 years ago
Travis Ralston a6b0125da6 Our swagger doesn't support explode yet 6 years ago
Travis Ralston d279fdafa6 Document the server_name query parameter on /join/{roomIdOrAlias}
Fixes https://github.com/matrix-org/matrix-doc/issues/904
6 years ago
Travis Ralston 7d94aaace8 Explicitly declare that the kick/ban reason will be on the membership event
Fixes https://github.com/matrix-org/matrix-doc/issues/798
6 years ago
Travis Ralston 2409c84968 Document the GET version of /login
Fixes https://github.com/matrix-org/matrix-doc/issues/677
6 years ago
Hubert Chathi 0dd330962d initial draft of .well-known discovery 6 years ago
Andrew Morgan d73b247688 3PE lookup service 6 years ago
Will Hunt a1309d636c
Remove "Clients should handle gracefully" sentence 6 years ago
Will Hunt 41c18bed0f
+repository 6 years ago
Will Hunt 21e957edfb
Better note for /config 6 years ago
Will Hunt 1820df02d9
media => content repository 6 years ago
Will Hunt 091b2a6771
Hard limit on requiring accessToken. Rephrased some sections 6 years ago
Will Hunt eeaf4385d7
Speling is my weakniss 6 years ago
Will Hunt 80935eadcf
Update content-repo.yaml 6 years ago
Will Hunt ddc152347b
Extending words and rate limiting 6 years ago
Terrill Tsang f032d6d1c3
Update keys.yaml
Fixed an end to end document bug , a format misleading in an claim response
6 years ago
Will Hunt 1140c0c05b Document StateEvent for /createRoom (#1329) 7 years ago
Will Hunt 6d0a56d190
Suggestions by Travis tend to be sensible ones 7 years ago
Will Hunt 6b9640bcb4
upload_size => m.upload.size 7 years ago
Will Hunt 077cd04a6d
/limits => /config 7 years ago
user 5ab5fe08d1 Small grammatical and stylistic fixes 7 years ago
Michael Telatynski df5455de1f
re-arrange fields in example /search request to make them a valid request. 7 years ago
Michael Telatynski 64f97c5b78
add example of highlights field in /search response 7 years ago
Michael Telatynski 4ff5887c91
spec the highlights field in /search response 7 years ago
Kitsune Ral 42fba1a87e Add 'default' to formally enforce the description
A quick follow up on #1265.

Signed-off-by: Alexey Rusakov <Alexey.Rusakov@pm.me>
7 years ago
Travis Ralston 3dc54b20c6
Merge branch 'master' into travis/clarify-routing-loops 7 years ago
Travis Ralston 8610effad7
Merge branch 'master' into travis/reporting 7 years ago
Travis Ralston 7cc15f3315 Document the allow_remote query param on the media repo
Fixes https://github.com/matrix-org/matrix-doc/issues/837

Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Travis Ralston 9037f506ac Document how to report content
Fixes: https://github.com/matrix-org/matrix-doc/issues/739

Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Travis Ralston 4278cd56a4 Document /logout/all
Fixes https://github.com/matrix-org/matrix-doc/issues/700

Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Florian Jacob cc54a4f8cb /rooms/{roomId}/members: specify access_token requirement
as the behaviour of which members the users see is user-specific
and therefore requires authentication.

Signed-off-by: Florian Jacob <projects+git AT florianjacob )DOT( de>
7 years ago
Richard van der Hoff bb39bea44d
Merge pull request #1169 from mujx/event-id-format
Use the correct event_id format on examples
7 years ago
Valentin Deniaud 55b512c968 add delete_devices endpoint
fix #1041
7 years ago
Valentin Deniaud 34140a785d fix typo in delete device 7 years ago
Will Hunt ffc8ee298a
a upload > an upload 7 years ago
Will Hunt de6fe1b76e Add note about auth 7 years ago
Will Hunt c9abf36097
size > upload_size 7 years ago
Will Hunt 2783820f98 Initial draft of GET media/limits 7 years ago
Jason Volk 048de9803e Fix typo. 7 years ago
Konstantinos Sideris 7448ef0db0 Use the correct event_id format on examples
Signed-off-by: Konstantinos Sideris <sideris.konstantin@gmail.com>
7 years ago
Andrew Morgan cd26c170de Specify token used in /login is not an Access Token (#1155)
* Specify token used in /login is not an Access Token

While working through the implementation of /login in Dendrite, it was
confusing what the contents of the token attribute in the login request
body referred to. Initially, I thought it was an access token, which led
to further confusion. This commit explicitly states that the token is a
login token, which is separate from an access token, hopefully reducing
confusion for future readers.

Signed-off-by: Andrew Morgan (https://amorgan.xyz) <andrew@amorgan.xyz>
7 years ago
Richard van der Hoff 2644e5657d
Merge pull request #1152 from turt2live/travis/clarify-whoami
Improve documentation around /account/whoami
7 years ago
Travis Ralston 159ab7313f Fix typos in whoami.yaml
Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Travis Ralston b7f8f20de9 Reword the appservice portion of /account/whoami
Credit goes to richvdh - suggestions taken with edits.

Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Travis Ralston 6ba5d7ca92 Reword appservice requirements for /account/whoami
Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Richard van der Hoff a549baa01d
registration.yaml: fix typo
it's -> its
7 years ago
Travis Ralston 2e4e5e25e8 Improve documentation around /account/whoami
Clarifies: https://github.com/matrix-org/matrix-doc/issues/1135

Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Travis Ralston 15cdde3f49 Add GET /register/available
Adds https://github.com/matrix-org/matrix-doc/issues/911

Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Travis Ralston d88a1308c2 Formatting and remove DELETE /directory/list
Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Travis Ralston 5cbfa73fe4 Improve documentation of /directory/list
* 404 for room not found instead of 400
* GET doesn't require an access token
* PUT (and therefore DELETE) can have it's own access control checks
* DELETE is implemented because of synapse

Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Travis Ralston e4f7ba70f5
Merge branch 'master' into travis/spec-directory-list 7 years ago
Travis Ralston 595667d15d Spec /directory/list
Adds https://github.com/matrix-org/matrix-doc/issues/417

Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Maxime Dor c8393306d1 Add IS ping endpoint 7 years ago
Jason Volk de6d2c96fe Minor grammar fix. 7 years ago
Richard van der Hoff f7bbcd1678
Merge pull request #1110 from t3chguy/rooms/event
Document new rooms/$/event/$ API for fetching a single event (no ctx)
7 years ago
Michael Telatynski 04eb6c7b65
link to both context and event in depr notice as per review 7 years ago
Michael Telatynski c5816a80af
move /rooms/{roomId}/event/{eventId} and update depr notice 7 years ago
Michael Telatynski 06911d4fab
Merge branch 'master' of https://github.com/matrix-org/matrix-doc into t3chguy/search_defaults 7 years ago
Michael Telatynski a9c3d94f24
Merge branch 'master' of https://github.com/matrix-org/matrix-doc into rooms/event 7 years ago
Michael Telatynski a5374c7df7
Document new rooms/$/event/$ API for fetching a single event (no ctx) 7 years ago
Michael Telatynski dc27323d8b
Document the defaults for the /search API 7 years ago
Richard van der Hoff 59e4c625b3
Merge pull request #1093 from CromFr/guest_can_join
Add createRoom guest_can_join parameter
7 years ago
David Baker fa0eb2405f all rooms, not any, and remove extra words 7 years ago
David Baker ca09415e80 Fix /keys/changes response to reflect reality 7 years ago
David Baker bb0bbedb87 indenting 7 years ago
David Baker 1674b0e3b5 Doc /keys/query 'token' param 7 years ago
Michael Telatynski 784adade9b
changes based on Pull Request feedback 7 years ago
Michael Telatynski 3d8fe6e090
merge profiles with user directory into user data, also fix typo 7 years ago
Michael Telatynski 605510e965
Merge branch 'master' into user_directory 7 years ago
Michael Telatynski d219cbc978
apply points from review 7 years ago
Richard van der Hoff 00b28495a6 Explain how to split an mxid 7 years ago
Richard van der Hoff d9a4ddbf65 Mark `home_server` field deprecated
This is spelt wrong, and is redundant to user_id, so let's stop people using
it.
7 years ago
Michael Telatynski 97445195f6
add user_directory 7 years ago
Gergely Polonkai e9622bf9e4 Fix example in email based registration endpoint
The spec says `send_attempt` should be a number, but the example shows it as a string.

Signed-off-by: Gergely Polonkai <gergely@polonkai.eu>
7 years ago
Crom (Thibaut CHARLES) b270233549
Add createRoom guest_can_join parameter 7 years ago
Thibaut CHARLES 5e2a48f709
createRoom StateEvent.content should be an object 7 years ago
Maxime Dor 9d2e18cca1 Adapt paths as per feedback 7 years ago
Maxime Dor d1e64daa10 Fix yaml title for directory api 7 years ago
Maxime Dor 28c09aed62 Properly mark required response keys to pass tests 7 years ago
Maxime Dor 8a6103798e Fix for tests 7 years ago
Maxime Dor bb50ec2e88 Document directory query endpoint 7 years ago
Richard van der Hoff 2128924933
Merge pull request #1072 from maxidor/max/ss/version
Document federation version endpoint
7 years ago
Maxime Dor 1045bc721d Document federation version endpoint 7 years ago
Kitsune Ral 828086a86c Supply operationId for freshly added IS and AS operations 7 years ago
Kitsune Ral a68b7e1bbd Supply operationId with freshly added operations
Signed-off-by: Alexey Rusakov <ktirf@users.sf.net>
7 years ago
Kitsune Ral b53083732b Merge remote-tracking branch 'remotes/origin/master' 7 years ago
Kitsune Ral 868af0a7a1 Provide doc-comments with makeHandler(); cleanup 7 years ago
David Baker 5147a3b975 Fix broken links & grammar 7 years ago
David Baker 45af878e11 Merge remote-tracking branch 'origin/master' into dbkr/is_bulk_lookup 7 years ago
David Baker d728e67751
Merge pull request #1068 from matrix-org/dbkr/threepid_add_msisdn
Document threepids
7 years ago
Maxime Dor 836e6c81d1 Fix spelling 7 years ago
David Baker e80675c9e9 Link in markdown, not swagger 7 years ago
David Baker 493b936209 Make these links more specific too 7 years ago
Maxime Dor cdfff67878 Create spec for IS bulk lookup 7 years ago
Travis Ralston 0f5a4efce6 Spec URL previews (#1064)
* Spec URL previews
* Require authentication on /upload and /preview_url
7 years ago
David Baker 6edb90a08e Document threepids
Adds the /msisdn' 3pid type and generally fleshes out what a 3pid
is and how they work.

This merges most of the work from Max Dor in https://github.com/matrix-org/matrix-doc/pull/1039
with some tweaks and additions.
7 years ago
Kitsune Ral 33463e3907 Factor out parser.validate callback 7 years ago
Travis Ralston 2468c38482 Add required property to whoami
Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Travis Ralston 41db12713d Update whoami endpoint
Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Travis Ralston 9cf2b59f4e Make it less obvious where this was copy/pasted from
Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Travis Ralston b1801ea6db Spec /account/whoami
Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Kitsune Ral 77a9daccec Validation that operationId is present
Signed-off-by: Alexey Rusakov <ktirf@users.sf.net>
7 years ago
Kitsune Ral 66268260c7 Merge remote-tracking branch 'remotes/origin/master' 7 years ago
Kitsune Ral 1d4410b638 operationid -> operationId
Signed-off-by: Alexey Rusakov <ktirf@users.sf.net>
7 years ago
Richard van der Hoff 88fb2e9abd
Merge pull request #1045 from maxidor/max/cs/unknow_filter_status
Add status for unknown user's filter ID
7 years ago
Maxime Dor 099a7e90ae Change return code following feedback 7 years ago
Maxime Dor dcaaf84395 Be clear that event_id is not applicable everywhere 7 years ago
Maxime Dor efa9b5a8f1 Add missing required key for sync format 7 years ago
Maxime Dor 0fea380625 Add status for unknown user's filter ID 7 years ago
Richard van der Hoff 56c3e5a627 README.rst: Add notes on how to build the spec 7 years ago
Richard van der Hoff 628e723483 Move the MXID spec to the appendices
Also link to them from the /register API doc.
7 years ago
Richard van der Hoff b4e24d443a Clarify what happens when there is no power_levels event 7 years ago
Richard van der Hoff a8afbfd27d Avoid external link in search swagger 7 years ago
Kitsune Ral 004a4d5148 Added/updated operationIds according to today's updates in the spec
Signed-off-by: Alexey Rusakov <ktirf@users.sf.net>
7 years ago
Kitsune Ral 24afe7987c Add operationId to all endpoints of all APIs
To facilitate generation of API stubs from the spec.

Signed-off-by: Alexey Rusakov <ktirf@users.sf.net>
7 years ago
Michael Telatynski bf3b49f13c document joined_members and joined_rooms endpoints (#999) 7 years ago
Richard van der Hoff 820704a16a Format examples as raw objects
According the the openapi spec, examples for responses and schemas should be
raw objects rather than being json strings. (It's unclear what non-json
examples should look like...).

The swagger UI used to support json strings, but no longer does. In short,
let's turn the json strings into their raw formats.
7 years ago
Richard van der Hoff a84a34ee6c GETting a filter requires auth (#1003) 7 years ago
Richard van der Hoff 1e3f5683c8 Make clear that the /sync timeout is zero by default 7 years ago
Brendan Abolivier fee65dbacb
Fix response format and 404 example for room alias lookup 7 years ago
Brendan Abolivier 750d980bc0 Room member (#950)
* Fixed an incorrect membership on example
* Added precision on membership upon profile update
* Changed first example into a join
* Changed the state/{eventType}/{stateKey} example with an actual state key
7 years ago
Richard van der Hoff da6938b818 Key management APIs (#894)
Spec the e2e key-management APIs.
8 years ago
Konstantinos Sideris 09a768763d Add missing enum fields for the set_presence parameter
Signed-off-by: Konstantinos Sideris <siderisk@auth.gr>
8 years ago
Richard van der Hoff 7adf95b4ad Merge pull request #740 from matrix-org/rav/fix_736
Set default account 'kind' to 'user'
8 years ago
Richard van der Hoff c83a556097 Set default account 'kind' to 'user'
Fixes https://github.com/matrix-org/matrix-doc/issues/736
8 years ago
Richard van der Hoff c175039a08 Final public_rooms clarifications
* order by *joined* members
 * clarify pagination direction behaviour
8 years ago
Richard van der Hoff dca1d0c745 Merge branch 'master' into erikj/public_rooms 8 years ago
Richard van der Hoff 2bf0abcb9d Add missing tag to PUT /devices/{deviceId} 8 years ago
Richard van der Hoff b26c84a290 Fix schema validation fail 8 years ago
Richard van der Hoff 07dbf6fcf6 Add doc for PUT /devices/{deviceId}
Oops, forgot this.
8 years ago
Erik Johnston d66792d5ca Mention order of returned results 8 years ago
Richard van der Hoff af515012ea Device management API 8 years ago
Richard van der Hoff 9265b03008 Client device doc
Document client devices, and the mods to the login and register apis to support
them.
8 years ago
Erik Johnston a69d6c63c6 Merge branch 'master' of github.com:matrix-org/matrix-doc into erikj/public_rooms 8 years ago
Erik Johnston cafa9a01fd Move explanation of lack of direction param 8 years ago
Erik Johnston 71c1fc5ec0 Remove spurious 400 result 8 years ago
Erik Johnston de68c167b6 Add tags for GET endpoint 8 years ago
Erik Johnston 9d0960b206 Better wording 8 years ago
David Baker 49ee00c361 Use the right path for the identity API 8 years ago
Richard van der Hoff 42616f839c Merge pull request #396 from matrix-org/dbkr/notifs_api
Spec notifs API
8 years ago
Richard van der Hoff 909aef2b18 Merge pull request #389 from matrix-org/erikj/create_room_is_direct
Spec /createRoom is_direct flag, is_direct in member event and m.direct
8 years ago
David Baker e0a434b248 Aaha, found a syntax that swagger will accept! 8 years ago
David Baker bd753d4bf4 Re-add required flags the correct way 8 years ago
David Baker af2c74c186 Revert `required`s
They're not boolean flags for object fields
8 years ago
David Baker 14944fe237 More PR feedback 8 years ago
David Baker fd8c1a43c7 ms, not s. Also add required flags 8 years ago
David Baker b789251f70 More PR feedback 8 years ago
David Baker 4a020025bc Make swagger happpy
These aren't strings, but 'any' causes swagger to break and
leaving it out makes the doc fail to build.
8 years ago
David Baker b4c89accb2 Params in query, not path 8 years ago
David Baker a463820d83 Typo 8 years ago
David Baker c1fa342b90 Swagger is failing on type 'any' 8 years ago
David Baker 136d5dc9ad Almost valid... 8 years ago
David Baker 595b75f299 Try & make example closer to valid 8 years ago
David Baker 41781e95b2 Attempt valid json 8 years ago
David Baker c16ba9488f Spec notifs API 8 years ago
Richard van der Hoff 37fb1ceb65 Merge pull request #395 from matrix-org/rav/kill_refresh_tokens
Remove references to refresh tokens and tokenrefresh
8 years ago
David Baker 1d7531e9a1 Typo 8 years ago
David Baker d39f662df5 PR feedback 8 years ago
Richard van der Hoff 556ced36a4 Merge remote-tracking branch 'origin/master' into rav/store_and_forward 8 years ago
David Baker 8fe8bd6a81 Add is_direct to member event spec. 8 years ago
Richard van der Hoff f4c7fdfd03 Remove references to refresh tokens and tokenrefresh
refresh tokens are dead.
8 years ago
David Baker 5fedc64230 double space 8 years ago
David Baker ae1c576648 Merge remote-tracking branch 'origin/master' into erikj/create_room_is_direct 8 years ago
Erik Johnston 069aa86a10 Update wording and add example to filter param 8 years ago
Erik Johnston 7919e8e159 Update wording. 8 years ago
Erik Johnston a5bb182c67 Explicitly mention that directio of pagination is specified by the token 8 years ago
Erik Johnston a66a744c45 Fix typo. Change responses in both places 8 years ago
Erik Johnston 06649b652d Mark booleans as required. Remove mention that things may be null 8 years ago
Erik Johnston b121feebce Comment what the is_direct flag actually does 8 years ago
Erik Johnston e8b21f357f Explicitlty mention total_room_count_estimate 8 years ago
Erik Johnston e854757c98 Mark required fields as required 8 years ago
Erik Johnston 0dc94d5c14 Expand on description of pagination tokens 8 years ago
Erik Johnston 37f6769a3c Spec filter param on /messagse 8 years ago
Erik Johnston 085131b617 Add contains_url filter option 8 years ago
Richard van der Hoff ebaaa7e3b3 Review feedback
* store-and-forward -> send-to-device
* describe motivation
* device ids are 10 capital chars
* etc
8 years ago
Erik Johnston 3a5cbd14c3 Add /createRoom is_direct flag 8 years ago
Erik Johnston c05ee18f58 Add title and update description 8 years ago
Erik Johnston 130ea85576 Spec POST /publicRooms 8 years ago
Erik Johnston 877a6cfeb4 Spec new query params for /publicRooms 8 years ago
Erik Johnston d81d0dbd1d Spec canonical alias key 8 years ago
Richard van der Hoff ccd7bb32d5 Specification for direct-to-device messages 8 years ago
Benjamin Saunders cade909e25 Fix inconsistencies regarding redacted_because
Signed-off-by: Benjamin Saunders <ben.e.saunders@gmail.com>
8 years ago
Richard van der Hoff 7478e7f3cf Add top-level account_data to /sync response 8 years ago
Benjamin Saunders 77b668a5dc Fix some obsolete uses of user_id key in events
Signed-off-by: Benjamin Saunders <ben.e.saunders@gmail.com>
8 years ago
Matthew Hodgson 978d9ea6dd fix the descriptions of the /room/.../state APIs to not be the wrong way round 8 years ago
Richard van der Hoff c51c4acf7f Clarifications to authentication mechanisms
* Make the purpose of the `auth` key in /register requests explicit, and say
  that it should be empty at first.

* Restructure the UA-auth section a bit.

* In the UA-auth section, say that clients should submit no `auth` to start
  with, and add 'Stage 0' representing  this to the example.

* s/{stage,login} type/authentication type/ in the UA-auth section. Seems
   clearer to me.

* Try to distinguish the example responses from the example requests by giving
  an HTTP header.
8 years ago
Richard van der Hoff 4b0e546eeb PR feedback
Fix some typos, and clarify several aspects of server behaviour.
8 years ago
Richard van der Hoff 41368dc5a7 document CAS login
Following the spirit of "document how it is, not how we wish it was", document
the CAS login bits.
8 years ago
Mark Haines d2fe2f1ff6 Fix jenkins 8 years ago
Mark Haines 618f94699b Document the optional parameter for specifying a filename to download an attachment as 8 years ago
Richard van der Hoff 8328e485ea Clean up the pushrules API doc
* make it clearer which fields go in which parts of the rule
* the example given appeared to be for a content rule, so use a content rule
  consistently through the examples.
8 years ago
Richard van der Hoff 7ac2f51e4a /upload: fix example for filename
The example shouldn't be encoded, else it will be double-encoded by swagger.
8 years ago
Benjamin Saunders 3e2dea4c52 Document filename query parameter for uploads
Signed-off-by: Benjamin Saunders <ben.e.saunders@gmail.com>
8 years ago
Richard van der Hoff ec20f15407 /tokenrefresh should expire the access token
It's possible for clients to call /tokenrefresh before the access_token has
expired, potentially leading to a proliferation of valid access_tokens.
8 years ago
Richard van der Hoff 2370a4c970 Spell out the state algorithm for createRoom
Fixes https://matrix.org/jira/browse/SPEC-429.

Synapse currently follows the specified ordering, but does *not* give the
specified error when the state is invalid (instead it creates the room anyway
but gives a 403 M_FORBIDDEN). Still, I don't think that should be a real
problem for any real clients, and nothing would break if we changed this in
synapse, so it might as well go in the spec anyway.
8 years ago
Erik Johnston a48437ced8 Spec /account/deactivate API 8 years ago
Richard van der Hoff a9d3cfd13c Merge branch 'master' into rav/link_undeprecated_endpoints 8 years ago
Richard van der Hoff d92515bce3 Merge pull request #354 from matrix-org/rav/reorder_deprecated_initialsync
Move /room/x/initialSync to after the undeprecated APIs
8 years ago
Richard van der Hoff 7080fd0618 Merge pull request #348 from Ralith/room-messages
Add missing "to" parameter to /messages
8 years ago
Benjamin Saunders dc7fc0309e Add missing "to" parameter to /messages
Signed-off-by: Benjamin Saunders <ben.e.saunders@gmail.com>
8 years ago
Richard van der Hoff 49cd65dd58 Add a license to the spec
We're licensing hte spec under ASLv2. Add the LICENSE file, and add the
short-form to as much of the source as is practical right now (adding it to
json source is a massive pita).
8 years ago
Richard van der Hoff 6bcb1798f5 Mark deprecated endpoints with their replacements
Fixes https://matrix.org/jira/browse/SPEC-415
8 years ago
Richard van der Hoff 9d267795e0 Move /room/x/initialSync to after the undeprecated APIs
It's a bit incongruous to have to read through the deprecated /initialSync to
get to the good stuff. Separate out intialSync so that we can move it later in
the spec.
8 years ago
David Baker e91214e78e More links
Also remove now redundant anchor
8 years ago
David Baker cf13c8997c Merge branch 'dbkr/dont_line_wrap_rst' into dbkr/more_requesttokens 8 years ago
David Baker 7c8651480a Some PR feedback corrections
Including adding a hyperlink, although this requires a separate fix that I'll do on a different branch
8 years ago
Richard van der Hoff 19a59bc210 Merge pull request #345 from Ralith/require-prev_batch
Supply prev_batch unconditionally in timelines
8 years ago
David Baker c109da5b78 Attempt to make things clearer 8 years ago
David Baker 86db820bb1 Expand on summaries for requestToken endpoints 8 years ago
David Baker 191cb08a3a Add response section otherwise the checker fails 8 years ago
David Baker d74a320edd Stray tab 8 years ago
David Baker ead5648b8c Add requestToken endpoints
For password reset and 3pid adding
8 years ago
Benjamin Saunders ee5054fb42 Supply prev_batch unconditionally in timelines
Signed-off-by: Benjamin Saunders <ben.e.saunders@gmail.com>
8 years ago
David Baker 14ff3862e3 More PR feedback 8 years ago
David Baker e4db7be8e2 Better structure for error response
& add server not trusted error
9 years ago
David Baker 3dddc0dcdf Explain why not erroring on dup 3pid is desireable 9 years ago
David Baker a600386c05 Consistent working for error response
Also format json example better
9 years ago
David Baker 60293af83a PR feedback 9 years ago
David Baker 6a0c9edb49 Add the id_server param 9 years ago
David Baker b0194a3016 Spec for endpoint-specific 3pid verification token
As per proposal https://docs.google.com/document/d/13mapDbaOnbob9ZYRDiGm1YbeZhFOBj_R1OvgBA9pA5s/edit?pref=2&pli=1#
9 years ago
Richard van der Hoff 4f37e4ece0 Merge pull request #342 from matrix-org/erikj/presence
Fix and correctly document presence's currently_active
9 years ago
Erik Johnston 0de8ba7f0a currently_active is a param on GET response, not put 9 years ago
Mark Haines 30a3302921 Merge pull request #274 from matrix-org/markjh/default_rules
Update the predefined push rules in the spec
9 years ago
Erik Johnston e80e32173f Merge pull request #278 from matrix-org/erikj/presence
Update presence spec.
9 years ago
Erik Johnston 2691d4925b s/currently_online/currently_active/ 9 years ago
Richard van der Hoff 7bbb664784 Improve documentation of directory API 9 years ago
Richard van der Hoff 86a81b0450 Fix schema for /logout
'properties' is a map, not a list
9 years ago
Richard van der Hoff e7e9f5fa46 Document the /logout api
We have one, and it's useful, so we really ought to document it
9 years ago
Richard van der Hoff 3bce28a15c Clarifications to the 'Client authentication' section
* Use the terminology 'login type' everywhere instead of mixing up 'stage type'
  and 'login type'

* Don't have a separate 'APIs using the User-Interactive Authentication
  mechanism' section, because (a) it doesn't make much sense to organise the
  APIs this way, and (b) it was a set of lies anyway.

* Move '/account/password' definition into registration.yaml so that register
  and password can share a section in the spec; remove duplicate doc for
  /password.

* Write some words on using 3pids for /login
9 years ago
Richard van der Hoff 2093a6bac9 Merge pull request #332 from matrix-org/rav/update_login_api
Update the /login API spec
9 years ago
Richard van der Hoff 959f1ff09f Update the /login API spec
Note that /login can be used with 3pid creds
9 years ago
Richard van der Hoff 9efd021f5e Document the user-interactive api params
Document the parameters and responses on /register and /account/password which
are invoved in the user-interactive auth
9 years ago
Richard van der Hoff 2d28e5abce Fix basePath on /redact API doc 9 years ago
Richard van der Hoff 432c78f3b5 Fix the swagger for /search so that it works without preprocessing
Makes the /search swagger work when it is imported directly into the swagger-UI
without preprocessing by dump_swagger
9 years ago
Richard van der Hoff 5383754a40 Access event-schemas via a symlink
Swagger gets a bit confused about $refs via '../..', so use a symlink to make
everything nicely relative.
9 years ago
Richard van der Hoff 1fe00b1517 Reinstate validator.js
It turns out that validator.js is used by the jenkins build script to, uh,
validate the docs.

This partially reverts commit affb106014.
9 years ago
Richard van der Hoff 23c4ffbc1b Add securityDefintions to generated swagger JSON
Also factor out to a common file
9 years ago
Richard van der Hoff cf87120d78 Fixes to the API docs
* fix security data for DELETE /user/{userId}/rooms/{roomId}/tags/{tag}

* fix definition for body of PUT /pushrules/{scope}/{kind}/{ruleId}/actions
9 years ago
Richard van der Hoff affb106014 Remove redundant scripts under api/
We now use newer swagger, via scripts/dump-swagger.py
9 years ago
David Baker 1a856b53f3 Remove redundant info & add backticks 9 years ago
David Baker 4b294b23de Tailor descriptions to GET method 9 years ago
David Baker 4fafe1ab73 Return an object as the root element
Because otherwise it's impossible to change later
9 years ago
David Baker 42834340e7 Add title to the pushers array 9 years ago
David Baker 0f6e414eb6 Fix format (array of objects, not object) 9 years ago
David Baker 27113d71ff Fix indentation 9 years ago
David Baker 73d6e901ae Add endpoint for getting a user's pushers
Also add profile_tag to the set docs as it was missing
9 years ago
Will Hunt c9ed063a36 Small copy paste error
'avatar url' should be 'profile information'
9 years ago
David Baker 1d6c405f62 Fix presumably c+p fail 9 years ago
David Baker cf850b4270 Fix level of `counts` and `devices`
They are actually within the notification object rather than the top level object. Add titles to objects so it works.
9 years ago
David Baker 89453bfd8c Remove spurious blank line 9 years ago
David Baker 64c6d30f90 hopefully fix rst 9 years ago
David Baker 7faf2cf642 Paragraph breaks & missed word 9 years ago
David Baker 7e1cb9003c Make swagger valid 9 years ago
David Baker 71cb646541 Change `id` in the push gateway poke to be `event_id` and spec that it's the Matrix event ID of the message. Correct the spec for badge count pushes which omit fields previously described as mandatory. Add more detail about when to use event_id to suppress dupes. Also add the push gateway doc so it's actually included in the spec. 9 years ago
David Baker 39fe9e3896 Merge pull request #284 from matrix-org/dbkr/notification_counts
Add notification counts to doc
9 years ago
Daniel Wagner-Hall fecff8afdc Specify association lookup 9 years ago
Daniel Wagner-Hall e0c55eeccf Add initial identity server spec
More to come
9 years ago
Daniel Wagner-Hall 11c572267e Add titles where they're missing 9 years ago
David Baker a78dff3981 Add notification counts to doc 9 years ago
Mark Haines d2c05d64c7 Document an API for setting and getting the actions for a push rule 9 years ago
Mark Haines 254fbe7983 Document GET for /pushrules/{scope}/{kind}/{ruleId}/enabled 9 years ago
David Baker e6143a6596 Merge pull request #281 from matrix-org/dbkr/fix_meta_escaping
Fix meta-escaping fail
9 years ago
David Baker 2c5392f1d1 Fix meta-escaping fail 9 years ago
Daniel Wagner-Hall 016ccf4544 Remove signed object which shouldn't exist 9 years ago
Erik Johnston cbe466e572 Update API docs 9 years ago
Daniel Wagner-Hall ccac9e7882 /join accepts a signature for a third party invite 9 years ago
Richard van der Hoff bc83677d98 Define the order for events returned by /context API 9 years ago
Richard van der Hoff 68a4306773 Split room previews into a separate module
Guest access and room peeking are orthogonal
9 years ago
Mark Haines 3db6980e0b Remove references to device specific push rules
Since they weren't implemented on the servers and weren't
used by the clients.
9 years ago
Oddvar Lovaas b28989b2ad fix for https://github.com/matrix-org/matrix-doc/issues/270 9 years ago
Mark Haines 8a050aebc0 Add a note to the docs for before and after to make it clear that they cannot be used with the predefined rules 9 years ago
David Baker 53a4a563e2 Actually we think they should not be present (which means synapse is buggy). 9 years ago
David Baker 542b17e944 Clarify what profile endpoints return if avatar url / display name isn't set 9 years ago
Richard van der Hoff 58b346e204 s/user_id/sender/ in context example response 9 years ago
Richard van der Hoff b2e0a855cc Add 'event' to event context API
also link through to the event schemas
9 years ago
Mark Haines e7f80b7c71 Fix the key name to be three_pid_creds rather than threePidCreds 9 years ago
Daniel Wagner-Hall 2e46b587b8 Require explicit un-banning 9 years ago
David Baker 169cc98101 M_INVALID_USERNAME to be consistent with the name of the parameter 9 years ago
David Baker 2301a792d7 Add an error code for invalid user names. 9 years ago
Matthew Hodgson cfbb695fd3 typoe 9 years ago
Daniel Wagner-Hall 1e2b63763e /join and /room/:roomId/join aren't exact aliases
Separate them, clarify their differences.

Also, fix some links which weren't being properly populated.
9 years ago
Richard van der Hoff 6265d6ce06 Merge pull request #254 from matrix-org/rav/filter_spec
Add some missing titles to the filter upload spec
9 years ago
Richard van der Hoff 972153be4f Fix endpoint path for /context
s/api//
9 years ago
Richard van der Hoff ff26e0dc48 Add some missing titles to the filter upload spec 9 years ago
Daniel Wagner-Hall 0e967edfd9 Fix thinko 9 years ago
Daniel Wagner-Hall 7d9547274c Clarify guest /events and /sync 9 years ago
Daniel Wagner-Hall 48aab7bad9 Return room avatar URLs in /publicRooms 9 years ago
Daniel Wagner-Hall 5e30d75ccb Add /_matrix/versions to spec 9 years ago
Erik Johnston 48f56bfbfb Support 3pid invites in /createRoom 9 years ago
Daniel Wagner-Hall 1eee36e889 Merge pull request #232 from matrix-org/daniel/deprecatestuff
Deprecated deprecated APIs
9 years ago
Matthew Hodgson c7d11335cf Merge branch 'master' of git+ssh://github.com/matrix-org/matrix-doc 9 years ago
Matthew Hodgson 691d9ba664 typo :( 9 years ago
Mark Haines 4c43939977 more backticks 9 years ago
Mark Haines 9b4a37f57b backticks 9 years ago
Mark Haines 288c7ed353 Add top level filters for filtering by room id. 9 years ago
Mark Haines 2ea66e9300 Merge branch 'markjh/account_data_filters' into markjh/room_filter 9 years ago
Mark Haines a32ed96a0f Document filtering for account data 9 years ago
Mark Haines e413f05c87 Merge pull request #243 from matrix-org/markjh/wildcards
Filters don't support wildcards for senders or room ids
9 years ago
Mark Haines c9349b302a Filters don't support wildcards for senders or room ids 9 years ago
Richard van der Hoff b7c255a887 Tweaks/clarifications to search spec
Fixes https://matrix.org/jira/browse/SPEC-305
9 years ago
Daniel Wagner-Hall b6cd3adc2f Merge pull request #233 from matrix-org/daniel/txnid
Merge pull request #233 from matrix-org/daniel/txnid
9 years ago
Christine Dodrill 7090e491de fix a typo in the example json for the old sync description 9 years ago
Erik Johnston 7980e65502 Merge pull request #234 from matrix-org/erikj/search_yet_agian
Note that count is approximate
9 years ago
Erik Johnston 88b350ca8b Better wording 9 years ago
Erik Johnston a2082e4b38 Note that count is approximate 9 years ago
Daniel Wagner-Hall dbba737135 Explain scope of uniqueness of txnid 9 years ago
Daniel Wagner-Hall 3e086909f1 Deprecated deprecated APIs 9 years ago
Daniel Wagner-Hall a484f04b33 Merge pull request #221 from matrix-org/daniel/pushaway
Merge pull request #221 from matrix-org/daniel/pushaway
9 years ago
Mark Haines a33e49fd1e Merge pull request #224 from matrix-org/markjh/filter_inline
Allow the filter JSON to be passed inline in the /sync request
9 years ago
Mark Haines c3a1318886 Make it explicit that the JSON filter object is passed as a string 9 years ago
Erik Johnston c96848d1bc Merge pull request #169 from matrix-org/erikj/search_yet_agian
Search: Document event context, groups and orders.
9 years ago
Erik Johnston 95255bcdf5 Use rst not html 9 years ago
Erik Johnston e1fda6b6b6 Remove double the 9 years ago
Erik Johnston 9c98c80bde Fix up filter description 9 years ago
Mark Haines ed70bcb180 Add a rationale for allowing both inline filters and passing filters by id. 9 years ago
Mark Haines 878ce2f206 Allow the filter JSON to be passed inline in the /sync request 9 years ago
Erik Johnston 6025569a73 Remove unused 403 stub 9 years ago
Erik Johnston 0fb88e26f0 Add tags 9 years ago
Erik Johnston 4290882034 Remove superfluous quote 9 years ago
Erik Johnston 8e7f6d44f6 Remove v1 references 9 years ago
Erik Johnston 4967b092aa Add description of state response key 9 years ago
Daniel Wagner-Hall a2283f5499 Remove /notify from client-server API 9 years ago
Erik Johnston f4b9433c7b Better wording 9 years ago
Erik Johnston 584104c432 Make example valid event id 9 years ago
Erik Johnston fda07e0d41 Merge remote-tracking branch 'origin/master' into erikj/event_context_api 9 years ago
Erik Johnston 856dd9100e Merge remote-tracking branch 'origin/master' into erikj/search_yet_agian 9 years ago
Erik Johnston 118a6aa040 Reword groupings descriptions 9 years ago
Erik Johnston 1ef9cc37e3 Typo 9 years ago
Erik Johnston fca8e5abe7 Add top level next_batch key to example 9 years ago
Daniel Wagner-Hall f81b967e2d Make all the schema files yaml 9 years ago
Daniel Wagner-Hall 1f5b6271f2 Generate swagger-ui output for client-server API
Depends on:
https://github.com/matrix-org/matrix-doc/pull/212
https://github.com/matrix-org/matrix-doc/pull/208
https://github.com/matrix-org/matrix-doc/pull/207
for the actual rendered output to not throw javascript errors at runtime.
9 years ago
Daniel Wagner-Hall c9fee294df Merge pull request #211 from matrix-org/daniel/extractas
Move application service swagger out of c-s dir
9 years ago
Daniel Wagner-Hall 97579f15cb Merge pull request #212 from matrix-org/daniel/pushdictification
Take object, not bool, as param
9 years ago
Daniel Wagner-Hall 705556634a Add filters 9 years ago
Daniel Wagner-Hall 9c733a45e8 Take object, not bool, as param
Throughout our API we take objects. And swagger is unhappy with not
doing so.
9 years ago
Daniel Wagner-Hall 614ee9ea1b Move application service swagger out of c-s dir 9 years ago
Mark Haines 140206ca69 s/archived/leave/ 9 years ago
Mark Haines 79d109f7cc Add an flag to control whether rooms the user has left are included in the sync 9 years ago