gomatrix icon indicating copy to clipboard operation
gomatrix copied to clipboard

Endpoint checklist

Open kegsay opened this issue 8 years ago • 1 comments

This issue is tracking which endpoints need to be added to gomatrix. They are grouped by their appearance in the spec.

API Standards

  • [x] GET /_matrix/client/versions

Login

  • [x] POST /_matrix/client/r0/login
  • [x] POST /_matrix/client/r0/logout

Account registration and management

  • [x] POST /_matrix/client/r0/register
  • [ ] POST /_matrix/client/r0/register/email/requestToken
  • [ ] POST /_matrix/client/r0/account/password/email/requestToken
  • [ ] POST /_matrix/client/r0/account/deactivate
  • [ ] POST /_matrix/client/r0/account/password

Adding Account Administrative Contact Information

  • [ ] GET /_matrix/client/r0/account/3pid
  • [ ] POST /_matrix/client/r0/account/3pid
  • [ ] POST /_matrix/client/r0/account/3pid/email/requestToken

Filtering

  • [ ] GET /_matrix/client/r0/user/{userId}/filter/{filterId}
  • [x] POST /_matrix/client/r0/user/{userId}/filter

Syncing

  • [x] GET /_matrix/client/r0/sync

Getting events for a room

  • [x] GET /_matrix/client/r0/rooms/{roomId}/state/{eventType}/{stateKey}
  • [x] GET /_matrix/client/r0/rooms/{roomId}/state/{eventType}
  • [ ] GET /_matrix/client/r0/rooms/{roomId}/state
  • [x] GET /_matrix/client/r0/rooms/{roomId}/members
  • [x] GET /_matrix/client/r0/rooms/{roomId}/messages
  • [ ] GET /_matrix/client/r0/rooms/{roomId}/initialSync

Sending events to a room

  • [x] PUT /_matrix/client/r0/rooms/{roomId}/state/{eventType}
  • [x] PUT /_matrix/client/r0/rooms/{roomId}/state/{eventType}/{stateKey}
  • [x] PUT /_matrix/client/r0/rooms/{roomId}/send/{eventType}/{txnId}

Redactions

  • [x] PUT /_matrix/client/r0/rooms/{roomId}/redact/{eventId}/{txnId}

Room creation

  • [x] POST /_matrix/client/r0/createRoom

Room Aliases

  • [ ] PUT /_matrix/client/r0/directory/room/{roomAlias}
  • [ ] DELETE /_matrix/client/r0/directory/room/{roomAlias}
  • [ ] GET /_matrix/client/r0/directory/room/{roomAlias}

Room Membership

  • [x] POST /_matrix/client/r0/rooms/{roomId}/invite
  • [x] POST /_matrix/client/r0/join/{roomIdOrAlias}
  • [x] POST /_matrix/client/r0/rooms/{roomId}/join
  • [x] POST /_matrix/client/r0/rooms/{roomId}/forget
  • [x] POST /_matrix/client/r0/rooms/{roomId}/leave
  • [x] POST /_matrix/client/r0/rooms/{roomId}/kick
  • [x] POST /_matrix/client/r0/rooms/{roomId}/unban
  • [x] POST /_matrix/client/r0/rooms/{roomId}/ban

Listing Rooms

  • [ ] GET /_matrix/client/r0/publicRooms
  • [ ] POST /_matrix/client/r0/publicRooms

Profiles

  • [x] PUT /_matrix/client/r0/profile/{userId}/displayname
  • [ ] GET /_matrix/client/r0/profile/{userId}/displayname
  • [ ] PUT /_matrix/client/r0/profile/{userId}/avatar_url
  • [ ] GET /_matrix/client/r0/profile/{userId}/avatar_url
  • [ ] GET /_matrix/client/r0/profile/{userId}

VoIP

  • [ ] GET /_matrix/client/r0/voip/turnServer

Typing

  • [ ] PUT /_matrix/client/r0/rooms/{roomId}/typing/{userId}

Presence

  • [ ] PUT /_matrix/client/r0/presence/{userId}/status
  • [ ] GET /_matrix/client/r0/presence/{userId}/status
  • [ ] POST /_matrix/client/r0/presence/list/{userId}
  • [ ] GET /_matrix/client/r0/presence/list/{userId}

Content Repository

  • [ ] GET /_matrix/media/r0/download/{serverName}/{mediaId}
  • [x] POST /_matrix/media/r0/upload
  • [ ] GET /_matrix/media/r0/thumbnail/{serverName}/{mediaId}

Send-to-device Messaging

  • [ ] PUT /_matrix/client/r0/sendToDevice/{eventType}/{txnId}

Device Management

  • [ ] GET /_matrix/client/r0/devices
  • [ ] GET /_matrix/client/r0/devices/{deviceId}
  • [ ] PUT /_matrix/client/r0/devices/{deviceId}
  • [ ] DELETE /_matrix/client/r0/devices/{deviceId}

Push Notifications

  • [ ] GET /_matrix/client/r0/pushers
  • [ ] POST /_matrix/client/r0/pushers/set
  • [ ] GET /_matrix/client/r0/notifications
  • [ ] GET /_matrix/client/r0/pushrules/
  • [ ] GET /_matrix/client/r0/pushrules/{scope}/{kind}/{ruleId}
  • [ ] DELETE /_matrix/client/r0/pushrules/{scope}/{kind}/{ruleId}
  • [ ] PUT /_matrix/client/r0/pushrules/{scope}/{kind}/{ruleId}
  • [ ] GET /_matrix/client/r0/pushrules/{scope}/{kind}/{ruleId}/enabled
  • [ ] PUT /_matrix/client/r0/pushrules/{scope}/{kind}/{ruleId}/enabled
  • [ ] GET /_matrix/client/r0/pushrules/{scope}/{kind}/{ruleId}/actions
  • [ ] PUT /_matrix/client/r0/pushrules/{scope}/{kind}/{ruleId}/actions

Search

  • [ ] POST /_matrix/client/r0/search

Room Tagging

  • [ ] PUT /_matrix/client/r0/user/{userId}/rooms/{roomId}/tags/{tag}
  • [ ] DELETE /_matrix/client/r0/user/{userId}/rooms/{roomId}/tags/{tag}
  • [ ] GET /_matrix/client/r0/user/{userId}/rooms/{roomId}/tags

Client Config

  • [ ] PUT /_matrix/client/r0/user/{userId}/rooms/{roomId}/account_data/{type}
  • [ ] PUT /_matrix/client/r0/user/{userId}/account_data/{type}

Server Administration

  • [ ] GET /_matrix/client/r0/admin/whois/{userId}

Event Context

  • [ ] GET /_matrix/client/r0/rooms/{roomId}/context/{eventId}

AS Membership List APIs

  • [x] GET /_matrix/client/r0/rooms/{roomId}/joined_members
  • [x] GET /_matrix/client/r0/joined_rooms

kegsay avatar Jan 05 '17 12:01 kegsay

GET /_matrix/client/r0/rooms/{roomId}/members GET /_matrix/client/r0/rooms/{roomId}/messages

these exist now afaict, implemented by client.JoinedMembers and client.Messages

NotAFile avatar Jun 25 '17 22:06 NotAFile