Commit Graph

213 Commits (a1324aa9dca7e9ca01acde43cc5db3c7f95ad718)

Author SHA1 Message Date
Travis Ralston 3c38956510 Remove prev_content from the redaction essential keys list
As per [MSC1954](https://github.com/matrix-org/matrix-doc/pull/1954)

No known changes since the proposal was accepted.
6 years ago
David Baker c38581fb86
Too many spaces
Co-Authored-By: Travis Ralston <travpc@gmail.com>
6 years ago
David Baker 383e02835e Words on using m.login.dummy for disambiguation
Add some text on how m.login.dummy can be used to distinguish
a flow that would otherwise be a subset of other flows.
6 years ago
Andrew Morgan 48569c2156
Merge pull request #1853 from matrix-org/anoa/3pid_typos
Replace "3pid" with "3PID"
6 years ago
Andrew Morgan df7223f992 Add changelogs 6 years ago
Travis Ralston 5721712eae Add M_RESOURCE_LIMIT_EXCEEDED
Original proposal: https://github.com/matrix-org/matrix-doc/issues/1504

No changes from the original proposal or implementations have been made intentionally here.
6 years ago
Travis Ralston 85578f9842 Fix spelling mistake: endponts -> endpoints
Fixes https://github.com/matrix-org/matrix-doc/issues/1677
6 years ago
Andrew Morgan 4ec3a43a85 Replace "3pid" with "3PID" 6 years ago
Aaron Raimist fe7f582233
Fix several spelling mistakes
Signed-off-by: Aaron Raimist <aaron@raim.ist>
6 years ago
Travis Ralston d94a70f49d Warn clients about changes in event format 6 years ago
Travis Ralston ccce6c196d Specify how capabilities work in the c2s API
Original proposals:
* https://github.com/matrix-org/matrix-doc/pull/1753
* https://github.com/matrix-org/matrix-doc/pull/1804

Implementation proof:
* https://github.com/matrix-org/synapse/pull/4472
* https://github.com/matrix-org/matrix-js-sdk/pull/830

There is one change to MSC1753 which is included in this commit. MSC1804 remains unchanged. In the original proposal, the change password capability being present was an indication that password changes were possible. It was found that this doesn't really communicate the state very well to clients in that lack of a capability (or a 404, etc) would mean that users would erroneously not be able to change their passwords. A simple boolean flag was added to assist clients in detecting this capability.
6 years ago
Travis Ralston aeb524ef89 Remove CAS login and reference it against r0.4.0
The SSO module should cover what CAS provides, and r0.4.0 is good as a reference for how CAS could be implemented without us repeating it here.
6 years ago
Travis Ralston d6c33ea0a5 Make CAS a subset of SSO 6 years ago
Travis Ralston 3e7a5f5ea4 Initial draft for SSO support 6 years ago
Konstantinos Sideris 192a6c2ab9 Use example.org on examples instead of domain.com which is a real domain
Signed-off-by: Konstantinos Sideris <sideris.konstantin@gmail.com>
6 years ago
Travis Ralston 735de03e07 Add r0 version links
These were missed in the release process.
6 years ago
Travis Ralston bb2835651f
Merge pull request #1637 from turt2live/travis/c2s/clarify-errors
List known client-server error codes; Clarify priority of error codes vs http status code
6 years ago
Travis Ralston 7ac76fa27c Actually we're going with "identity server" afterall 6 years ago
Travis Ralston ec248b436f Identity Service is lowercase 6 years ago
Travis Ralston cc0badaaa1 Fix all naming cases of "identity service"
Fixes https://github.com/matrix-org/matrix-doc/issues/1396

Includes some "homeserver" fixes too. This commit does not include historical documentation or notes.
6 years ago
Travis Ralston 835f5de387 Generalize the token name even more 6 years ago
Travis Ralston f299fe023a English 6 years ago
Travis Ralston f4c5c209f3 Generalize language for pagination
Previously the section was very strict in what pagination was, however this isn't the reality for the matrix specification. Several endpoints have their own pagination naming conventions and do not follow those mandated by this section.

This commit generalizes the language to cover those endpoints while also describing how pagination works. In particular, it describes the rough API shape to expect and how to deal with the responses.

This commit also removes the `M_BAD_PAGINATION` error as it is not used in the real world. Homeservers are instead encouraged to use the standard `M_INVALID_PARAM` or similar error code.

Fixes https://github.com/matrix-org/matrix-doc/issues/610
Fixes https://github.com/matrix-org/matrix-doc/issues/1523
6 years ago
Travis Ralston 3146fc339a Merge remote-tracking branch 'matrix-org/master' into travis/c2s/clarify-errors 6 years ago
Travis Ralston f013b7ef03
Merge pull request #1631 from turt2live/travis/general/unstable-warning
Render a warning if the spec is unstable
6 years ago
Travis Ralston d57b40d0cc Clarify how the client should treat errors
This is based on observation and rough interpretation and may need additional review from people.

Fixes https://github.com/matrix-org/matrix-doc/issues/1188
6 years ago
Travis Ralston e6adf9f6b9 Document known client-server error codes
Covers part of https://github.com/matrix-org/matrix-doc/issues/603 (updating all the endpoints is being done as a separate PR/commit). 

Reference: 74854a9719/synapse/api/errors.py (L30-L61)
6 years ago
Travis Ralston 98a445890c Render a warning if the spec is unstable
Fixes https://github.com/matrix-org/matrix-doc/issues/1499

This is done by using magic variables in the RST. The magic variables are generated based on the substitutions available, making them available for use at build-time. 

Magic variables were chosen because it allows people to continue working on the spec and release process without having to worry about removing a chunk of text from the top of the file. Originally, this was attempted by using jinja2 if-statements, however the substitutions are replaced *after* the template is executed, so the condition would never match. 

The format of the variable is to make the templating happy. Using colons or percent signs results in the templator thinking something else is going on, and then complaining about format.
6 years ago
Travis Ralston 348b549f9f Add the other fields the server is expected to keep on events
Fixes https://github.com/matrix-org/matrix-doc/issues/839

Reference: d69decd5c7/synapse/events/utils.py (L44-L91)
6 years ago
Hubert Chathi 5019fb7c49
Merge pull request #1359 from uhoreg/well-known
.well-known discovery
6 years ago
Travis Ralston 3869f68a5c Merge remote-tracking branch 'matrix-org/master' into travis/general/room-versions 6 years ago
Hubert Chathi 6612dbecf1 tweak wording for validation 6 years ago
Travis Ralston d6c54b0278 unaccessible isn't a word 6 years ago
Travis Ralston ca87876f1b Clarify that the Authorization header is preferred 6 years ago
Travis Ralston 25d01aa431 Dedicate a section on how to use access tokens
Fixes https://github.com/matrix-org/matrix-doc/issues/1042.
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
Hubert Chathi a264120b38 put server discovery as its own section 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
Hubert Chathi 292d334509
document new login identifier object (#1390) 6 years ago
Ben Parsons 07aeaadef9 update links which used to point to docs/spec/intro 6 years ago
Travis Ralston 423d5593f5 Generify how OPTIONS and CORS are handled 6 years ago
Hubert Chathi ce1e2c0904 incorporate feedback from reviewers 6 years ago
Travis Ralston 0779d81e52 Clarify which requests should have CORS headers
Spoilers: all of them.
6 years ago
Travis Ralston 4ca54404fa Document the CORS/preflight headers
Fixes https://github.com/matrix-org/matrix-doc/issues/1006
6 years ago
Hubert Chathi 0dd330962d initial draft of .well-known discovery 6 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
Michael Telatynski 4d90d2b495
fix depr link 7 years ago
Nathan Musoke 7e94cd5a0b
Typo in client-server spec: ether -> either 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 97445195f6
add user_directory 7 years ago
Richard van der Hoff e9c1b87a1d Remove `git log` reference
We keep the changelog up to date anyway, so there's not much point in trying to
get people to use `git log`
7 years ago
Richard van der Hoff 0ce58fdb28 Prepare for next spec dev cycle 7 years ago
Travis Ralston b1801ea6db Spec /account/whoami
Signed-off-by: Travis Ralston <travpc@gmail.com>
7 years ago
Michael Telatynski c2b1b7a10e
mention that we can send tokens via headers 7 years ago
Richard van der Hoff 6b23b7fc0b Merge branch 'client_server/r0.2.0_updates' 7 years ago
Richard van der Hoff b94c4a9f36 Sneaky update to 0.2.0 spec to link unstable
This doesn't count as a spec release, right??
7 years ago
Richard van der Hoff a8afbfd27d Avoid external link in search swagger 7 years ago
Michael Telatynski bf3b49f13c document joined_members and joined_rooms endpoints (#999) 7 years ago
Richard van der Hoff 1e3f5683c8 Make clear that the /sync timeout is zero by default 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
Richard van der Hoff 8a9629167a httpsify the speculator link 8 years ago
Richard van der Hoff 461bfdb0d8 Merge branch 'master' into rav/device_management 8 years ago
Richard van der Hoff 22777970da Fix speculator link
the link to the 'latest version' was broken
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
Richard van der Hoff cbc5774ade JSON key names also use underscores. 8 years ago
Richard van der Hoff 8523af1385 Document convention of using underscores in APIs
Everybody has agreed to it. Now we just have to remember to do it.
8 years ago
Richard van der Hoff 6c88d698ae uia fallback example: check event origin 8 years ago
Richard van der Hoff e850fd718d window.postmessage for Interactive Auth fallback
Require that User-Interactive auth fallback pages call
`window.postMessage` to notify apps of completion.
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 301595c071 Linkify account_data API
Also change other links because it turns out the .. isn't part
of the syntax
8 years ago
David Baker 2a987c3369 Linkify endpoints properly 8 years ago
Richard van der Hoff a8d35b2409 UI Auth: servers should 401 when a request fails
(ref https://matrix.org/jira/browse/SYN-744)
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
Richard van der Hoff f4c7fdfd03 Remove references to refresh tokens and tokenrefresh
refresh tokens are dead.
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
Benjamin Saunders cade909e25 Fix inconsistencies regarding redacted_because
Signed-off-by: Benjamin Saunders <ben.e.saunders@gmail.com>
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
Richard van der Hoff 2fa7aac3be Merge pull request #377 from Ralith/typos
Fix typo
8 years ago
Benjamin Saunders 80bfbbdd33 Fix typo
Signed-off-by: Benjamin Saunders <ben.e.saunders@gmail.com>
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 0248afe6ac login with invalid token gives a 403 8 years ago
Richard van der Hoff 1f1dfdd91c More clarifications 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
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
Richard van der Hoff a64f9bbb63 C-S spec: Fix 'unstable' in link to /context API 8 years ago
Richard van der Hoff b5f9e896ba C-S spec: Fix 'unstable' in link to /context API 8 years ago
Richard van der Hoff a2ab6854ff CS spec: Add r0.2.0 to historical version list 8 years ago
Richard van der Hoff 8ac45d7948 Merge pull request #353 from matrix-org/rav/room_membership
Clarify the room-membership APIs
8 years ago
Richard van der Hoff 0c06ea0e67 Merge pull request #356 from matrix-org/rav/fix_redaction
Fix name of prev_content to preserve on redactions
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 d8a47dbb5d Merge pull request #352 from matrix-org/rav/kill_old_sync
Remove references to intialSync etc, and rewrite syncing
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 1c6eed5c35 Fix name of prev_content to preserve on redactions
The field is called prev_content, not prev_state.
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