++ed by:

1 non-PAUSE user.

Graham Ollis


Yars::Routes - set up the routes for Yars.


version 1.16


 % curl http://localhost:9001/file/764efa883dda1e11db47671c4a3bbd9e/test_file1


This document provides information on the Yars specific REST API (the HTTP "routes") provided by Yars servers. For a Perl interface to this API, see Yars::Client. For a command line interface see yarsclient. For the generic Clustericious REST API that comes with all Clustericious services, see Clustericious::RouteBuilder::Common.



Get a welcome message. This is usually simply the text string "welcome to Yars".

GET /file/#filename/:md5, GET /:md5/#filename

Retrieve a file with the given name and md5.

You can also make a HEAD request on the same route to determine if the file is available without making the yars server send the file.

PUT /file/#filename/#md5

PUT a file with the given name and md5.

DELETE /file/#filename/:md5, /file/:md5/#filename

Delete a file with the given name and md5.

GET /disk/usage

Get a summary of the disk usage.

Send the CGI parameters count=1 to also count the files.

POST /disk/status

Mark disks up or down. Send the disk root and state (up or down) as JSON encoded in the body.

POST /check/manifest

Given JSON with 'manifest' which is a return-delimited string of filenames and md5s (like the output of md5sum), check each file for existence on the server (or proxy to the right server)

GET /servers/status

Get the status of all the disks on all the servers/

GET /server/status

Get the status of just this server.

GET /bucket_map

Get a mapping from buckets to hosts.

GET /bucket/usage

Find the disk usage per bucket.


Yars, Yars::Client, yarsclient, Clustericious


Original author: Marty Brandon

Current maintainer: Graham Ollis <plicease@cpan.org>


Brian Duggan

Curt Tilmes


This software is copyright (c) 2013 by NASA GSFC.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.