Directory Listing
Status: implemented 20120316
Required privileges: "o". Was "h" prior to 20120720, but the HTML version of /dir changed permissions and this API was modified to match it.
Request: /json/dir
Options:
checkin=commit
(use "tip" for the latest). If checkin is not set then all files from all versions of the tree are returned (but only once per file - not with complete version info for each file in all branches).
CLI:--checkin|-ci CHECKIN
name=subdirectory
name. To fetch the root directory, don't pass this option, or use an empty value or "/".
CLI: use--name|-n NAME
or pass it as the first argument after thedir
subcommand.
Response payload example:
{
"name":"/", /* dir name */
"uuid":"ac6366218035ed62254c8d458f30801273e5d4fc",
"checkin":"tip",
"entries":[{
"name": "ajax", /* file name/dir name fragment */
"isDir": true, /* only set for directories */
/* The following properties are ONLY set if
the 'checkin' parameter is provided.
*/
"uuid": "..." /*only for files, not dirs*/,
"size": number,
"timestamp": number
},...]
}
The checkin property is only set if the request includes it. The
entry-specific uuid and size properties (e.g. entries[0].uuid
) are
only set if the checkin request property is set and they refer to the
latest version of that file for the given checkin. The isDir
property is
only set on directory entries.
This command does not recurse into subdirectories, though it "should be" simple enough to add the option to do so.