Table of Contents

Connections API features (preliminary)

Proposed implementation principles

Open issues

User functions

getUserProfile: get user profile information

Get user profile information

Input

Parameter Type (size) Mandatory
actiongetUserProfile Yes
accountInteger (10)Yes
user_idInteger (10)If session_id empty
session_idIf user_id empty
locationVariable characters (40)If applicable
api_keyVariable characters (40)Yes

Output

XML output example:

<?xml version="1.0"?>
<response>
 <response_code>2900</response_code>
 <response_description>User account</response_description>
 <response_time>Sat, 27 Dec 2014 17:23:23</response_time>
 <nickname>Administrator</nickname>
 <location>Mesa, Arizona, United States</location>
 <age>4</age>
 <avatar_small_img>http://chilifresh.com/userpic/small/blank.png</avatar_small_img>
 <avatar_large_img>http://chilifresh.com/userpic/large/blank.png</avatar_large_img>
 <last_login>2014-12-27 12:02:07</last_login>
 <current_read>
  <isbn>24640175</isbn>
  <title>Harry Potter and the goblet of fire</title>
  <author>by J.K. Rowling.</author>
  <cover>https://content.chilifresh.com/?size=SC&amp;isbn=24640175</cover>
 </current_read>
</response>

Response code

Code Code description
2900User profile information provided
2901Inexistent user or profile restrictions
61User not logged in or not specified

Bookshelf functions

bookshelfCreate: create new user bookshelf

Creates a new user bookshelf

Input

Parameter Type (size) Mandatory
actionbookshelfCreate Yes
accountInteger (10)Yes
shelfnameVariable characters(50)Yes
defaultyes/noNo (default: no)
publicyes/noNo (default: no)
session_idChiliFresh session - retrieved from userRegister, userLogin or userCreateSession callYes
locationVariable characters (40)If applicable
api_keyVariable characters (40)Yes

Output

XML output example:

<?xml version="1.0"?>
<response>
 <response_code>2100</response_code>
 <response_description>Bookshelf created successfully</response_description>
 <response_time>Sat, 27 Dec 2014 13:02:20</response_time>
 <user_id>64</user_id>
 <shelf_id>22773</shelf_id>
 <shelf_name>APIshelf</shelf_name>
</response>

Response code

Code Code description
2100Bookshelf created successfully
2101Empty bookshelf name
60Session invalid, expired or empty

bookshelfDelete: delete an existing bookshelf of user

Delete an existing bookshelf of user

Input

Parameter Type (size) Mandatory
actionbookshelfDelete Yes
accountInteger (10)Yes
shelf_idInteger(10)Yes
session_idChiliFresh session - retrieved from userRegister, userLogin or userCreateSession callYes
locationVariable characters (40)If applicable
api_keyVariable characters (40)Yes

Output

XML output example:

<?xml version="1.0"?>
<response>
 <response_code>123</response_code>
 <response_description>Shelf deleted successfully</response_description>
 <response_time>Sat, 27 Dec 2014 13:51:32</response_time>
</response>

Response code

Code Code description
2200Shelf deleted successfully
2201Cannot delete bookshelf
60Session invalid, expired or empty

bookshelfChangeSettings: change settings of bookshelf

Changes settings of a bookshelf

Input

Parameter Type (size) Mandatory
actionbookshelfChangeSettings Yes
accountInteger (10)Yes
shelf_idInteger (10)Yes
defaultyes/noNo
publicyes/noNo
session_idChiliFresh session - retrieved from userRegister, userLogin or userCreateSession callYes
locationVariable characters (40)If applicable
api_keyVariable characters (40)Yes

Output

XML output example:

<?xml version="1.0"?>
<response>
 <response_code>2300</response_code>
 <response_description>Settings changed successfully</response_description>
 <response_time>Sat, 27 Dec 2014 15:30:23</response_time>
</response>

Response code

Code Code description
2300Settings changed successfully
2301Cannot change settings to bookshelf
60Session invalid, expired or empty

bookshelfAddItem: add an item to bookshelf

Add an item - book, CD, DVD, etc. - to an existing bookshelf

Input

Parameter Type (size) Mandatory
actionbookshelfAddItem Yes
accountInteger (10)Yes
shelf_idInteger (10)Yes
item_idISBN, UPC, ISSN, etc.Yes
cf_item_idInteger (10) - item identifier from CF databaseNo
item_titleVariable characters (100) - item titleOnly if adding unidentified item by item_id
item_authorVariable characters (100) - item authorOnly if adding unidentified item by item_id
session_idChiliFresh session - retrieved from userRegister, userLogin or userCreateSession callYes
locationVariable characters (40)If applicable
api_keyVariable characters (40)Yes

Output

XML output example:

<?xml version="1.0"?>
<response>
 <response_code>2400</response_code>
 <response_description>Item added to shelf successfully</response_description>
 <response_time>Sat, 27 Dec 2014 15:46:04</response_time>
</response>

Response code

Code Code description
2400Item added to shelf successfully
2401Cannot identify item
2402Cannot add item to bookshelf
2403Empty item identifier
60Session invalid, expired or empty

bookshelfRemoveItem: remove an item from an existing bookshelf

Remove an item from an existing bookshelf

Input

Parameter Type (size) Mandatory
actionbookshelfAddItem Yes
accountInteger (10)Yes
shelf_idInteger (10)Yes
item_idISBN, UPC, ISSN, etc.Yes
session_idChiliFresh session - retrieved from userRegister, userLogin or userCreateSession callYes
locationVariable characters (40)If applicable
api_keyVariable characters (40)Yes

Output

XML output example:

<?xml version="1.0"?>
<response>
 <response_code>2500</response_code>
 <response_description>Item removed successfully</response_description>
 <response_time>Sat, 27 Dec 2014 15:46:04</response_time>
</response>

Response code

Code Code description
2500Item removed successfully
2501Cannot remove item from bookshelf
60Session invalid, expired or empty

bookshelfListShelves: listing all shelves of a user

Listing all shelves of a user - whether logged in user, or not logged in

Input

Parameter Type (size) Mandatory
actionbookshelfListShelves Yes
accountInteger (10)Yes
user_idVariable characters (32)If session_id empty
session_idChiliFresh session - retrieved from userRegister, userLogin or userCreateSession callIf user_id empty
locationVariable characters (40)If applicable
api_keyVariable characters (40)Yes

Output

XML output example:

<?xml version="1.0"?>
<response>
 <response_code>2600</response_code>
 <response_description>Shelves listed successfully</response_description>
 <response_time>Sat, 27 Dec 2014 16:07:49</response_time>
 <user_id></user_id>
 <bookshelves>
  <bookshelf>
   <id>22761</id>
   <item_count>0</item_count>
   <shelf_title>Test shelf</name>
   <order>0</order>
   <default>no</default>
   <required>no</required>
   <public>no</public>
   <date>Sat, 27 Dec 2014 11:57:28</date>
  </bookshelf>
 </bookshelves>
</response>

Response code

Code Code description
2600Shelves listed successfully
61User not logged in or not specified

bookshelfListItems: list all items of some particular bookshelf

List all items of some particular bookshelf

Input

Parameter Type (size) Mandatory
actionbookshelfListItems Yes
accountInteger (10)Yes
shelf_idInteger (10)Yes
user_IdInteger (10)If session_id empty
session_idChiliFresh session - retrieved from userRegister, userLogin or userCreateSession callIf user_id emtpy
locationVariable characters (40)If applicable
api_keyVariable characters (40)Yes

Output

XML output example:

<?xml version="1.0"?>
<response>
 <response_code>2700</response_code>
 <response_description>Listing of bookshelf successful</response_description>
 <response_time>Sat, 27 Dec 2014 17:05:21</response_time>
 <user_id>231853</user_id>
 <shelf_id>22762</shelf_id>
 <shelf_title>APIshelf2</shelf_title>
 <item_count>4</item_count>
 <shelf_type>private</shelf_type>
 <shelf_type_description>Own, full access</shelf_type_description>
 <items>
  <item>
   <title>Motivated minds</title>
   <author>Deborah Stipek and Kathy Seal.</author>
   <isbn>0805063951</isbn>
   <item_id>3</item_id>
   <work_id>3</work_id>
   <date>Sat, 27 Dec 2014 15:41:28</date>
  </item>
 </items>
</response>

Response code

Code Code description
2700Listing of bookshelf successful
61User not logged in or not specified

bookshelfMoveItem: move an item from one bookshelf to another

Move an item from one bookshelf to another

Input

Parameter Type (size) Mandatory
actionbookshelfMoveItem Yes
accountInteger (10)Yes
from_shelfInteger (10)Yes
to_shelfInteger (10)Yes
item_idInteger (10)Yes
session_idYes
locationVariable characters (40)If applicable
api_keyVariable characters (40)Yes

Output

XML output example:

<?xml version="1.0"?>
<response>
 <response_code>2800</response_code>
 <response_description>Item moved successfully</response_description>
 <response_time>Sat, 27 Dec 2014 17:16:55</response_time>
</response>

Response code

Code Code description
2800Item moved successfully
2801Could not move item to other bookshelf
2802Target shelf does not belong to session user
60Session invalid, expired or empty

Account-related errors

Error code Error description
0System error
1Invalid (empty) API key
2Invalid API key
3API key request limit reached
4API key deactivated
5Invalid API call
20Empty account ID
30Account does not exists
40Account suspended
50Action not specified

For all features [API/lightbox]:

Item functions

For all features [API/lightbox]:

Friends / users functions

For all features [API/lightbox]:

Item recommendation functions

For all features [API/lightbox]:

List functions

For all features [API/lightbox]:

Specific functions

All features in [lightbox]: