Travis Ralston
f6d9e53f5c
Clarify that homeserver must reject clients from setting m.fully_read
6 years ago
Travis Ralston
679ddabb53
Merge remote-tracking branch 'matrix-org/master' into travis/c2s/read-markers
6 years ago
Travis Ralston
a4c2b2b905
General clarity and spelling for the requestToken APIs
6 years ago
Travis Ralston
7f1b94c211
Merge remote-tracking branch 'matrix-org/master' into travis/c2s/id-server
6 years ago
Travis Ralston
e3ad253dca
A sender is also required for the invite_state
6 years ago
Travis Ralston
2f824df8dd
Define the real event types on the invite_state
6 years ago
Travis Ralston
2e3e189ea2
Merge remote matrix-org/master
6 years ago
Travis Ralston
38ae166e9d
Merge pull request #1505 from turt2live/travis/general/3pid_invite
...
Clarify how third party invites work
6 years ago
Travis Ralston
afa16f1e4e
Merge pull request #1606 from turt2live/travis/c2s/room-tags
...
Update the room tagging documentation
6 years ago
Travis Ralston
73736d41db
Merge pull request #1569 from turt2live/travis/c2s/user-directory
...
Clarify the homeserver's behaviour for user searching
6 years ago
Travis Ralston
4bd23a9086
send_attempt is no longer optional
6 years ago
Travis Ralston
7f719b23e7
Merge pull request #1589 from turt2live/travis/c2s/inhibit-login
...
Document the inhibit_login registration option
6 years ago
Travis Ralston
dfaed5b525
Clean up and flesh out all three editions of the /requestToken API
...
Fixes https://github.com/matrix-org/matrix-doc/issues/1634
Addresses some of https://github.com/matrix-org/matrix-doc/issues/1396
6 years ago
Travis Ralston
ce14779af1
Merge pull request #1567 from turt2live/travis/c2s/3pid-binding
...
Document `validated_at`, `added_at`, and POST /3pid/delete
6 years ago
Travis Ralston
5da3072eef
Wording change ('may not' has a special meaning)
6 years ago
Travis Ralston
2a08a308f3
device_keys are required
6 years ago
Travis Ralston
219b27b182
Merge remote matrix-org/master
6 years ago
Travis Ralston
f923d08078
Add read markers
...
This is the spec for https://github.com/matrix-org/matrix-doc/issues/910
Fixes https://github.com/matrix-org/matrix-doc/issues/910
Some reverse engineering was required to work out the complete details as to how this works. In particular, the 405 for setting account data and the behaviour of m.read.
References:
* 405 for account data: d69decd5c7/synapse/rest/client/v2_alpha/account_data.py (L85-L90)
* m.read behaviour: d69decd5c7/synapse/rest/client/v2_alpha/read_marker.py (L45-L52)
6 years ago
Richard van der Hoff
0f84c69805
Merge branch 'master' into rav/clarify_event_signing
6 years ago
Travis Ralston
8bcd7d26e3
/3pid/delete returns an empty object
6 years ago
Travis Ralston
390f1c16f7
Remove mentions of identity services from /3pid/delete
...
This will be covered by https://github.com/matrix-org/matrix-doc/issues/1194
For now, we can accept that homeservers may try to unbind, however clients should not rely on it.
6 years ago
Travis Ralston
86c85aea71
Merge remote-tracking branch 'matrix-org/master' into travis/c2s/3pid-binding
6 years ago
Travis Ralston
d57b977a55
Merge branch 'm-master' into travis/general/3pid_invite
6 years ago
Travis Ralston
e82c22b060
Merge pull request #1615 from turt2live/travis/is/touchups
...
Touch up more of the identity service specification
6 years ago
Travis Ralston
f09db16027
Merge remote-tracking branch 'matrix-org/master' into travis/s2s/key-mgmt
6 years ago
Travis Ralston
49c5677969
Merge remote-tracking branch 'matrix-org/master' into travis/c2s/user-directory
6 years ago
Travis Ralston
f04afaa9b9
Merge pull request #780 from mujx/missing-enum-fields
...
Add missing enum fields for the set_presence parameter
6 years ago
Travis Ralston
cc1e496287
Merge pull request #1629 from turt2live/travis/as/route-versions
...
Version all appservice endpoints and provide a fallback
6 years ago
Travis Ralston
0f2e01f5b5
Merge pull request #1555 from turt2live/travis/as/cleanup
...
Application service spec cleanup; Security definitions; r0 prep
6 years ago
Travis Ralston
be5c566028
Version all appservice endpoints and provide a fallback
...
Fixes https://github.com/matrix-org/matrix-doc/issues/1616
6 years ago
Travis Ralston
6b52e1df77
Merge pull request #1587 from turt2live/travis/s2s/clarify-state-ids-inclusion
...
Clarify that the requested event is excluded from /state and /state_ids
6 years ago
Richard van der Hoff
55c4307f12
Rewrite the section on signing events
...
... for clarity and de-duplication. And to say a bit about validating the
signatures.
6 years ago
Travis Ralston
7ecf2406eb
Merge pull request #1590 from turt2live/travis/c2s/403-put-state
...
Document 403 error for sending state events
6 years ago
Travis Ralston
a5c3924492
Merge remote matrix-org/master
6 years ago
Travis Ralston
f030d19f3c
Clean up identity service swagger
...
* Add `consumes` (swagger)
* Remove `http` as a supported scheme (the spec specifically says clients MUST use https)
* Clarify various descriptions
* Full stops
* Additional wording
* s/older versions/previous drafts - we haven't had a release yet
* Indentation on examples
6 years ago
Travis Ralston
684d80c422
Revert changes to 3pid lookup types in the IS spec
...
The validator doesn't know what a "3PID Medium" is, for example, so it throws exceptions. This does reduce clarity in the spec though.
6 years ago
Travis Ralston
abb91508be
Merge pull request #1556 from turt2live/travis/is/cleanup
...
Identity Service API cleanup
6 years ago
Travis Ralston
c03f2f8d79
Minor touchups to the room tagging API
...
Fixes some of https://github.com/matrix-org/matrix-doc/issues/1565
6 years ago
Kitsune Ral
9bc1470305
Elaborate the structure of m.tag events
...
...and corresponding structures in tag-related CS API calls
Signed-off-by: Alexey Rusakov <Alexey.Rusakov@pm.me>
6 years ago
Travis Ralston
f2d02c9559
Take out device management section for now
...
This will be handled by the implementation of https://github.com/matrix-org/matrix-doc/issues/1212
6 years ago
Travis Ralston
5ff244f06b
More clarification about how /state_ids works
6 years ago
Travis Ralston
de36d97839
Clarify which event is actually be excluded from /state_ids
6 years ago
Hubert Chathi
5019fb7c49
Merge pull request #1359 from uhoreg/well-known
...
.well-known discovery
6 years ago
Erik Johnston
7327656965
Merge pull request #1581 from matrix-org/erikj/limit_txn_size
...
Specify a limit on the number of EDUs and PDUs a transaction can contain
6 years ago
Travis Ralston
d91395cf9f
Document 403 error for sending state events
...
Fixes https://github.com/matrix-org/matrix-doc/issues/1399
6 years ago
Travis Ralston
1051aff108
Document the inhibit_login registration option
...
Fixes https://github.com/matrix-org/matrix-doc/issues/1351
6 years ago
Travis Ralston
dad037170a
Clarify that the requested event is excluded from /state and /state_ids
...
Fixes https://github.com/matrix-org/matrix-doc/issues/1564
6 years ago
Travis Ralston
436544b8f8
Clarify behaviour of `?set_presence=unavailable` for /sync
6 years ago
Travis Ralston
adef7babfa
Merge remote-tracking branch 'matrix-org/master' into mujx/missing-enum-fields
6 years ago
Travis Ralston
ad068bcd22
Fix the appservice directory visibility type parameter type
6 years ago
Travis Ralston
e9579a7840
The `rank` in search results is actually a floating point number
...
This was accidentally changed in https://github.com/matrix-org/matrix-doc/pull/1571 and appears to be the only instance.
6 years ago
Erik Johnston
fc1fdc95af
Specify a limit on the number of EDUs and PDUs a transaction can contain
6 years ago
Travis Ralston
6cdb463829
Merge pull request #1571 from turt2live/travis/general/number-to-int
...
Replace applicable types of 'number' to 'integer'
6 years ago
Travis Ralston
f9c7014a65
Merge pull request #1577 from turt2live/travis/c2s/search-filter
...
Specify the type of filter the search API expects
6 years ago
Travis Ralston
03065b0584
Merge pull request #1572 from turt2live/travis/c2s/sync-left-account-data
...
Add `account_data` to left rooms in /sync
6 years ago
Travis Ralston
f2332d242a
Add some SHOULDs and MUSTs to the user directory requirements
6 years ago
Travis Ralston
bb515d15a4
Clarify which collation to use for user directory searching
6 years ago
Travis Ralston
9527ce31f5
Merge pull request #1570 from turt2live/travis/c2s/sync-filtering
...
Update filtering API documentation
6 years ago
Travis Ralston
f01cfa2c7b
Add security definitions to hs->as endpoints
6 years ago
Travis Ralston
17e0ef4b91
Remove empty file and now-empty section from the appservice spec
...
This commit has approval under https://github.com/matrix-org/matrix-doc/pull/1555 although is being included in this branch/PR so the build passes, permitting a merge.
6 years ago
Travis Ralston
51193cac39
Merge remote-tracking branch 'matrix-org/master' into travis/as/normal-events
6 years ago
Travis Ralston
87133d8505
Merge pull request #1574 from turt2live/travis/c2s/fix-directory-put
...
Clean up PUT /directory/room
6 years ago
Travis Ralston
a0b17e6ed6
Merge pull request #1551 from turt2live/travis/c2s/push-rules
...
General improvements to the push rules module
6 years ago
Travis Ralston
97508d5dc5
Merge pull request #1554 from turt2live/travis/general/appservice-directories
...
Application service room directories (and other third party network things)
6 years ago
Travis Ralston
32ac81c588
Spelling
6 years ago
Travis Ralston
5fa6b49365
Specify the type of filter the search API expects
...
Note: This is badly named until https://github.com/matrix-org/matrix-doc/pull/1570 lands
Fixes https://github.com/matrix-org/matrix-doc/issues/598
6 years ago
Travis Ralston
8069981252
Add federation /user/* endpoints
...
Fixes https://github.com/matrix-org/matrix-doc/issues/1438
6 years ago
Travis Ralston
e60b44e27f
Clean up PUT /directory/room
...
Fixes https://github.com/matrix-org/matrix-doc/issues/933
The issue references two problems: a `roomInfo` and lack of a `room_id`. It appears the `room_id` has been fixed since reporting, however the `roomInfo` remained (and is now fixed).
6 years ago
Travis Ralston
55c0b968b5
Fix event schemas for /sync
...
This commit clarifies the required keys for each type of event that appears in sync, fixes the core event schema not declaring 'content' as required, and includes a mention that events may not have a room_id when appearing in /sync.
Fixes https://github.com/matrix-org/matrix-doc/issues/595
Fixes https://github.com/matrix-org/matrix-doc/issues/909
6 years ago
Travis Ralston
008ebb8c1a
Add `account_data` to left rooms in /sync
...
Fixes https://github.com/matrix-org/matrix-doc/issues/1392
6 years ago
Travis Ralston
667fa082af
Replace applicable types of 'number' to 'integer'
...
`number` implies/represents a float where `integer` does not.
The only remaining `type: number` in the project appear on power levels: those have been left untouched pending clarification.
Fixes https://github.com/matrix-org/matrix-doc/issues/746
6 years ago
Travis Ralston
b68ed5d594
Define the default for the contains_url filter param
...
Fixes https://github.com/matrix-org/matrix-doc/issues/1553
6 years ago
Travis Ralston
1cbcaba2c7
Clean up examples in filter.yaml
...
Indentation, excess examples.
6 years ago
Travis Ralston
26a7a341f0
Mark the filter_id in the response of POST /filter as required
6 years ago
Travis Ralston
97e3dd443b
Update room_event_filter.yaml to use the OpenAPI allOf definition
...
This is just maintenance.
6 years ago
Travis Ralston
7d08ef73d0
Fix naming of the Filter schemas
...
EventFilter !== Filter
Fixes https://github.com/matrix-org/matrix-doc/issues/1509
6 years ago
Travis Ralston
1bc0f63bfb
Clarify the homeserver's behaviour for user searching
...
The homeserver can implement its own algorithm, but is suggested to ensure the requesting user can reasonably see the other users.
The text is intentionally left vague for whether or not the API is local users only to give the homeserver some flexibility in this area.
General cleanup is also included in this commit.
Fixes https://github.com/matrix-org/matrix-doc/issues/1108
6 years ago
Travis Ralston
b4be11af42
Document POST /account/3pid/delete
...
Fixes https://github.com/matrix-org/matrix-doc/issues/985
Includes documentation for https://github.com/matrix-org/synapse/pull/3667
Raises https://github.com/matrix-org/matrix-doc/issues/1566
6 years ago
Travis Ralston
a803d9d077
Document `validated_at` and `added_at` on GET /3pid
...
Fixes https://github.com/matrix-org/matrix-doc/issues/661
6 years ago
Kitsune Ral
c879eb950f
client-server/openid.yaml: Fix a type'o
...
Signed-off-by: Alexey Rusakov <Alexey.Rusakov@pm.me>
6 years ago
Travis Ralston
dafea96621
Fix indentation and schema references in the identity service spec
6 years ago
Travis Ralston
4abd618147
Flag response fields in the Identity Service spec as required
6 years ago
Travis Ralston
017d6db737
Document third party network/protocol directories (for appservices)
...
Fixes https://github.com/matrix-org/matrix-doc/issues/869
6 years ago
Travis Ralston
2d43ff1234
Update third party network schemas
...
Some information was missed when this was reviewed. This commit adds some additional documentation for how these objects interact with each other.
6 years ago
Travis Ralston
9eda1a6971
Move the third party network API to it's own section
6 years ago
Travis Ralston
6a91ea9c85
Specify that application services receive events in the CSAPI format
...
Fixes https://github.com/matrix-org/matrix-doc/issues/1269
This is also supposed to fix the 'age' problem, however that is a larger problem with the event schemas that is reserved for a future PR/commit.
Reference: https://github.com/matrix-org/matrix-doc/issues/1294
Reference: https://github.com/matrix-org/matrix-doc/issues/1524
6 years ago
Travis Ralston
bbd33c1461
Move appservice transaction API to the right section
...
Part of https://github.com/matrix-org/matrix-doc/issues/1532
6 years ago
Travis Ralston
7ec3cc4343
General improvements to the push rules module
...
This commit does a few things:
* Add 3 undocumented push rules to the spec for encrypted events and at-room notifications.
* Require unrecognized conditions to not match, ensuring that future conditions do not cause clients to accidentally notify users.
* Clarify that push rules should be enabled when created.
* Document a new condition required for at-room notifications.
Fixes https://github.com/matrix-org/matrix-doc/issues/1163
Fixes https://github.com/matrix-org/matrix-doc/issues/1034
Fixes https://github.com/matrix-org/matrix-doc/issues/676
Fixes https://github.com/matrix-org/matrix-doc/issues/1033
Relates to https://github.com/matrix-org/matrix-doc/issues/1101
6 years ago
Travis Ralston
3869f68a5c
Merge remote-tracking branch 'matrix-org/master' into travis/general/room-versions
6 years ago
Travis Ralston
6172d5986a
Merge pull request #1537 from turt2live/travis/as/user-alias-query
...
Clean up user and alias querying for application services
6 years ago
Travis Ralston
e4f5c3d55e
Merge pull request #1518 from turt2live/travis/c2s/create-room-improvements
...
Add general clarity to the /createRoom endpoint
6 years ago
Travis Ralston
1d7ea314d4
Merge pull request #1482 from turt2live/travis/s2s/presence
...
Document how presence EDUs work between servers
6 years ago
Travis Ralston
e500e2502a
Document the maximum value for depth
...
Implements the proposal for https://github.com/matrix-org/matrix-doc/issues/1230
6 years ago
Travis Ralston
7e5160c7c2
Merge remote-tracking branch 'matrix-org/master' into travis/as/user-alias-query
6 years ago
Travis Ralston
a320c58e42
A path parameter is obviously URL encoded
6 years ago
Travis Ralston
7ad22b2454
Merge pull request #1533 from turt2live/travis/as/general
...
General/small improvements to the application service API specification
6 years ago
Travis Ralston
8dc6f092ef
Define the type of the power_level_content_override field
6 years ago
Travis Ralston
7e6ca5fef8
Take out the room_alias response field
...
The argument is that this isn't really needed at this time.
6 years ago
Travis Ralston
1fd7c99461
Clarify that the creation event can have other keys in it
6 years ago
Travis Ralston
6c7a93d2f5
Move description about which preset to use when none is specified
6 years ago
Travis Ralston
7d14309b63
Move the power level event schema to where it was
6 years ago
Travis Ralston
c8ba2e098c
Wording improvements for appservices
6 years ago
Travis Ralston
8b65da1cf6
Don't try and be fancy about titles
6 years ago
Travis Ralston
e712466dca
Improve description for currently_active
6 years ago
Valentin Deniaud
10c3307427
document device_one_time_keys_count in /sync/ response
...
fix #1157
6 years ago
Valentin Deniaud
8afc82c14b
fix /keys/claim request example
...
It didn't correspond to the example response.
6 years ago
Valentin Deniaud
ab3272045e
add missing v1 to m.olm in /keys/upload
6 years ago
Travis Ralston
60b8e72a67
Minor text changes to the query APIs; Keep OpenMarket copyright
...
The bulk of these APIs were copied from OpenMarket's work - we should preserve the copyright header.
6 years ago
Travis Ralston
069a2f7481
Split the query user and room APIs out to their own files
6 years ago
Travis Ralston
5b5b4cfbed
Explicitly say how appservices should detect state events
...
Fixes https://github.com/matrix-org/matrix-doc/issues/1014
6 years ago
Travis Ralston
a4015d5c27
Spelling
6 years ago
Travis Ralston
750d4f9fda
Rename the presence EDU files to be accurate to their types; Misc cleanup of titles
6 years ago
Hubert Chathi
f5dc0eaed2
document msisdn-related endpoints in IS ( #1507 )
...
* add msisdn endpoints in Identity Server spec
* add in CS endpoints that use the IS msisdn endpoints
6 years ago
Travis Ralston
ebca4c7d86
Merge remote-tracking branch 'matrix-org/master' into travis/s2s/presence
6 years ago
Travis Ralston
21dc6f823a
Merge pull request #1484 from turt2live/travis/s2s/read-receipts
...
Document how read receipts work over federation
6 years ago
Travis Ralston
3de50cbc7f
Clarify how /isvalid is meant to always be truthful
6 years ago
Travis Ralston
c492fe43b5
Add strict typing to the m.receipt EDU; Fix description of event_ids
6 years ago
Travis Ralston
8ac6cea58b
Merge pull request #1522 from turt2live/travis/c2s/http-push-gw-required-path
...
Require the push gateway URL to be of a specific path
6 years ago
Travis Ralston
96896fe5d6
Add a strict type the m.typing EDU
6 years ago
Travis Ralston
a53fa9300d
Merge remote-tracking branch 'matrix-org/master' into travis/s2s/presence
6 years ago
Travis Ralston
766402a702
Use strict types for the presence EDUs
6 years ago
Travis Ralston
549a25cad9
Add a mention about how currently_active works
...
Reference: d69decd5c7/synapse/handlers/presence.py (L66-L68)
6 years ago
Travis Ralston
e7aed3da26
Remove poll/unpoll from presence
6 years ago
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