====== lib.rario.us API ====== Please note: **this is very much in beta**, so let me know if you have any problems or requests. This is the API for http://lib.rario.us. These should all be RESTful. Some methods will require [[:librarious:api#authentication|Authentication]]. ===== JSON ===== Data will return in JSON by default. If you pass a "callback" param, the data will be passed to a function using the callback value for the function name. ===== Using cURL ===== You can easily use cURL in the command line to test out responses. ===== Authentication ===== Methods that require writing or deleting require authentication. This currently uses basic HTTP auth methods. ===== API Methods ===== Many of these methods will return a HTTP 204 No Content on failure. Methods that destroy or edit data require a POST. ==== User Methods ==== Methods for interacting with the user data. === User Show === lib.rario.us/api/user/show This method requires either id or screenname and returns JSON (by default) or XML using the format parameter. ^ Parameter ^ Type ^ | id | integer - a user's id | | screenname | string - a user's name | | format | either 'xml' or 'json' - defaults to 'json' | ==== Media Methods ==== Methods for interacting with libraries. === Media Index === lib.rario.us/api/media ==Requires== ^ Parameter ^ Type ^ | owner | string - a username on lib.rario.us | | type | string - 'books', 'dvds', 'music', or 'games' | | tag | string - separate multiples tags with a "+" | | page | integer - for page number | | format | either 'xml' or 'json' - defaults to 'json' | ==== Item Methods ==== Methods for interacting with item data. === Item Show === lib.rario.us/api/item/show ==Requires== * an item's id ^ Parameter ^ Type ^ | id | integer - an items id | | format | either 'xml' or 'json' - defaults to 'json' | === Item Add === lib.rario.us/api/item/add ==Requires== * a title's ASIN === Item Delete === == Requires == * authentication * a POST * an item's id == Returns == true on success or a HTTP 204 No Content lib.rario.us/api/item/delete ^ Parameter ^ Type ^ | id | integer - an items id | ==== Tag Methods ==== Methods for interacting with tags === Tag Show === lib.rario.us/api/tags/show ^ Parameter ^ Type ^ | user_id | integer - a user's id | | screenname | string - a user's name | | format | either 'xml' or 'json' - defaults to 'json' | ==== Title Methods ==== Methods for interacting with titles === Title Show === lib.rario.us/api/title/show ^ Parameter ^ Type ^ | id | integer - a title's id | | asin | string - a title's amazon id | | upc | string - a title's UPC | | ean | string - a title's EAN | | isbn | string - a title's isbn | | format | either 'xml' or 'json' - defaults to 'json' | ==== Amazon Methods ==== Methods for interacting with lib.rario.us's amazon methods === Amazon Search === lib.rario.us/api/amazon/search