forked from MirrorHub/synapse
93 lines
1.9 KiB
ReStructuredText
93 lines
1.9 KiB
ReStructuredText
|
=========================
|
||
|
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
|