/docs: Data should be posted as json to various URLs on the site to create or update job requests, and various URLs can be accessed to get information. There's also a web interface. The base URL is https://vibrant.oerc.ox.ac.uk. GET: /routes => list all available URLs. /docs => show this information. /search.json => show all available jobs. /jobs.json => show all available jobs. /download/$id => download output for a job /download/infile/$id => download input file for a job ...more are available in the routes output. POST: Post (and PUT) requests can be made with curl as below for testing purposes, although it is presumed that other applications (e.g. Scratchpads) will use other means (e.g. php) to do so. If posting JSON then it is necessary to also post an auth_token, as shown below. Users using the web interface can upload files directly, but servers will have to send the link of an http accessible file instead; the system will download this. N.B. --insecure is only required if there is no proper certificate; this requirement will eventually be removed for the production system. Create: curl --insecure -i -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{"job":{"inputurl":"http://input/7","type":"test","user":"milo"}},"auth_token":"ehioesihp382uah"}' https://vibrant.oerc.ox.ac.uk:3000/jobs.json Search: curl --insecure -i -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{"job":{"status":"finished"}},"auth_token":"ehioesihp382uah"}' https://vibrant.oerc.ox.ac.uk/jobs/search.json PUT: Update: curl --insecure -i -X PUT -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{"job":{"user":"new_user"}},"auth_token":"ehioesihp382uah"}' https://vibrant.oerc.ox.ac.uk/jobs/4d27036135d3101c68000001.json Timestamps will be updated automatically when jobs are created or modified. Any questions, e-mail: milo.thurston@oerc.ox.ac.uk /routes: jobs GET /jobs(.:format) {:action=>"index", :controller=>"jobs"} POST /jobs(.:format) {:action=>"create", :controller=>"jobs"} new_job GET /jobs/new(.:format) {:action=>"new", :controller=>"jobs"} edit_job GET /jobs/:id/edit(.:format) {:action=>"edit", :controller=>"jobs"} job GET /jobs/:id(.:format) {:action=>"show", :controller=>"jobs"} PUT /jobs/:id(.:format) {:action=>"update", :controller=>"jobs"} DELETE /jobs/:id(.:format) {:action=>"destroy", :controller=>"jobs"} new_user_session GET /users/sign_in(.:format) {:action=>"new", :controller=>"devise/sessions"} user_session POST /users/sign_in(.:format) {:action=>"create", :controller=>"devise/sessions"} destroy_user_session GET /users/sign_out(.:format) {:action=>"destroy", :controller=>"devise/sessions"} user_password POST /users/password(.:format) {:action=>"create", :controller=>"devise/passwords"} new_user_password GET /users/password/new(.:format) {:action=>"new", :controller=>"devise/passwords"} edit_user_password GET /users/password/edit(.:format) {:action=>"edit", :controller=>"devise/passwords"} PUT /users/password(.:format) {:action=>"update", :controller=>"devise/passwords"} user_registration POST /users(.:format) {:action=>"create", :controller=>"devise/registrations"} new_user_registration GET /users/sign_up(.:format) {:action=>"new", :controller=>"devise/registrations"} edit_user_registration GET /users/edit(.:format) {:action=>"edit", :controller=>"devise/registrations"} PUT /users(.:format) {:action=>"update", :controller=>"devise/registrations"} DELETE /users(.:format) {:action=>"destroy", :controller=>"devise/registrations"} user_confirmation POST /users/confirmation(.:format) {:action=>"create", :controller=>"devise/confirmations"} new_user_confirmation GET /users/confirmation/new(.:format) {:action=>"new", :controller=>"devise/confirmations"} GET /users/confirmation(.:format) {:action=>"show", :controller=>"devise/confirmations"} user_unlock POST /users/unlock(.:format) {:action=>"create", :controller=>"devise/unlocks"} new_user_unlock GET /users/unlock/new(.:format) {:action=>"new", :controller=>"devise/unlocks"} GET /users/unlock(.:format) {:action=>"show", :controller=>"devise/unlocks"} root /(.:format) {:controller=>"info", :action=>"welcome"} POST /search(.:format) {:controller=>"jobs", :action=>"search"} jobs_new POST /jobs/new(.:format) {:controller=>"jobs", :action=>"new"} GET /search(.:format) {:controller=>"jobs", :action=>"index"} GET /download/:id(.:format) {:controller=>"jobs", :action=>"download"} GET /download/infile/:id(.:format) {:controller=>"jobs", :action=>"get_infile"} show_all GET /show_all(.:format) {:action=>"show_all", :controller=>"jobs"} routes GET /routes(.:format) {:action=>"routes", :controller=>"info"} docs GET /docs(.:format) {:action=>"docs", :controller=>"info"} left GET /left(.:format) {:action=>"welcome_left", :controller=>"info"}