2 ------ ------------------------------ -------------------------------------
3 GET / Site root will redirect to a landing page
5 GET /ctdl/f/ returns a JSON-encoded list of accessible floors
7 GET /ctdl/r/ returns a JSON-encoded list of accessible rooms
8 OPTIONS /ctdl/r/<roomname>/ returns just what you'd expect
9 PROPFIND /ctdl/r/<roomname>/ Show a bunch of crap
10 GET /ctdl/r/<roomname>/ Returns information about the room (name, view, etc.) in JSON format
11 GET /ctdl/r/<roomname>/info.txt Returns the room info banner for this room
12 GET /ctdl/r/<roomname>/msgs.all JSON array of message list in room
13 GET /ctdl/r/<roomname>/msgs.new JSON array of message list in room (new messages)
14 GET /ctdl/r/<roomname>/mailbox JSON dictionary of a mailbox summary in this room
15 GET /ctdl/r/<roomname>/stat JSON dictionary of the server STAT command (room name and modification time)
16 GET /ctdl/r/<roomname>/<msgnum> Retrieve the content of an individual message
17 GET /ctdl/r/<roomname>/<msgnum>/json Retrieve an individual message in a room, encapsulated in JSON
18 GET /ctdl/r/<roomname>/<msgnum>/<part> Retrieve a MIME component of a message, specified by partnum
20 GET /ctdl/r/<roomname>/calendar:<from>:<to>
21 Retrieve calendar items in the current room.
22 "from" and "to" comprise a range expressed in unix timestamps.
23 You can omit either or both timestamps but not the colons.
25 DELETE /ctdl/r/<roomname>/<msgnum> Delete a message from a room
26 MOVE /ctdl/r/<roomname>/<msgnum> Move a message to another room (requires Destination)
28 PUT /ctdl/r/<roomname>/<xxx> DAV operation to insert a new message into a room
30 wefw List of message references, separated by "!" delimiter
32 The returned ETag will be the new message number.
34 GET /ctdl/r/<roomname>/slrp Set the "Last Read Pointer" for the room
36 last The number of the most recently seen message
38 GET /ctdl/c/info Returns a JSON representation of the output of an INFO server command
39 POST /ctdl/a/login Send it a your credentials and it will log you in
41 GET /ctdl/a/biff Check for new mail
42 GET /ctdl/u/<username>/userpic Returns an image containing the photo/avatar of the specified user
43 GET /ctdl/s/ Static content (html, css, js, images...)
44 GET /.well-known/ Static content (RFC5785 compliant paths)
45 POST /ctdl/p Handler for uploading attachments and other file items
46 The JSON returned wil contain one or more uploads in an array like this:
49 "uploadfilename" : "Track 01.wav",
50 "contenttype" : "audio/wav",
52 "contentlength" : 56222252
55 GET /ctdl/p/<ref> Fetch a specific item that was uploaded ("ref" was returned by the upload)
56 DELETE /ctdl/p/<ref> Delete a specific item that was uploaded ("ref" was returned by the upload)
57 GET /ctdl/p/<msgnum> Load the attachments from message <msgnum> in, as if they were uploaded
58 by the client. Returns the same JSON as "POST /ctdl/p".