Core specification includes anything that are not modules and the spec deem necessary for every client.
- API Standards
- Server Discovery
- Client Auth
- Soft Logout
- User Interactive Authentication API (UIAA)
- Login
- Account Registration and Management
- Adding 3PIDs
- whoami
- Capabilities Negotiation
- Filtering
- Events
- Room Events
- Syncing
- Getting Events for a Room
- Sending Events
- Redaction
- Rooms
- Creation
- Room Aliases
- Room Membership
- Joining
- Leaving
- Kick
- Ban
- Unban
- Listing Rooms
- User Data
- Rate Limiting
These are modules that are "optional" but somewhat required to figure out what is going on.
- Instant Messaging
- [/] Voice over IP // Note: Need to provide user-friendly API.
- Typing Notifications
- Receipts
- Fully Read Marker
- Presence (Online/Unavailable/Offline)
- Content Repository
- Send-to-Device Messaging
- Device Management
- End-to-end Encryption
- Secrets
- History Visibility
- Push Notification
- Third Party Invites
- Server Side Search
- Guest Access
- Room Previews
- Room Tagging
- Client Config
- Server Administration
- Event Context
- SSO Client Login
- Direct Messaging
- Ignoring Users
- Sticker Messages
- Reporting Content
- Third Party Networks
- OpenID
- Server ACL
- User, Room and Group mentions
- Room Upgrades
- Server Notices
- Moderation Policy
These are the changelogs of v1.1 and v1.2. They should be marked off when they're checked to be implemented.
- MSC 2687:
curve25519-hkdf-sha256
for SAS verification - MSC 3139:
m.key.verification.ready
andm.key.verification.done
- MSC 3524:
prev_content
is nowunsigned
- MSC 3624:
aliases
has been removed
- MSC 3199: Remove starting verification without
m.key.verification.ready
- MSC 2387 + MSC 2639:
/room_keys/*
- MSC 2536:
POST /keys/device_signing/upload
andPOST /keys/signatures/upload
- MSC 3154 + MSC 3254:
/knock
- MSC 3163:
/login/sso/redirect/{idpId}
- MSC 3610:
/rooms/{roomId}/hierarchy
- MSC 3616:
/register/m.login.registration_token/validity
- MSC 2609:
m.login.oauth2
andm.login.token
User-Interactive Auth API
- MSC 2399: Advise recipients about withholding keys
- MSC 2536: Cross-signing property to
POST /keys/query
- MSC 2597 + MSC 3151: Secure Secret Storage and Sharing
- MSC 2709:
device_id
parameter to login fallback (Won't fix. JS callback) - MSC 2728: SAS Emojis
- MSC 2795:
reason
on membership events - MSC 2796:
M_NOT_FOUND
on push rule endpoints - MSC 2807: Content reporting API:
reason
/score
now optional - MSC 2808: Guest may get list of members of a room (Not relevant)
- MSC 3098: Support for spoilers
- MSC 3100:
<details>
and<summary>
now in HTML subset (Not relevant) - MSC 3139 + MSC 3150: Key verification using in-room messages
- MSC 3147: SSSS for cross-signing and key backup
- MSC 3149: Key verification using QR code
- MSC 3163: Multiple SSO providers
- MSC 3166:
device_id
on/account/whoami
- MSC 3169: Identity server discovery failure results in
FAIL_PROMPT
- MSC 3421: Re-version to be
v3
instead ofr0
- MSC 3324: App-service login
- MSC 3387:
restricted
rooms - MSC 3605:
is_guest
in/account/whoami
- MSC 3610: Spaces and room types
- MSC 3614:
m.set_displayname
,m.set_avatar_url
,m.3pid_changes
- MSC 3615: Fallback keys
- MSC 3616: Token-authenticated registration support
- MSC 3530:
M_FORBIDDEN
on/profile/{userId}
- MSC 3652: Remove group mentions