|
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 |