^[a-zA-Z0-9_]{0, 64}$
String used to identify a particular user. Publicly viewable identifiers may vary from this identifier.
Login credentials may be specified on a per-request basis using http basic authentication. http://en.wikipedia.org/wiki/Basic_access_authentication
login to a session and obtain a cookie. body varies on content-type header of submission. Accepts form submission or json
application/x-json, eg:
{'username': <username>, 'password': <password>}
x-www-form-urlencoded, eg:
username=<username>&password=<password>
- username
- the username of the user logging in
- password
- the password of the user logging in
- next (optional)
- if specified, send a redirect to this url on successful login.
Cookie identifying session will be set or re-set, previous session (if any) will be invalidated.
200 - successful login (next_page not specified) 302 - successful login (next_page specified) 401 - authentication failure
Logout current user and reset session. body is ignored.
previous session (if any) will be invalidated.
200 - successfully logged out
retrieve info for currently logged in user.
json structure with user info:
{'is_anonymous': <boolean>, ['userid': <userid>], [name: <viewable identifier>], ...}
200 - user exists, info in body 404 - user does not exist
create a new user with the info specified
body varies on content-type header of submission. Accepts form submission or json.
application/x-json, eg:
{'username': <username>, 'password': <password>, 'password2': <password>}
x-www-form-urlencoded, eg:
username=<username>&password=<password>&password2=<password>
- username
- the username of the user to create
- password (optional)
- the password for the user, if specified must provide password2
- password2 (optional)
- repeat the password for the user
if password is not specified, the user will be unable to login via the username/password authentication method until a password is provided.
201 - user was created successfully 409 - user already existed
200 - user exists 404 - user does not exist
json structure with user info:
{'userid': <userid>, name: <viewable identifier>, ...}
200 - user exists, info in body 404 - user does not exist
create a new user with username=<userid> with the info specified
body varies on content-type header of submission. Accepts form submission or json.
application/x-json, eg:
{'password': <password>, 'password2': <password>}
x-www-form-urlencoded, eg:
password=<password>&password2=<password>
- password (optional)
- the password for the user, if specified must provide password2
- password2 (optional)
- repeat the password for the user
if password is not specified, the user will be unable to login via the username/password authentication method until a password is provided.
201 - user was created successfully 409 - user already existed
update the info of an existing user
body varies on content-type header of submission. Accepts form submission or json.
application/x-json, eg:
{'password': <password>, 'password2': <password>}
x-www-form-urlencoded, eg:
password=<password>&password2=<password>
- password (optional)
- the password for the user, if specified must provide password2
- password2 (optional)
- repeat the password for the user
200 - success
delete a user
200 - success 404 - user did not exist
^[a-z0-9_]{0, 128}$
- it is all lowercase
- letters, numbers and _
- max length 128
test the existence of a mailbox at the url given
200 - the mailbox exists 404 - the mailbox does not exist
test the existence of a mailbox at the url given
200 - the mailbox exists 404 - the mailbox does not exist
try to create a mailbox at the url specified.
body of post may contain a json document initial details about the mailbox of the form:
{'name': "The displayed title of the mailbox"}
201 - if successfully created 409 - the mailbox already exists
update a mailbox at the url specified.
body of post may contain a json document initial details about the mailbox of the form:
{'name': "The displayed title of the mailbox"}
200 - if successfully updated 404 - the mailbox does not exist
destroy the mailbox at mbid
200 - successfully deleted 404 - mailbox did not exist
delete a message in a mailbox
200 - the message was deleted 404 - the mailbox or the message did not exist
retrieve an OPML document representing all Feed type subscriptions
OPML feed list
replace all subscriptions with only those in the OPML document found in the request body.
OPML feed list
Add subscriptions in the OPML document found in the request body.
OPML feed list
retrieve json structure representing subscriptions
of the form:
[{'slug': <sub id>, 'type': <subscription type>, 'title': <title>, <... type specific>}, ...]
eg:
[{'slug': '7c43fb2bc54cec30c98edbf6a31ad535', 'type': 'feed', 'title': 'Example Feed', 'url': 'http://www.example.com/feeds/1'}, ...]
404 - the mailbox 'mbid' does not exist
create a subscription in the mailbox 'mbid'
of the form:
{'type': <subscription type>, 'title': <title>, <... type specific>}
eg:
{'type': 'feed', 'title': 'Example Feed', 'url': 'http://www.example.com/feeds/1'}
{'slug': <new slug>}
201 - the subscription was created
test the existence of a subscription at the url given
200 - the subscription exists 404 - the mailbox or the subscription does not exist
get info about a particular subscription
of the form:
{'slug': <sub id>, 'type': <subscription type>, 'title': <title>, <... type specific>}
eg:
{'slug': '7c43fb2bc54cec30c98edbf6a31ad535', 'type': 'feed', 'title': 'Example Feed', 'url': 'http://www.example.com/feeds/1'}
200 - the subscription exists 404 - the mailbox or subscription does not exist
delete the subscription at the url given
200 - the subscription was deleted 404 - the mailbox or the subscription did not exist
update subscription information
body varies on content-type header of submission. Accepts form submission or json.
application/x-json, eg:
{'title': 'New Title'}
x-www-form-urlencoded, eg:
title=New%20Title
of the form:
{'slug': <sub id>, 'type': <subscription type>, 'title': <title>, <... type specific>}
200 - success 404 - the mailbox or subscription does not exist 400 - update failed, invalid info
Checks for an Atom, RSS etc feed document directly available at the url specified.
parameters: url - the url to chek
of the form: {"links": [{"url": "http://example.com/feed/1", "title": "The Feed's title"}]}
Search a web page for links to feeds. Looks for link rel="alternate" with appropriate type. Titles returned are those listed in the html not the feed itself and are often not provided.
list of the form: {"links": [{"url": "http://www.example.org/feed/2", "title": "Feed Title"}, ...]}
Find the feed links listed in an OPML file. Titles are taken from those listed in the OPML file.
The request may be made by posting a form with multipart/formdata, a field "opmlfile" should contain the opml data file upload.
of the form: { "links": [{"url": "http://www.example.org/feed/2", "title": "Feed Title"}]}
if a multipart/formdata request is POSTed, the result is wrapped in html to facilitate asynchronously loading the result into an iframe using a browser, eg:
<html><head></head><body> {"links": [{"url": "http://example.com/feeds/1", "title": "Example Feed"}]} </body></html>