Jumblr REST API

METHOD
(expectation)
URL DESCRIPTION GET/POST PARAMS
(required fields in bold)
SUCCESS RESPONSE FAILURE RESPONSE
GET (html) / Render the main page   html: render index.html  
           
POST /login Login a user email, password   form errors
GET /logout Logout current user      
           
POST /users/new Create a new user.
User cannot login until email address verified.
email, password   form errors
GET /users/id/verify Verify email address and allow user login magic_key redirect: index.html?
email=<email>,verified=true
html: render verify.html
GET /users/id Get a user's details.
The user being queried must be logged in.
  user object 'no user', 'not allowed'
GET /users/id/items Get all the items listed by the user.
The user being queried must be logged in.
  array of items 'no user', 'not allowed'
           
GET /items Returns 20 most recent items   array of items  
GET /items Get all items within map bounds sw_lat, sw_lng, ne_lat, ne_lng array of items  
GET /items Get all items matching the search term q array of items  
GET /items Get all items matching the search term within the map bounds sw_lat, sw_lng, ne_lat, ne_lng, q array of items  
GET /items/id Get an item's publicly-visible details.   single item object 'no item'
POST /items/new Create a new item.
User must be logged in.
title, description, postcode, lat, lng   form errors
POST /items/id/update Update an item.
Item's owner must be logged in.
title, description   form errors, 'no item', 'not allowed'
POST /items/id/message Send a message to the item's owner email, message   form errors
POST /items/id/relist Set an item's expiry date 2 weeks in the future.
Item's owner must be logged in.
    'no item', 'not allowed'
POST /items/id/expire Expire immediately.
Item's owner must be logged in.
    'no item', 'not allowed'
           
GET /messages/id/report_spam Mark message as spam magic_key html: render report_spam.html html: render report_spam.html
           
POST /feedback/new Send feedback message about Jumblr email, message    
Notes: