93 lines
1.9 KiB
Plaintext
93 lines
1.9 KiB
Plaintext
=========================
|
|
Client-Server URL Summary
|
|
=========================
|
|
|
|
A brief overview of the URL scheme involved in the Synapse Client-Server API.
|
|
|
|
|
|
URLs
|
|
====
|
|
|
|
Fetch events:
|
|
GET /events
|
|
|
|
Registering an account
|
|
POST /register
|
|
|
|
Unregistering an account
|
|
POST /unregister
|
|
|
|
Rooms
|
|
-----
|
|
|
|
Creating a room by ID
|
|
PUT /rooms/$roomid
|
|
|
|
Creating an anonymous room
|
|
POST /rooms
|
|
|
|
Room topic
|
|
GET /rooms/$roomid/topic
|
|
PUT /rooms/$roomid/topic
|
|
|
|
List rooms
|
|
GET /rooms/list
|
|
|
|
Invite/Join/Leave
|
|
GET /rooms/$roomid/members/$userid/state
|
|
PUT /rooms/$roomid/members/$userid/state
|
|
DELETE /rooms/$roomid/members/$userid/state
|
|
|
|
List members
|
|
GET /rooms/$roomid/members/list
|
|
|
|
Sending/reading messages
|
|
PUT /rooms/$roomid/messages/$sender/$msgid
|
|
|
|
Feedback
|
|
GET /rooms/$roomid/messages/$sender/$msgid/feedback/$feedbackuser/$feedback
|
|
PUT /rooms/$roomid/messages/$sender/$msgid/feedback/$feedbackuser/$feedback
|
|
|
|
Paginating messages
|
|
GET /rooms/$roomid/messages/list
|
|
|
|
Profiles
|
|
--------
|
|
|
|
Display name
|
|
GET /profile/$userid/displayname
|
|
PUT /profile/$userid/displayname
|
|
|
|
Avatar URL
|
|
GET /profile/$userid/avatar_url
|
|
PUT /profile/$userid/avatar_url
|
|
|
|
Metadata
|
|
GET /profile/$userid/metadata
|
|
POST /profile/$userid/metadata
|
|
|
|
Presence
|
|
--------
|
|
|
|
My state or status message
|
|
GET /presence/$userid/status
|
|
PUT /presence/$userid/status
|
|
also 'GET' for fetching others
|
|
|
|
TODO(paul): per-device idle time, device type; similar to above
|
|
|
|
My presence list
|
|
GET /presence_list/$myuserid
|
|
POST /presence_list/$myuserid
|
|
body is JSON-encoded dict of keys:
|
|
invite: list of UserID strings to invite
|
|
drop: list of UserID strings to remove
|
|
TODO(paul): define other ops: accept, group management, ordering?
|
|
|
|
Presence polling start/stop
|
|
POST /presence_list/$myuserid?op=start
|
|
POST /presence_list/$myuserid?op=stop
|
|
|
|
Presence invite
|
|
POST /presence_list/$myuserid/invite/$targetuserid
|