Project

General

Profile

Wiki » History » Revision 5

Revision 4 (Eric Vieillevigne, 01/24/2012 04:54 PM) → Revision 5/59 (Eric Vieillevigne, 01/24/2012 04:57 PM)

h1. API Documentation v1 

 This Document describes the API for accessing the Family Platform from a client. T 

 {{>toc}} 

 This wiki provides you with a online documentation of the API accessible on tha Family Wall. The examples in this guide uses Java J2EE programming and HTML/JavaScript for  

 client-side code.  

 h1. Authentication - log 

 In order to use the API you must be a valid user and be authenticated by the platform. First you have to create an account. In order to perform this tasks you shall use the API. 

 h2. Account Creation - _logcreate_ 

 This method creates a new account into the platform with at least one email 
 Open a session with the created account, even if the account identifier is not validated yet. (see loginByPassword for detail about the session). 

 By sending an HTTP request http://stagingapi.familywall.com/api/log/create?identifier=mynewid%40de.de&password=mynewpassword 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |Login|String|Login Information| 
 |Password|String|Password Information| 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "a01":{ 
     "r":{ 
       "r":"675" 
     }, 
     "cn":"logcreate" 
   } 
 } 
 </code></pre> 
 The Method response is a *Long* which represents the _AccountId_ of the account created .  

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountAlreadyExistsException|Ex|2|Login already exists| 
 |FizCredentialInvalidException|Ex|3|Authentication Exception| 

 h2. Account Authentication- _login_ 

 In order to log-in into the platform and create a session, the _log_ method shall be called. By calling http://stagingapi.familywall.com/api/log/in? 

 identifier=accid&password=pwd the system will provide a session token enabling the client application to perform authenticated operations. However this is transparent to the API  

 because this is sent via the api session layer (usually under the form of a JSESSIONID). 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |identifier|String|Account Information Id| 
 |Password|String|Password Information| 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "a01":{ 
     "r":{ 
       "r":"130" 
     }, 
     "cn":"login" 
   } 
 } 
 </code></pre> 
 The Method response is a *Long* which represents the _AccountId_ of the account logged.  

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountIdentifierNotValidatedException|Ex|4|Email is not validated yet| 
 |FizCredentialInvalidException|Ex|3|Authentication Exception| 
 |FizAccountNotFoundException|Ex|1|Account does not exists| 

 h2. Account Log Out- _logout_ 

 The client can call the method logout to terminate the session initiated by the methog login. 

 http://stagingapi.familywall.com/api/log/out 

 *Parameters*: 
 The method does not necessitate a parameter. It uses the JSESSIONID stored on the session cookie to request to the server the session invalidation 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "a01":{ 
     "r":{ 
       "r":"true" 
     }, 
     "cn":"logout" 
   } 
 } 
 </code></pre> 
 The Method response is a *Boolean* which returns *TRUE* as a results when session is effectively invalidated and *FALSE* when the session does not exists anymore.  

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Account Validation- _logtoken_ 

 The logtoken method is used to validate an account identifier. If the account identifier is existing, the account identifier shall not be verified yet. If the validation Token  

 is ok, the account identifier is validated and a session with the account is opened. If the validation token is invalid, the FizCredentialInvalidException will be thrown. 

 http://stagingapi.familywall.com/api/log/token?identifier=id&token=string 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |identifier|String|Account Information Id| 
 |Token|String|Token Information| 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "a01":{ 
     "r":{ 
       "r":"130" 
     }, 
     "cn":"logtoken" 
   } 
 } 
 </code></pre> 
 The Method response is a *Long* which represents the _AccountId_ of the account logged.  

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizCredentialInvalidException|Ex|3|Authentication Exception| 
 |FizAccountNotFoundException|Ex|1|Account does not exists| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h1. Profile Management - prf 

 The profile API enable to manage the existing profiles of the members. In all the other apis, members are labeled by accountid. Developper may use the profile api to retrieve  

 the information of each member and match the ids with a display information. 

 h2. Get Profile- _prfgetProfile_ 

 The method prfgetProfile enables a logged user to retrieve all the information of the profile for a certain accountid.. 

 The method returns the profile information. 

 By sending an HTTP request http://stagingapi.familywall.com/api/prf/getProfile?oid=1705 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |accountid|String|Account Information Id| 


 if accountid is null, the method returns the profile of the logged account. 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"prfgetProfile", 
   "feed":{ 
     "ln":"Simpson", // last name 
     "pictureURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/48_20mwynve_47?", // avatar 
     "profileId":"30", 
     "ownerId":"48", 
     "dname":"Bart", // nickname 
     "birthDate":"1986-12-01T23:00:00.000Z",/*Birthdate in UTC format*/ 
     "locale":"en", 
     "pictureURIs":[ 
       "http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/48_20mwynve_47?" 
     ], 
     "devices":"devices":[ 
       { 
         "deviceType":"MOBILE", 
         "value":"0687824772", 
         "deviceId":"20_215" 
       },{ 
         "deviceType":"EMAIL", 
         "value":"ericv@voxmobili.com", 
         "deviceId":"20_216" 
       } 
     ], 
     "fn":"Bart" // first name 
   } 
 }        
 </code></pre> 
 The Method response returns the IProfile Feed. 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get Profile List- _prfgetProfiles_ 

 The method prfgetProfile enables a logged user to retrieve all the information of the lists of the profile of all family members. 

 The method returns the profile information. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/prf/getProfiles? 

 *Parameters*: 

 No parameters 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"prfgetProfiles", 
   "feed":{ 
     "1704":{ 
       "profileId":"944", 
       "ownerId":"1704", 
       "pictureURIs":[], 
       "devices":[ 
         { 
           "deviceType":"EMAIL", 
           "value":"grandpa@smartnsoft.com", 
           "deviceId":"1704_163" 
         } 
       ], 
       "fn":"Grandpa" 
     }, 
     "1705":{ 
       "profileId":"945", 
       "ownerId":"1705", 
       "dname":"", 
       "timeZone":"Asia\/Hong_Kong", 
       "birthDate":"2011-07-26T03:50:18.00Z", 
       "pictureURIs":[], 
       "devices":[ 
         { 
           "deviceType":"EMAIL", 
           "value":"yuanyuan.xu@mgsei.com", 
           "deviceId":"1705_164" 
         },{ 
           "deviceType":"MOBILE", 
           "value":"13678049601", 
           "deviceId":"1705_165" 
         } 
       ], 
       "fn":"2" 
     }, 
     "133":{ 
       "ln":"Simpson", 
       "pictureURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/133_150?", 
       "profileId":"73", 
       "ownerId":"133", 
       "dname":"Lizy", 
       "gender":"FEMININE", 
       "timeZone":"Asia\/Taipei", 
       "birthDate":"2011-07-15T02:50:00.00Z", 
       "pictureURIs":[ 
         "http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/133_150?" 
       ], 
       "devices":[ 
         { 
           "deviceType":"MOBILE", 
           "value":"15586347557", 
           "deviceId":"133_4" 
         } 
       ], 
       "fn":"Lisa" 
     }, 
     "1706":{ 
       "profileId":"946", 
       "ownerId":"1706", 
       "pictureURIs":[], 
       "devices":[ 
         { 
           "deviceType":"EMAIL", 
           "value":"roaming0816@gmail.com", 
           "deviceId":"1706_166" 
         } 
       ], 
       "fn":"2" 
     }, 
     "131":{ 
       "ln":"Simpson", 
       "pictureURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/131_148?", 
       "profileId":"71", 
       "ownerId":"131", 
       "dname":"Dad", 
       "gender":"MASCULINE", 
       "timeZone":"Asia\/Hong_Kong", 
       "birthDate":"1980-01-06T00:02:35.00Z", 
       "pictureURIs":[ 
         "http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/131_148?" 
       ], 
       "devices":[ 
         { 
           "deviceType":"MOBILE", 
           "value":"123456789", 
           "deviceId":"131_5" 
         },{ 
           "deviceType":"EMAIL", 
           "value":"dad@smartnsoft.com", 
           "deviceId":"131_161" 
         } 
       ], 
       "fn":"homer" 
     }, 
     "130":{ 
       "ln":"Simpson", 
       "pictureURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/130_147?", 
       "profileId":"70", 
       "ownerId":"130", 
       "dname":"Mom", 
       "gender":"FEMININE", 
       "timeZone":"Asia\/Taipei", 
       "birthDate":"1991-03-03T12:10:48.00Z", 
       "pictureURIs":[ 
         "http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/130_147?" 
       ], 
       "devices":[ 
         { 
           "deviceType":"MOBILE", 
           "value":"06655242", 
           "deviceId":"130_3" 
         },{ 
           "deviceType":"EMAIL", 
           "value":"mom@smartnsoft.com", 
           "deviceId":"130_162" 
         } 
       ], 
       "fn":"Marge" 
     } 
   } 
 } 
        
 </code></pre> 
 The Method response returns the profile MAP list account id, iprofile. 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h2. Set Profile Picture- _prfsetPicture_ 

 The method prfsetPicture enables a logged user to set the profile picture of certain account id of the members of the family. 

 The method returns the update IProfile. 

 By sending an HTTP request http://stagingapi.familywall.com/api/prf/prfsetPicture 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |accountid|String|accountid Information| 
 |file|binary|binary file picture| 



 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"prfsetPicture", 
   "feed":{ 
     "ln":"Simpson", 
     "pictureURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/130_2757?", 
     "profileId":"70", 
     "ownerId":"130", 
     "dname":"Mom", 
     "gender":"FEMININE", 
     "timeZone":"Asia\/Taipei", 
     "birthDate":"1991-03-03T12:10:48.00Z", 
     "pictureURIs":[ 
       "http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/130_2757?" 
     ], 
     "devices":[ 
       { 
         "deviceType":"MOBILE", 
         "value":"06655242", 
         "deviceId":"130_3" 
       },{ 
         "deviceType":"EMAIL", 
         "value":"mom@smartnsoft.com", 
         "deviceId":"130_162" 
       } 
     ], 
     "fn":"Marge" 
   } 
 } 
 </code></pre> 

 The Method response returns updated iprofile. 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h1. Account Managment - acc 

 The Acc api allows to manage its own account, change the members profiles, create a family information as well as invite a member to join. This method does not allow to create  

 an account for a user which is provided by the logcreate function. 

 h2. Create a Family- _accfamily_ 

 The method accfamily enables to create a new family. If the account already have a family, a FizApiUnattendedException shall be thrown. Note that to use this api, the user must  

 be logged with a valid session. During the creation of the family the logged user will be automatically the family founder. 


 The method returns a Long Familyid 

 By sending an HTTP request http://www.familywall.com/preprod/apiapi/acc/createfamily?name=vieillevigne&role=Dad 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |name|String|Name of the family| 
 |role|String|Role of the family founder Mom,Dad,Daughter,Son,Unknown)| 
 |file|binary|Image of the Family| 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"acccreatefamily", 
   "feed":"3266" 
 } 
        
 </code></pre> 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get Family Information- _accgetfamily_ 

 The method accgetfamily enables a logged user retreive the information fo the family. 

 The method returns a Family List Ifamily 

 By sending an HTTP request http://stagingapi.familywall.com/api/acc/getfamily? 

 *Parameters*: 

 No Parameter 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"accgetfamily", 
   "feed":{ 
     "name":"Mytest Family", 
     "family_id":"3323", 
     "members":[ 
       { 
         "role":"Mom", 
         "account":{ 
           "accountId":"3303", 
           "identifiers":[ 
             { 
               "value":"ricowine@gmail.com", 
               "validated":"true", 
               "type":"Email" 
             } 
           ], 
           "name":"ricowine@gmail.com" 
         }, 
         "right":"SuperAdmin" 
       } 
     ] 
   } 
 }     
 </code></pre> 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get logged Account- _accgetloggedaccount_ 

 The method accgetloggedaccount returns contains all the AccountIdentifier(s) and all the family information attached to this account. 

 The returned account contains all the AccountIdentifier(s) and all the family information attached to this account 
 However, the validationToken shall _NOT_ be transmitted in the accountIdentifier(s) (do not annotate the field). It also contains an autologin token to enable the system to  

 log-in without having to resend the password (TBD later) 

 By sending an HTTP request http://stagingapi.familywall.com/api/acc/getloggedaccount? 

 *Parameters*: 

 No Parameter 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"accgetloggedaccount", 
   "feed":{ 
     "accountId":"130", 
     "identifiers":[ 
       { 
         "value":"abderrahmanee@facebook.com", 
         "validated":"true", 
         "type":"Email" 
       },{ 
         "value":"htc@erioxyde.com", 
         "validated":"true", 
         "type":"Email" 
       },{ 
         "value":"marge", 
         "validated":"true", 
         "type":"ExternalId" 
       },{ 
         "value":"izmazen@gmail.com", 
         "validated":"true", 
         "type":"Email" 
       },{ 
         "value":"ss.sibawi@gmail.com", 
         "validated":"true", 
         "type":"Email" 
       } 
     ], 
     "name":"marge" 
   } 
 }    
 </code></pre> 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h2. Set Family Information- _accsetprofile_ 

 The method accsetprofile enables the profile of the current account (second page of registration process). 

 The method returns a Long. 

 By sending an HTTP request http://www.familywall.com/preprod/apiapi/api/acc/setprofile 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |accountId|String|Account of the profile to modify : if null it is yours, if not you have to be administrator to modify the account| 
 |pseudo|String|pseudo of the user| 
 |firstname|String|Firstname of the user| 
 |role|String|Role of the family founder Mom,Dad,Daughter,Son,Unknown| 
 |mobile|String|the mobile number (if null no change, if empty String will delete, else it store the value)| 
 |email|String|the email address (if null no change, if empty String will delete, else it store the value)| 
 |birthday|String|the email address (if null no change, if empty String will delete, else it store the value)| 
 |timezone|String|timezone of the user| 
 |file|binary|Image of the Family| 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"accsetprofile", 
   "feed":"3266" 
 } 
      
 </code></pre> 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountAlreadyExistsException|ex|2|Already exists| 
 |FizCredentialInvalidException|ex|3|No right to update| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h2. Update Family Account- _accupdatefamily_ 

 The method accupdatefamily enables a logged client to update the family in case he has the proper administration right (Family Founder(SA) or Administrator). 

 The method returns an IFamily. 

 By sending an HTTP request http://www.familywall.com/preprod/apiapi/api/acc/setprofile 

 |*Name*|*Type*|*Description*| 
 |name|String|Name of the family - if null no update no update for this field| 
 |file|binary|Image of the Family - if null no update on the field| 

 *Response*: 
 { 
   "cn":"accupdatefamily", 
   "feed":{ 
     "name":"", 
     "family_id":"144", 
     "pictureUri":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_9323?", 
     "members":[ 
       { 
         "role":"Mom", 
         "account":{ 
           "accountId":"130", 
           "identifiers":[ 
             { 
               "value":"abderrahmanee@facebook.com", 
               "validated":"true", 
               "type":"Email" 
             },{ 
               "value":"htc@erioxyde.com", 
               "validated":"true", 
               "type":"Email" 
             },{ 
               "value":"marge", 
               "validated":"true", 
               "type":"ExternalId" 
             },{ 
               "value":"izmazen@gmail.com", 
               "validated":"true", 
               "type":"Email" 
             },{ 
               "value":"ss.sibawi@gmail.com", 
               "validated":"true", 
               "type":"Email" 
             } 
           ], 
 ... 
      
 </code></pre> 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h1. Event Management - evt 

 The Event Apis enable the developper to access the event module of the platform, manage, create, delete or update any event of the family and his account based on his associated  

 access right. 

 h2. Create an Event- _evtcreate_ 

 The method evtcreate enables a logged user to create an event. 

 The method returns the Ievent as a result. 

 By sending an HTTP request http://stagingapi.familywall.com/api/evt/evtcreate 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |text|String|event title| 
 |description|String|event description| 
 |startDate|String|Start Date of the event string containing an ISO-8601 formatted date-time.If it contains a time zone (not recommended), it will be converted to user time zone in utc| 
 |endDate|String|End Date of the eventstring containing an ISO-8601 formatted date-time.If it contains a time zone (not recommended), it will be converted to user time zone in utc| 
 |type|String|UNKNOWN(default);BIRTHDAY| 
 |placeId|String|associated place id information| 
 |contactId|String|associated contact id information for birthday, only available to define the birthday of contacts; for family members, use the method accgsetprofile instead| 
 |file|binary|binary associated photo may be multiple| 



 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"evtcreate", 
   "feed":{ 
     "startDate":"2011-04-01T08:00:00.00Z", 
     "modifDate":"2011-07-28T13:00:36.88Z", 
     "text":"test ", 
     "pictureURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_2987?", 
     "accountId":"130", 
     "eventId":"144_2151", 
     "placeId":"144_123", 
     "description":"test event description", 
     "eventType":"UNKNOWN", 
     "refPersonId":"110", 
     "comments":[] 
   } 
 } 
        
 </code></pre> 
 The Method response returns the Ievent Feed. 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Create an Event- _evtupdate_ 

 The method evtupdate enables a logged user to create an event. 

 The method returns the Ievent as a result. 

 By sending an HTTP request http://stagingapi.familywall.com/api/evt/evtcreate 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |eventid|String|Event id to be updated| 
 |text|String|event title| 
 |description|String|event description| 
 |startDate|String|Start Date of the event string containing an ISO-8601 formatted date/time.If it contains a time zone (not recommended), it will be converted to user time zone  

 in utc| 
 |endDate|String|End Date of the eventstring containing an ISO-8601 formatted date/time.If it contains a time zone (not recommended), it will be converted to user time zone in  

 utc| 
 |type|String|UNKNOWN(default);BIRTHDAY;BIRTHDAY_ACCOUNT| 
 |placeId|String|associated place id information| 
 |accountId|String|associated contact id information for birthday| 
 |file|binary|binary associated photo may be multiple| 



 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"evtcreate", 
   "feed":{ 
     "startDate":"2011-04-01T08:00:00.00Z", 
     "modifDate":"2011-07-28T13:00:36.88Z", 
     "text":"test ", 
     "pictureURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_2987?", 
     "accountId":"130", 
     "eventId":"144_2151", 
     "placeId":"144_123", 
     "description":"test event description", 
     "eventType":"UNKNOWN", 
     "refPersonId":"110", 
     "comments":[] 
   } 
 } 
        
 </code></pre> 
 The Method response returns the Ievent Feed. 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Delete an Event- _evtdelete_ 

 The method evtdelete enables a logged user to delete an event for a certain eventId. 

 The method returns a boolean. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/evt/delete?eventId=1234 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |eventId|String|eventid information| 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"evtdelete", 
   "feed":"true" 
 }        
 </code></pre> 
 The Method response returns a boolean (TRUE=deleted) 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Comment an Event- _evtcomment_ 

 The method evtcomment enables a logged user to comment an event for a certain eventId. 

 The method returns the comment of the event feed. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/evt/comment?eventId=144_2153&text=text_here 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |eventId|String|eventid information| 
 |text|String|comment text string shall be url encoded| 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"evtcomment", 
   "feed":{ 
     "modifDate":"2011-07-28T13:10:10.26Z", 
     "text":"élement", 
     "accountId":"130", 
     "commentId":"144_2011_2153_766" 
   } 
 }       
 </code></pre> 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get Event- _evtget_ 

 The method evtget enables a logged user to get an event for a certain eventId. 

 The method returns the Ievents feed (note that if a parameter does not appear it shall be consider as empty) 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/evt/get?eventId=1234 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |eventId|String|eventid information| 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"evtget", 
   "feed":{ 
     "startDate":"2011-04-01T08:00:00.00Z", 
     "modifDate":"2011-07-28T13:12:47.00Z", 
     "text":"test ", 
     "pictureURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_2990?", 
     "accountId":"130", 
     "eventId":"144_2154", 
     "placeId":"144_123", 
     "description":"test event description", 
     "eventType":"UNKNOWN", 
     "refPersonId":"110", 
     "comments":[] 
   } 
 }   
 </code></pre> 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get Event for certain Place- _evtgetbyplace_ 

 The method evtgetbyplace enables a logged user to get a list of event for a certain placeId. 

 The method returns the list of Ievents feed corresponding to the placeId(note that if a parameter does not appear it shall be consider as empty) 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/evt/getbyplace?placeId=144_123 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |placeId|String|Id of the place| 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"evtgetbyplace", 
   "feed":[ 
     { 
       "startDate":"2011-04-01T08:00:00.00Z", 
       "modifDate":"2011-07-28T12:58:53.00Z", 
       "text":"test ", 
       "accountId":"130", 
       "eventId":"144_2147", 
       "placeId":"144_123", 
       "description":"test event description", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-04-01T08:00:00.00Z", 
       "modifDate":"2011-07-28T13:10:10.00Z", 
       "text":"test ", 
       "pictureURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_2988?", 
       "accountId":"130", 
       "eventId":"144_2153", 
       "placeId":"144_123", 
       "description":"test event description", 
       "eventType":"UNKNOWN", 
       "refPersonId":"110", 
       "comments":[ 
         { 
           "modifDate":"2011-07-28T13:08:59.00Z", 
           "text":"hellowolrd from test API", 
           "accountId":"130", 
           "commentId":"144_2011_2153_765" 
         },{ 
           "modifDate":"2011-07-28T13:10:10.00Z", 
           "text":"élement", 
           "accountId":"130", 
           "commentId":"144_2011_2153_766" 
         } 
       ] 
     },{ 
       "startDate":"2011-04-01T08:00:00.00Z", 
       "modifDate":"2011-07-28T13:12:47.00Z", 
       "text":"test ", 
       "pictureURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_2990?", 
       "accountId":"130", 
       "eventId":"144_2154", 
       "placeId":"144_123", 
       "description":"test event description", 
       "eventType":"UNKNOWN", 
       "refPersonId":"110", 
       "comments":[] 
     } 
   ] 
 }   
 </code></pre> 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get Event List- _evtlist_ 

 The method evtlist enables a logged user to get a list of events. 

 The method returns the list of Ievents feed. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/evt/list? 

 *Parameters*: 

 No parameters in this method 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"evtlist", 
   "feed":[ 
     { 
       "startDate":"2011-04-11T17:00:00.00Z", 
       "modifDate":"2011-06-09T13:10:54.00Z", 
       "text":"Dinner at Gran Pa", 
       "accountId":"130", 
       "eventId":"144_95", 
       "description":"", 
       "endDate":"2011-04-11T21:00:00.00Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-07-07T03:31:38.00Z", 
       "modifDate":"2011-07-07T03:31:59.00Z", 
       "text":"Hf", 
       "accountId":"131", 
       "eventId":"144_607", 
       "description":"", 
       "endDate":"2011-07-07T04:31:38.00Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-07-07T03:37:55.00Z", 
       "modifDate":"2011-07-07T03:38:16.00Z", 
       "text":"Gfbk", 
       "accountId":"131", 
       "eventId":"144_617", 
       "description":"", 
       "endDate":"2011-07-07T04:37:55.00Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-07-11T14:56:52.00Z", 
       "modifDate":"2011-07-28T06:59:25.00Z", 
       "text":"Gffffd ", 
       "accountId":"131", 
       "eventId":"144_743", 
       "description":"Hhhhh", 
       "endDate":"2011-07-12T15:56:52.00Z", 
       "eventType":"UNKNOWN", 
       "comments":[ 
         { 
           "modifDate":"2011-07-11T10:12:21.00Z", 
           "text":"hhhh", 
           "accountId":"131", 
           "commentId":"144_2011_743_182" 
         } 
       ] 
     },{ 
       "startDate":"2011-07-11T12:59:18.00Z", 
       "modifDate":"2011-07-11T12:59:27.00Z", 
       "text":"Gffffgg", 
       "accountId":"131", 
       "eventId":"144_753", 
       "description":"", 
       "endDate":"2011-07-11T13:59:18.00Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-07-26T03:49:17.00Z", 
       "modifDate":"2011-07-26T03:50:00.00Z", 
       "text":"", 
       "accountId":"130", 
       "eventId":"144_1866", 
       "description":"", 
       "endDate":"2011-07-26T04:49:17.00Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-04-01T08:00:00.00Z", 
       "modifDate":"2011-07-28T13:12:47.00Z", 
       "text":"test ", 
       "pictureURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_2990?", 
       "accountId":"130", 
       "eventId":"144_2154", 
       "placeId":"144_123", 
       "description":"test event description", 
       "eventType":"UNKNOWN", 
       "refPersonId":"110", 
       "comments":[] 
     } 
   ] 
 }  
 </code></pre> 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizApiUnattendedException|un|500|Unexpected Server Error| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get Event List for specific interval- _evtlistinterval_ 

 The method evtlistinterval enables a logged user to get a list of events for a certain interval. 

 The method returns the list of Ievents feed. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/evt/listinterval?from=2011-04-01T08%3A00&to=2011-05-01T08%3A00 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |from|String|Start Date of the interval containing an ISO-8601 formatted date/time| 
 |to|String|End Date of the interval containing an ISO-8601 formatted date/time| 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"evtlistinterval", 
   "feed":[ 
     { 
       "startDate":"2011-04-01T08:00:00Z", 
       "modifDate":"2011-07-28T08:30:07Z", 
       "text":"test event title", 
       "accountId":"130", 
       "eventId":"144_2135", 
       "description":"test event description", 
       "endDate":"2011-04-01T09:00:00Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-04-01T08:00:00Z", 
       "modifDate":"2011-07-28T08:40:32Z", 
       "text":"test event title", 
       "accountId":"130", 
       "eventId":"144_2136", 
       "description":"test event description", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     }, 
     } 
   ] 
 }  
 </code></pre> 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizApiUnattendedException|un|500|Unexpected Server Error| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get Event List for specific month- _evtlistmonth_ 

 The method evtlistmonth enables a logged user to get a list of events for a certain month. 

 The method returns the list of Ievents feed. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/evt/listmonth?date=2011-06-01T08%3A00 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |from|String|Current Date of the selected month (if empty current month)| 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"evtlistmonth", 
   "feed":[ 
     { 
       "startDate":"2011-07-01T14:06:15.000Z", 
       "modifDate":"2011-07-01T14:06:45.000Z", 
       "text":"Working", 
       "accountId":"130", 
       "eventId":"144_383", 
       "placeId":"144_84", 
       "description":"", 
       "endDate":"2011-07-01T15:06:15.000Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-07-01T14:07:21.000Z", 
       "modifDate":"2011-07-01T14:07:56.000Z", 
       "text":"Méditation", 
       "accountId":"130", 
       "eventId":"144_384", 
       "description":"", 
       "endDate":"2011-07-02T15:07:21.000Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     }, 
     } 
   ] 
 }  
 </code></pre> 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizApiUnattendedException|un|500|Unexpected Server Error| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get Event List for specific week- _evtlistweek_ 

 The method evtlistweek enables a logged user to get a list of events for a certain week. 

 The method returns the list of Ievents feed. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/evt/listweek?date=2011-07-01T08%3A00 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |from|String|Current Date of the selected month (if empty current week)| 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"evtlistmonth", 
   "feed":[ 
     { 
       "startDate":"2011-07-01T14:06:15.000Z", 
       "modifDate":"2011-07-01T14:06:45.000Z", 
       "text":"Working", 
       "accountId":"130", 
       "eventId":"144_383", 
       "placeId":"144_84", 
       "description":"", 
       "endDate":"2011-07-01T15:06:15.000Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-07-01T14:07:21.000Z", 
       "modifDate":"2011-07-01T14:07:56.000Z", 
       "text":"Méditation", 
       "accountId":"130", 
       "eventId":"144_384", 
       "description":"", 
       "endDate":"2011-07-02T15:07:21.000Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-07-05T16:00:00.000Z", 
       "modifDate":"2011-07-06T02:56:04.000Z", 
       "text":"Aa", 
       "accountId":"133", 
       "eventId":"144_535", 
       "description":"", 
       "endDate":"2011-07-06T16:00:00.000Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     }, 
     } 
   ] 
 }  
 </code></pre> 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizApiUnattendedException|un|500|Unexpected Server Error| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. List a number of X events from a certain event- _evtnavigate_ 

 The method evtlistnavigate enables a logged user to get a list of X events from a certain event id . 

 The method returns the list of Ievents feed. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/evt/navigate?eventId=144_383&offset=10 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |eventid|String|Start Event Id from the list| 
 |offset|String|Number of subsequent additional event from the start evend id. Offset may be negative to display X previous events| 

 *Response*: 
 <pre><code class="javascript"> 
 "cn":"evtnavigate", 
   "feed":[ 
     { 
       "startDate":"2011-07-01T14:07:21.000Z", 
       "modifDate":"2011-07-01T14:07:56.000Z", 
       "text":"Méditation", 
       "accountId":"130", 
       "eventId":"144_384", 
       "description":"", 
       "endDate":"2011-07-02T15:07:21.000Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-07-05T16:00:00.000Z", 
       "modifDate":"2011-07-06T02:56:04.000Z", 
       "text":"Aa", 
       "accountId":"133", 
       "eventId":"144_535", 
       "description":"", 
       "endDate":"2011-07-06T16:00:00.000Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     },{ 
       "startDate":"2011-07-05T22:00:00.000Z", 
       "modifDate":"2011-07-05T16:41:21.000Z", 
       "text":"Work", 
       "accountId":"130", 
       "eventId":"144_534", 
       "description":"", 
       "endDate":"2011-07-05T22:00:00.000Z", 
       "eventType":"UNKNOWN", 
       "comments":[] 
     }, 
     } 
   ] 
 }  
 </code></pre> 


 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizApiUnattendedException|un|500|Unexpected Server Error| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 




 


 h1. Activity Wall - wall 

 The Activity Wall Api is used to access and manage posts appearing on the wall part of the home page. 

 h2. Posts of all family members - _wallactivityById_ 

 TODO: add documentation 

 h2. Last post of a family member - _wallactivityget_ 

 TODO: add documentation 

 h2. Wall posts by post id - _wallbyids_ 

 TODO: add documentation 

 h2. Add comment to a Wall post - _wallcomment_ 

 TODO: add documentation 

 h2. Delete a Wall post - _walldelete_ 

 TODO: add documentation 

 h2. ? - _walletags_ 

 TODO: add documentation 

 h2. Get Wall posts with filters - _wallget_ 

 TODO: add documentation 

 h2. Get last post of given type by family member - _walllastbyaccount_ 

 TODO: add documentation 

 h2. Number of posts by family member - _wallnewById_ 

 The method retrieves the number of posts for each family member. 

 *Parameters*: 

 _No parameters_ for this method 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"wallnewById", 
   "feed":{ 
     "133":"0", 
     "4125":"0", 
     "2253":"0", 
     "me":"3", 
     "131":"3", 
     "130":"0", 
     "3647":"0", 
     "3831":"0", 
     "all":"3" 
   } 
 } 
 </code></pre> 

 The response lists the number of posts for each family member, in a property named after the account id of each family member. In addition, the number of posts of the user is also returned in the property "me", and the total of posts of the family and the property "all". 

 h2. ? - _wallnotification_ 

 TODO: add documentation 

 h2. Publish a status on the wall - _wallpublish_ 

 TODO: add documentation 

 h2. Publish a post on the wall - _wallpublishref_ 

 TODO: add documentation 


 h1. Messaging - msg 

 The messaging API is used to access the messaging section, retrieve the message list, add a new message, edit or delete a conversation... In order to access the messaging API,  

 the client shall be already logged and authenticated with a valid session using the log method detailed above.  

 h2. Messaging thread list- _msglistThread_ 

 The method msglistThread enables a logged user to retrieve all the conversation threads lists of his account. To date the method returns the entire list without any limit. In  

 next version of the method, the client will be able to limit the number of threads returns in the list by sending the number of threads present in the list. 

 The method returns the list of thread sorted by date, the most recent being the first of the date. 

 By sending an HTTP request http://www.familywall.com/preprod/api?a01call=msglistThread 

 *Parameters*: 

 _No parameters_ for this method 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "a01":{ 
     "r":{ 
       "r":[ 
         { 
           "nbMessage":"2", 
           "lastMessage":{ 
             "mediaIds":[], 
             "fromId":"130", 
             "creationDate":"2011-07-07T08:40:01.00Z", 
             "text":"Kid", 
             "toIdsArray":[ 
               "131", 
               "133" 
             ], 
             "read":"true", 
             "threadToken":"1310004700795", 
             "messageId":"800" 
           } 
         },{ 
           "nbMessage":"2", 
           "lastMessage":{ 
             "mediaIds":[], 
             "fromId":"130", 
             "creationDate":"2011-07-07T07:50:34.00Z", 
             "text":"", 
             "toIdsArray":[ 
               "131", 
               "130", 
               "133" 
             ], 
             "read":"true", 
             "threadToken":"1310025034708", 
             "messageId":"793" 
           } 
         } 
       ] 
     }, 
     "cn":"msglistThread" 
   } 
 } 
        
 </code></pre> 
 The Method response returns the list of thread conversations separated by a _','_ structured as followed: 

 <pre> 
          { 
           "nbMessage":"2",      _(number of messages in the thread)_ 
           "lastMessage":{       _(last message)_ 
             "mediaIds":[],       _(message url)_ 
             "fromId":"130",      _(sender profileid, to get name retreive in prfgetprofile)_ 
             "creationDate":"2011-07-07T07:50:34.00Z", _(message creation date in UTC format - offset shall be calculated with offset)_ 
             "text":"My message text here", _(Text message)_ 
             "toIdsArray":[ _(list of recipient profile id to get name retreive in prfgetprofile)_ 
               "131", 
               "130", 
               "133" 
             ], 
             "read":"true", _(boolean read=true, unread=false)_ 
             "threadToken":"1310025034708", _(thread tokenid, parameters for getthread)_ 
             "messageId":"793" _(id of the last message)_ 
           } 
 </pre> 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FiZClassId|un|501|User is not logged| 


 h2. Messaging threadview- _msggetthread_ 

 The method _msggetthread_ allows the client to display the content of the conversation 

 The method returns the list of message sorted by date, the most recent being the first of the date. 

 By sending an HTTP request http://stagingapi.familywall.com/api/msg/getthread?threadToken=1310004700795 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |threadToken|String|threadToken Information| 
 |Read|Boolean|optional value (default false) to set as read or not the thread| 

 *Response*: 
 <pre><code class="javascript"> 
 parseResponse({ 
   "cn":"msggetthread", 
   "feed":[ 
     { 
       "mediaIds":[], 
       "fromId":"130", 
       "creationDate":"2011-07-07T08:40:01.00Z", 
       "text":"Kid", 
       "toIdsArray":[ 
         "131", 
         "133" 
       ], 
       "read":"true", 
       "threadToken":"1310004700795", 
       "messageId":"800" 
     },{ 
       "mediaIds":[], 
       "fromId":"131", 
       "creationDate":"2011-07-07T02:11:40.00Z", 
       "text":"Keshui", 
       "toIdsArray":[ 
         "131", 
         "130", 
         "133" 
       ], 
       "read":"false", 
       "threadToken":"1310004700795", 
       "messageId":"787" 
     } 
   ] 
 }); 
 </code></pre> 

 The Method response returns the list of messages in a conversation separated by a _','_ structured as followed: 



 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Messaging thread list- _msglistThread_ 

 The method msglistThread enables a logged user to retrieve all the conversation threads lists of his account. To date the method returns the entire list without any limit. In  

 next version of the method, the client will be able to limit the number of threads returns in the list by sending the number of threads present in the list. 

 The method returns the list of thread sorted by date, the most recent being the first of the date. 

 By sending an HTTP request http://www.familywall.com/preprod/api?a01call=msglistThread 

 *Parameters*: 

 _No parameters_ for this method 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "a01":{ 
     "r":{ 
       "r":[ 
         { 
           "nbMessage":"2", 
           "lastMessage":{ 
             "mediaIds":[], 
             "fromId":"130", 
             "creationDate":"2011-07-07T08:40:01.00Z", 
             "text":"Kid", 
             "toIdsArray":[ 
               "131", 
               "133" 
             ], 
             "read":"true", 
             "threadToken":"1310004700795", 
             "messageId":"800" 
           } 
         },{ 
           "nbMessage":"2", 
           "lastMessage":{ 
             "mediaIds":[], 
             "fromId":"130", 
             "creationDate":"2011-07-07T07:50:34.00Z", 
             "text":"", 
             "toIdsArray":[ 
               "131", 
               "130", 
               "133" 
             ], 
             "read":"true", 
             "threadToken":"1310025034708", 
             "messageId":"793" 
           } 
         } 
       ] 
     }, 
     "cn":"msglistThread" 
   } 
 } 
        
 </code></pre> 
 The Method response returns the list of thread conversations separated by a _','_ structured as followed: 

 <pre> 
          { 
           "nbMessage":"2",      _(number of messages in the thread)_ 
           "lastMessage":{       _(last message)_ 
             "mediaIds":[],       _(message url)_ 
             "fromId":"130",      _(sender profileid, to get name retreive in prfgetprofile)_ 
             "creationDate":"2011-07-07T07:50:34.00Z", _(message creation date in UTC format - offset shall be calculated with offset)_ 
             "text":"My message text here", _(Text message)_ 
             "toIdsArray":[ _(list of recipient profile id to get name retreive in prfgetprofile)_ 
               "131", 
               "130", 
               "133" 
             ], 
             "read":"true", _(boolean read=true, unread=false)_ 
             "threadToken":"1310025034708", _(thread tokenid, parameters for getthread)_ 
             "messageId":"793" _(id of the last message)_ 
           } 
 </pre> 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 

 |*Error Code*|*Type*|*Value*|*Description*| 
 |FiZClassId|un|501|User is not logged| 


 h2. Messaging count- _msgcount_ 

 The method _msgcount_ allows the client to display the number of messages    after a certain date (by default the last login date) 

 The method returns the total number of messages received after a date, the number of new messages as well as the number of unread messages.  

 By sending an HTTP request http://stagingapi.familywall.com/api/msg/count? 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |date|date|date to calculate the message received after the date YYYY-MM-DDThh:mm:ss| 

 *Response*: 
 <pre><code class="javascript"> 
 parseResponse({ 
   "cn":"msgcount", 
   "feed":{ 
     "total":"38",/*total number of messages*/ 
     "newUnread":"0",/*total number of new messages*/ 
     "unread":"30",/*total number of unread messages*/ 
     "date":"2011-07-07T14:51:17.29Z"/*date of the last login*/ 
   } 
 }); 
 </code></pre> 

 The Method response returns the list of messages in a conversation separated by a _','_ structured as followed: 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Messaging count by user- _msgcountbyUser_ 

 The method _msgcountbyUser_ calculates the number of messages of different type sorted by userId (by default the last login date) 

 The method returns the total number of messages received after a date, the number of new messages as well as the number of unread messages.  

 By sending an HTTP request http://stagingapi.familywall.com/api/msg/countByUser? 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |date|date|date from which starts the messages count - format 8601 | 

 *Response*: 
 <pre><code class="javascript"> 
 parseResponse({ 
   "cn":"msgcountByUser", 
   "feed":{ 
     "133":{/*ProfileId*/ 
       "total":"22", 
       "newUnread":"0", 
       "unread":"19", 
       "date":"2011-07-07T15:28:32.22Z" 
     }, 
     "131":{/*ProfileId*/ 
       "total":"16", 
       "newUnread":"0", 
       "unread":"11", 
       "date":"2011-07-07T15:28:32.22Z" 
     } 
   } 
 }); 
 </code></pre> 

 The Method response returns the list of messages in a conversation separated by a _','_ structured as followed: 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Deleting a message- _msgdelete_ 

 The method enables to delete a message of certain id. 

 By sending an HTTP request http://stagingapi.familywall.com/api/msg/delete?messageId=123244 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |messageid|string|message id number| 

 *Response*: 
 <pre><code class="javascript"> 
 TBD 
 </code></pre> 

 The Method response returns a boolean *True* (in case of success). 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Deleting a message thread- _msgdeleteThread_ 

 The method enables to delete a thread of messages of certain id. 

 By sending an HTTP request http://stagingapi.familywall.com/api/msg/deleteThread?threadToken=threadtokenid 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |threadtokenid|string|tokenid number| 

 *Response*: 
 <pre><code class="javascript"> 
 TBD 
 </code></pre> 

 The Method response returns a boolean *True* (in case of success). 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Reading a message- _msgget_ 

 The method enables to read a message of certain id. 

 By sending an HTTP request http://stagingapi.familywall.com/api/msg/get?messageId=messageid 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |messageid|string|messageid number| 

 *Response*: 
 <pre><code class="javascript"> 
 parseResponse({ 
   "cn":"msgget", 
   "feed":{ 
     "mediaIds":[], 
     "fromId":"130", 
     "creationDate":"2011-07-08T17:26:59.00Z", 
     "text":"Hshhd", 
     "toIdsArray":[ 
       "782" 
     ], 
     "read":"true", 
     "threadToken":"1310146015861", 
     "messageId":"130_926" 
   } 
 }); 
 </code></pre> 

 The Method response returns the message content . 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h2. Last Send Message- _msggetlastbysender_ 

 The method returns the last message sent to the logged-in account by the given accountId. 

 By sending an HTTP request http://stagingapi.familywall.com/api/msg/getlastbysender?accountId=accountid 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |accountid|string|accountid number| 

 *Response*: 
 <pre><code class="javascript"> 
 parseResponse({ 
   "cn":"msggetlastbysender", 
   "feed":{ 
     "mediaIds":[], 
     "fromId":"130", 
     "creationDate":"2011-07-08T17:26:59.00Z", 
     "text":"Hshhd", 
     "toIdsArray":[ 
       "782" 
     ], 
     "read":"true", 
     "threadToken":"1310146015861", 
     "messageId":"130_926" 
   } 
 }); 
 </code></pre> 

 The Method response returns the last message (may be null) sent by the given accountId. 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Change Read status of a specific thread- _msgmarkThread_ 

 The method change a thread as read or as unread. 

 By sending an HTTP request http://stagingapi.familywall.com/api/msg/markThread?threadToken=1310146015861&read=true 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |threadToken|String|threadToken Information| 
 |Read|Boolean|value to set as read or not the thread| 


 *Response*: 
 <pre><code class="javascript"> 
 parseResponse({ 
   "cn":"msgmarkThread", 
   "feed":"true" 
 }); 
 </code></pre> 

 The Method response returns a Boolean (always true). 

 In case, the method encounter any error, the response is an exeception with specific parameters detailed below. 

 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Sending a message- _msgsend_ 

 The method send a new message to a recipient user as well as reply or forward an existing thread. 

 By sending an HTTP request http://stagingapi.familywall.com/api/send?to=accountid&toName=dad&text=test%20%20message 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |to|String|Recipient Account Id may be multiple separated by "," or ";". may be empty| 
 |toName|String|Recipient Account Id may be multiple separated by "," or ";" may be empty| 
 |threadToken|String|associate a thread messageid in case of a forward or a reply| 
 |text|string|text of the message| 
 |file|binary or url|value to set as read or not the thread| 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"msgsend", 
   "feed":{ 
     "mediaIds":[], 
     "fromId":"130", 
     "creationDate":"2011-07-27T14:57:28.52Z", 
     "text":"test message", 
     "toIdsArray":[ 
       "131" 
     ], 
     "read":"true", 
     "threadToken":"1311778648525", 
     "pictureURIs":[], 
     "messageId":"130_4486" 
   } 
 } 
 </code></pre> 

 The Method response returns a Imessage 
 The displayName of targets separated by "," or ";" (may be empty) 
 The accountIds of the target of the message (may be empty) 
 The threadtoken of the message we are replying, forwarding, null if simple new message. In case, the method encounter any error, the response is an exeception with specific  

 parameters detailed below. 

 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizMessageInvalidRecipient|ex|100|Invalid recipient| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 



 h2. Sending a message to the family- _msgsendfamily_ 

 The method send a message to whole the family. 

 By sending an HTTP request http://stagingapi.familywall.com/api/msg/sendfamily?threadToken=1311778737613&text=helloworld 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |threadToken|String|associate a thread messageid in case of a forward or a reply| 
 |text|string|text of the message| 
 |file|binary or url|value to set as read or not the thread| 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"msgsendfamily", 
   "feed":{ 
     "mediaIds":[], 
     "fromId":"130", 
     "creationDate":"2011-07-27T15:03:03.63Z", 
     "text":"helloworld", 
     "toIdsArray":[ 
       "133", 
       "131", 
       "1704", 
       "1705", 
       "1706" 
     ], 
     "read":"true", 
     "threadToken":"1311778737613", 
     "pictureURIs":[], 
     "messageId":"130_4490" 
   } 
 } 
 </code></pre> 

 The Method response returns a Imessage 

 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h1. Location - loc 

 The location API is used to retrieve and publish a location of a member or multiple member. The API needs to be used in addition to POI which defines the place management.... In  

 order to access the API, the client shall be already logged and authenticated with a valid session using the log method detailed above.  

 h2. locate by place- _locgetbyplace_ 

 The method locgetbyplace enables a logged user to retrieve all the users whom last checked in is defined on a the target placeId. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/loc/getbyplace?placeId=144_807 

 *Parameters*: 

 |*Name*|*Type*|*Description*| 
 |placeId|String|PlaceId of the Place where you want to list the members who have their last check in in| 


 The method returns the list of accounts with the information on the place_id. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"locgetbyplace", 
   "feed":[ 
     { 
       "modifDate":"2011-07-27T09:25:26.000Z", 
       "accountId":"130",/* Match Account Id*/ 
       "placeId":"144_807", 
       "address":{ 
         "latitudeE6":"48824623", 
         "attribute3ZipCode":"92310", 
         "attribute2Town":"Sèvres", 
         "attribute0Country":"France", 
         "attribute4Line":"Chemin de Halage", 
         "radius":"292", 
         "formattedAddress":"Chemin de Halage, 92310 Sèvres, France", 
         "longitudeE6":"2228993", 
         "accuracy":"5", 
         "attribute1State":"Île-de-France" 
       }, 
       "moveType":"IN"/* May be IN or OUT*/ 
     } 
   ] 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get last positions- _locgetpositions_ 

 The method locgetposition enables a logged user to retrieve all the last position of family members. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/loc/getpositions? 

 *Parameters*: 

 No parameters 


 The method returns the list of accounts with their last location. In case a member is not in the list, this means that he has never checked in. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"locgetpositions", 
   "feed":[ 
     { 
       "modifDate":"2011-07-27T09:25:26.000Z", 
       "accountId":"130", 
       "placeId":"144_807", 
       "address":{ 
         "latitudeE6":"48824623", 
         "attribute3ZipCode":"92310", 
         "attribute2Town":"Sèvres", 
         "attribute0Country":"France", 
         "attribute4Line":"Chemin de Halage", 
         "radius":"292", 
         "formattedAddress":"Chemin de Halage, 92310 Sèvres, France", 
         "longitudeE6":"2228993", 
         "accuracy":"5", 
         "attribute1State":"Île-de-France" 
       }, 
       "moveType":"IN" 
     },{ 
       "modifDate":"2011-07-27T07:41:07.000Z", 
       "accountId":"131", 
       "placeId":"144_759", 
       "address":{ 
         "latitudeE6":"24950000", 
         "attribute3ZipCode":"231", 
         "attribute2Town":"Sindian District", 
         "attribute0Country":"Taiwan", 
         "attribute4Line":"", 
         "radius":"5502", 
         "formattedAddress":"Sindian District, Xinbei City, Taiwan 231", 
         "longitudeE6":"121533333", 
         "accuracy":"5", 
         "attribute1State":"" 
       }, 
       "moveType":"IN" 
     },{ 
       "modifDate":"2011-07-27T09:35:57.000Z", 
       "accountId":"133", 
       "placeId":"144_782", 
       "address":{ 
         "latitudeE6":"40759199", 
         "attribute3ZipCode":"10111", 
         "attribute2Town":"New York", 
         "attribute0Country":"United States", 
         "attribute4Line":"16 W 51st St", 
         "radius":"306", 
         "formattedAddress":"16 W 51st St, New York, NY 10111, USA", 
         "longitudeE6":"-73977651", 
         "accuracy":"5", 
         "attribute1State":"New York" 
       }, 
       "moveType":"IN" 
     } 
   ] 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get last positions- _locpublishaddress_ 

 The method locpublishaddress enables a logged user to post a publish by entering an address, a text and a picture. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/loc/publishaddress? 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |text|String|text of the checkin| 
 |address|string|address of the check in street,city,county,state,country| 
 |file|binary or url|files to attach with the check in| 


 The method returns the iLocation feed. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"locpublishaddress", 
   "feed":{ 
     "modifDate":"2011-08-01T15:29:20.396Z", 
     "creationDate":"2011-08-01T15:29:20.395Z", 
     "text":"test",*/text of the publish*/ 
     "accountId":"130",*/Account Id of the Author*/ 
     "refId":"144_1324", 
     "pictureURIs":[ 
       "http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_4693?"*/Small Google Map centered on the address*/ 
     ], 
     "comments":[], 
     "wallMessageId":"144_6890",*/Reference Id of the wall id*/ 
     "refType":"PLACE_IN"*/Place In Information/* 
   } 
 } 
 </code></pre> 



 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Publish a Place Location Event- _locpublishplacelocation_ 

 The method locpublishplacelocation publish a check in in a selected location. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/loc/publishauto? 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |geocodedAddress.accuracy|String|accuracy of the address (0 if a country, 5 if a precise address with street number)| 
 |geocodedAddress.attribute0Country|string|Country where the address is| 
 |geocodedAddress.attribute1State|string|State where the address is| 
 |geocodedAddress.attribute2Town|string|Town where the address is| 
 |geocodedAddress.attribute3ZipCode|string|Zipcode where the address is| 
 |geocodedAddress.attribute4Line|string|line of the address (ex : 3 st-james street)| 
 |geocodedAddress.formattedAddress|string|the well formatted address latitude as an int| 
 |geocodedAddress.latitudeE6|string|the well formatted address latitude as an int (* 1 000 000)| 
 |geocodedAddress.longitudeE6|string|the well formatted address longitude as an int (* 1 000 000)| 
 |geocodedAddress.radius|string|the radius of the place in meter| 
 |file|binary or url|files to attach with the check in| 


 The method returns the iLocation feed. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   TBD 
   } 
 } 
 </code></pre> 



 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h2. Locate with GPS Position- _locpublishauto_ 

 The method locpublishaddress publishes the location without writing anything on the wall 
 it will detect if the position is inside a POI according to radius of the POIe. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/loc/publishaddress ? 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |text|String|Text associatedto the check in| 
 |placeId|String|PlaceId of the Place where the user wants to check in| 
 |moveType|String|IN,OUT,AUTO action on the place| 
 |file|binary or url|files to attach with the check in| 



 The method returns the iwall feed. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"locpublishplacelocation", 
   "feed":{ 
     "modifDate":"2011-08-01T16:30:00.629Z", 
     "creationDate":"2011-08-01T16:30:00.629Z", 
     "text":"test checkin from API", 
     "accountId":"130", 
     "refId":"144_807", 
     "pictureURIs":[], 
     "comments":[], 
     "wallMessageId":"144_6926", 
     "refType":"PLACE_IN" 
   } 
 } 
 </code></pre> 



 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h1. Point Of interest- POI 

 The poi API is used to manage the Point of interest entered by the member of the family.  

 h2. Get POI List- _poigetall_ 

 The method poigetall enables a logged user to retreive all the POI shared by the family 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/poi/getall? 

 *Parameters*: 

 No parameters necessary for this method 


 The method returns the list of POI Ipoi. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"poigetall", 
   "feed":[ 
     { 
       "isTemporary":"true",/*Is Temporary is used for temporary location suchas phone location*/ 
       "accountId":"133",/*Author of the POi*/ 
       "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_5790?",/*Url address of the google map*/ 
       "placeTips":[],/*associated tip*/ 
       "placeId":"144_1453",/*Unique Id of the place*/ 
       "address":{/*Geocoding information*/ 
         "latitudeE6":"48824623", 
         "attribute3ZipCode":"92310", 
         "attribute2Town":"Sèvres", 
         "attribute0Country":"France", 
         "attribute4Line":"Chemin de Halage", 
         "radius":"230", 
         "formattedAddress":"Chemin de Halage, 92310 Sèvres, France", 
         "longitudeE6":"2228993", 
         "accuracy":"5",/*Accuracy please see Google Map documentation*/ 
         "attribute1State":"Île-de-France" 
       }, 
       "name":"Chemin de Halage 92310 Sèvres France",/*Name of the place*/ 
       "pictureURIs":[],/*Define picture of the place*/ 
       "placeType":"UNKNOWN"/*Type of the place*/ 
     },{ 
       "isTemporary":"true", 
       "accountId":"133", 
       "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_8631?", 
       "placeTips":[], 
       "placeId":"144_1856", 
       "address":{ 
         "latitudeE6":"48899165", 
         "attribute3ZipCode":"92110", 
         "attribute2Town":"Clichy", 
         "attribute0Country":"France", 
         "attribute4Line":"40 Boulevard Jean Jaurès", 
         "radius":"125", 
         "formattedAddress":"40 Boulevard Jean Jaurès, 92110 Clichy, France", 
         "longitudeE6":"2307130", 
         "accuracy":"5", 
         "attribute1State":"Île-de-France" 
       }, 
       "name":"40 Boulevard Jean Jaurès 92110 Clichy France", 
       "pictureURIs":[], 
       "placeType":"UNKNOWN" 
       } 
      
     } 
   ] 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizApiUnattendedException|un|500|Unattended Exception| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h2. Get POI - _poiget_ 

 The method poiget enables a logged user to retreive a poi with a specific placeId. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/poi/get?placeId=144_1453 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |placeId|String|Place Id of the POI queried| 


 The method returns the POI information Iplace. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"poiget", 
   "feed":{ 
     "isTemporary":"true", 
     "accountId":"133", 
     "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_5790?", 
     "placeTips":[], 
     "placeId":"144_1453", 
     "address":{ 
       "latitudeE6":"48824623", 
       "attribute3ZipCode":"92310", 
       "attribute2Town":"Sèvres", 
       "attribute0Country":"France", 
       "attribute4Line":"Chemin de Halage", 
       "radius":"230", 
       "formattedAddress":"Chemin de Halage, 92310 Sèvres, France", 
       "longitudeE6":"2228993", 
       "accuracy":"5", 
       "attribute1State":"Île-de-France" 
     }, 
     "name":"Chemin de Halage 92310 Sèvres France", 
     "pictureURIs":[], 
     "placeType":"UNKNOWN" 
   } 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizApiUnattendedException|un|500|Unattended Exception| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h2. Create a POI - _poicreate_ 

 The method poicreate enables a logged user to create a poi. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/poi/create?placeId=144_1453 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |name|String|Name of the POI - required field| 
 |geocodedAddress.accuracy|String|accuracy of the address (0 if a country, 5 if a precise address with street number)| 
 |geocodedAddress.attribute0Country|string|Country where the address is| 
 |geocodedAddress.attribute1State|string|State where the address is| 
 |geocodedAddress.attribute2Town|string|Town where the address is| 
 |geocodedAddress.attribute3ZipCode|string|Zipcode where the address is| 
 |geocodedAddress.attribute4Line|string|line of the address (ex : 3 st-james street)| 
 |geocodedAddress.formattedAddress|string|the well formatted address latitude as an int| 
 |geocodedAddress.latitudeE6|string|the well formatted address latitude as an int (* 1 000 000)| 
 |geocodedAddress.longitudeE6|string|the well formatted address longitude as an int (* 1 000 000)| 
 |geocodedAddress.radius|string|the radius of the place in meter| 
 |placeType|String Value|Place Type UNKNOWN,SPORT,SCHOOL,HOME,SHOPPING,MUSIC,PARK,WORK| 
 |contactId|String|contact Id of the contact linked to the place (e.g. Place of Mr. Smith)| 
 |text|String|text describing the place| 
 |picture|binary or url|multiples files to attach with a place| 


 The method returns the POI information Iplace. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"poicreate", 
   "feed":{ 
     "isTemporary":"true", 
     "accountId":"133", 
     "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_5790?", 
     "placeTips":[], 
     "placeId":"144_1453", 
     "address":{ 
       "latitudeE6":"48824623", 
       "attribute3ZipCode":"92310", 
       "attribute2Town":"Sèvres", 
       "attribute0Country":"France", 
       "attribute4Line":"Chemin de Halage", 
       "radius":"230", 
       "formattedAddress":"Chemin de Halage, 92310 Sèvres, France", 
       "longitudeE6":"2228993", 
       "accuracy":"5", 
       "attribute1State":"Île-de-France" 
     }, 
     "name":"Chemin de Halage 92310 Sèvres France", 
     "pictureURIs":[], 
     "placeType":"UNKNOWN" 
   } 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizApiUnattendedException|un|500|Unattended Exception| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h2. Create a simple POI - _poicreatesimple_ 

 The method poicreatesimple enables a logged user to rcreate a simple Place with no geocode information necessary (typicaly createsimple is used by web cl. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/poi/createsimple?placeId=144_1453 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |name|String|Name of the POI - required field| 
 |address|String|Full Address number street,zipcode,town,country or free form. Address will then be geocoded using google| 
 |placeType|String Value|Place Type UNKNOWN,SPORT,SCHOOL,HOME,SHOPPING,MUSIC,PARK,WORK| 
 |contactId|String|contact Id of the contact linked to the place (e.g. Place of Mr. Smith)| 
 |text|String|text describing the place| 
 |picture|binary or url|multiples files to attach with a place| 


 The method returns the POI information Iplace. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"poicreatesimple", 
   "feed":{ 
     "isTemporary":"false", 
     "accountId":"130", 
     "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_11588?", 
     "placeTips":[], 
     "placeId":"144_2008", 
     "address":{ 
       "latitudeE6":"48878318", 
       "attribute3ZipCode":"75017", 
       "attribute2Town":"Paris", 
       "attribute0Country":"France", 
       "attribute4Line":"36 Rue Brunel", 
       "radius":"125", 
       "formattedAddress":"36 Rue Brunel, 75017 Paris, France", 
       "longitudeE6":"2287954", 
       "accuracy":"5", 
       "attribute1State":"Île-de-France" 
     }, 
     "name":"my place", 
     "pictureURIs":[], 
     "placeType":"WORK" 
   } 
  } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizApiUnattendedException|un|500|Unattended Exception| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. POI Update - _poiupdate_ 

 The method poiupdate a logged user to update a simple Place with no geocode information necessary . 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/poi/update 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |placeId|String|Id of the place to be updated| 
 |name|String|Name of the POI - required field| 
 |address|String|Full Address number street,zipcode,town,country or free form. Address will then be geocoded using google| 
 |placeType|String Value|Place Type UNKNOWN,SPORT,SCHOOL,HOME,SHOPPING,MUSIC,PARK,WORK| 
 |contactId|String|contact Id of the contact linked to the place (e.g. Place of Mr. Smith)| 
 |text|String|text describing the place| 
 |picture|binary or url|multiples files to attach with a place| 


 The method returns the POI information Iplace. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"poicreatesimple", 
   "feed":{ 
     "isTemporary":"false", 
     "accountId":"130", 
     "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_11588?", 
     "placeTips":[], 
     "placeId":"144_2008", 
     "address":{ 
       "latitudeE6":"48878318", 
       "attribute3ZipCode":"75017", 
       "attribute2Town":"Paris", 
       "attribute0Country":"France", 
       "attribute4Line":"36 Rue Brunel", 
       "radius":"125", 
       "formattedAddress":"36 Rue Brunel, 75017 Paris, France", 
       "longitudeE6":"2287954", 
       "accuracy":"5", 
       "attribute1State":"Île-de-France" 
     }, 
     "name":"my place", 
     "pictureURIs":[], 
     "placeType":"WORK" 
   } 
  } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizApiUnattendedException|un|500|Unattended Exception| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Create a tip for a POI - _poicreatetip_ 

 The method poicreatetip enables a logged user to create a TIP (textual information attach to POI (e.g. 'entry code is 4353434') Place with a specific PlaceId. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/poi/createtip?placeId=144_1453&text=My%20new%20tip%20from%20API 
 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |placeId|String|Id of the place you want to add a tip| 
 |text|String|text describing the tip| 

 The method returns the POI information IplaceTip. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"poicreatetip", 
   "feed":{ 
     "text":"My new tip from API", 
     "accountId":"130", 
     "placeTipId":"144_1453_202" 
   } 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizApiUnattendedException|un|500|Unattended Exception| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h2. delete a POI - _poidelete_ 

 The method poidelete enables a logged user to delete a Place with a specific PlaceId. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/poi/delete?placeId=144_1453 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |placeId|String|Id of the place you want to add a tip| 

 The method returns a boleean. 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"poidelete", 
   "feed":"true" 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizApiUnattendedException|un|500|Unattended Exception| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. POI Nearby - _poinearby_ 

 The method poinearby enables a logged user to list the POI nearby a certain position express in latitude and longitude. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/poi/nearby?latitudeE6=48825973&longitudeE6=2226752 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |latitudeE6|string|latitude as an int (* 1 000 000)| 
 |longitudeE6|string|longitude as an int (* 1 000 000)| 

 The method returns 2 lists of Iplaces: 
 1-'nearbyPlaces':Ordered by distance named  
 2-'otherPlaces'Ordered by name 

 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"poinearby", 
   "feed":{ 
     "nearbyPlaces":[ 
       { 
         "isTemporary":"true", 
         "accountId":"133", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_8634?", 
         "placeTips":[], 
         "placeId":"144_1858", 
         "address":{ 
           "latitudeE6":"48825973", 
           "attribute3ZipCode":"92310", 
           "attribute2Town":"Sèvres", 
           "attribute0Country":"France", 
           "attribute4Line":"20 Rue Troyon", 
           "radius":"125", 
           "formattedAddress":"20 Rue Troyon, 92310 Sèvres, France", 
           "longitudeE6":"2226752", 
           "accuracy":"5", 
           "attribute1State":"Île-de-France" 
         }, 
         "name":"20 Rue Troyon 92310 Sèvres France", 
         "pictureURIs":[], 
         "placeType":"UNKNOWN" 
       },{ 
         "isTemporary":"true", 
         "accountId":"133", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_8640?", 
         "placeTips":[], 
         "placeId":"144_1862", 
         "address":{ 
           "latitudeE6":"48825973", 
           "attribute3ZipCode":"92310", 
           "attribute2Town":"Sèvres", 
           "attribute0Country":"France", 
           "attribute4Line":"20 Rue Troyon", 
           "radius":"125", 
           "formattedAddress":"20 Rue Troyon, 92310 Sèvres, France", 
           "longitudeE6":"2226752", 
           "accuracy":"5", 
           "attribute1State":"Île-de-France" 
         }, 
         "name":"20 Rue Troyon 92310 Sèvres France", 
         "pictureURIs":[], 
         "placeType":"UNKNOWN" 
       },{ 
         "isTemporary":"true", 
         "accountId":"133", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_8648?", 
         "placeTips":[], 
         "placeId":"144_1866", 
         "address":{ 
           "latitudeE6":"48825973", 
           "attribute3ZipCode":"92310", 
           "attribute2Town":"Sèvres", 
           "attribute0Country":"France", 
           "attribute4Line":"20 Rue Troyon", 
           "radius":"125", 
           "formattedAddress":"20 Rue Troyon, 92310 Sèvres, France", 
           "longitudeE6":"2226752", 
           "accuracy":"5", 
           "attribute1State":"Île-de-France" 
         }, 
         "name":"20 Rue Troyon 92310 Sèvres France", 
         "pictureURIs":[], 
         "placeType":"UNKNOWN" 
       },{ 
         "isTemporary":"true", 
         "accountId":"133", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_8636?", 
         "placeTips":[], 
         "placeId":"144_1859", 
         "address":{ 
           "latitudeE6":"48826060", 
           "attribute3ZipCode":"92310", 
           "attribute2Town":"Sèvres", 
           "attribute0Country":"France", 
           "attribute4Line":"16 Rue Troyon", 
           "radius":"125", 
           "formattedAddress":"16 Rue Troyon, 92310 Sèvres, France", 
           "longitudeE6":"2226413", 
           "accuracy":"5", 
           "attribute1State":"Île-de-France" 
         }, 
         "name":"16 Rue Troyon 92310 Sèvres France", 
         "pictureURIs":[], 
         "placeType":"UNKNOWN" 
       },{ 
         "isTemporary":"true", 
         "accountId":"133", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_8686?", 
         "placeTips":[], 
         "placeId":"144_1904", 
         "address":{ 
           "latitudeE6":"48826060", 
           "attribute3ZipCode":"92310", 
           "attribute2Town":"Sèvres", 
           "attribute0Country":"France", 
           "attribute4Line":"16 Rue Troyon", 
           "radius":"125", 
           "formattedAddress":"16 Rue Troyon, 92310 Sèvres, France", 
           "longitudeE6":"2226413", 
           "accuracy":"5", 
           "attribute1State":"Île-de-France" 
         }, 
         "name":"16 Rue Troyon 92310 Sèvres France", 
         "pictureURIs":[], 
         "placeType":"UNKNOWN" 
       },{ 
         "isTemporary":"true", 
         "accountId":"133", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_8662?", 
         "placeTips":[], 
         "placeId":"144_1882", 
         "address":{ 
           "latitudeE6":"48824270", 
           "attribute3ZipCode":"", 
           "attribute2Town":"Sèvres", 
           "attribute0Country":"France", 
           "attribute4Line":"", 
           "radius":"1997", 
           "formattedAddress":"Sèvres, France", 
           "longitudeE6":"2215421", 
           "accuracy":"5", 
           "attribute1State":"Île-de-France" 
         }, 
         "name":"Sèvres France", 
         "pictureURIs":[], 
         "placeType":"UNKNOWN" 
       } 
     ], 
     "otherPlaces":[ 
       { 
         "isTemporary":"true", 
         "accountId":"130", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_9044?", 
         "placeTips":[], 
         "placeId":"144_1945", 
         "address":{ 
           "latitudeE6":"40742627", 
           "attribute3ZipCode":"10011", 
           "attribute2Town":"New York", 
           "attribute0Country":"United States", 
           "attribute4Line":"153 W 21st St", 
           "radius":"131", 
           "formattedAddress":"153 W 21st St, New York, NY 10011, USA", 
           "longitudeE6":"-73995555", 
           "accuracy":"5", 
           "attribute1State":"New York" 
         }, 
         "name":"153 W 21st St Manhattan, NY 10011 USA", 
         "pictureURIs":[], 
         "placeType":"UNKNOWN" 
       },{ 
         "isTemporary":"true", 
         "accountId":"133", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_9931?", 
         "placeTips":[], 
         "placeId":"144_1970", 
         "address":{ 
           "latitudeE6":"40742627", 
           "attribute3ZipCode":"10011", 
           "attribute2Town":"New York", 
           "attribute0Country":"United States", 
           "attribute4Line":"153 W 21st St", 
           "radius":"131", 
           "formattedAddress":"153 W 21st St, New York, NY 10011, USA", 
           "longitudeE6":"-73995555", 
           "accuracy":"5", 
           "attribute1State":"New York" 
         }, 
         "name":"153 W 21st St Manhattan, NY 10011 USA", 
         "pictureURIs":[], 
         "placeType":"UNKNOWN" 
       },{ 
         "isTemporary":"true", 
         "accountId":"130", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_11229?", 
         "placeTips":[], 
         "placeId":"144_2000", 
         "address":{ 
           "latitudeE6":"48866034", 
           "attribute3ZipCode":"93360", 
           "attribute2Town":"Neuilly-Plaisance", 
           "attribute0Country":"France", 
           "attribute4Line":"10 Rue des Morands", 
           "radius":"125", 
           "formattedAddress":"10 Rue des Morands, 93360 Neuilly-Plaisance, France", 
           "longitudeE6":"2509519", 
           "accuracy":"5", 
           "attribute1State":"Île-de-France" 
         }, 
         "name":"4-10 Rue des Morands 93360 Neuilly-Plaisance France", 
         "pictureURIs":[], 
         "placeType":"UNKNOWN" 
       },{ 
         "isTemporary":"true", 
         "accountId":"133", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_8631?", 
         "placeTips":[], 
         "placeId":"144_1856", 
         "address":{ 
           "latitudeE6":"48899165", 
           "attribute3ZipCode":"92110", 
           "attribute2Town":"Clichy", 
           "attribute0Country":"France", 
           "attribute4Line":"40 Boulevard Jean Jaurès", 
           "radius":"125", 
           "formattedAddress":"40 Boulevard Jean Jaurès, 92110 Clichy, France", 
           "longitudeE6":"2307130", 
           "accuracy":"5", 
           "attribute1State":"Île-de-France" 
         }, 
         "name":"40 Boulevard Jean Jaurès 92110 Clichy France", 
         "pictureURIs":[], 
         "placeType":"UNKNOWN" 
       },{ 
         "isTemporary":"true", 
         "accountId":"133", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_9585?", 
         "placeTips":[], 
         "placeId":"144_1959", 
         "address":{ 
           "latitudeE6":"48899165", 
           "attribute3ZipCode":"92110", 
           "attribute2Town":"Clichy", 
           "attribute0Country":"France", 
           "attribute4Line":"40 Boulevard Jean Jaurès", 
           "radius":"125", 
           "formattedAddress":"40 Boulevard Jean Jaurès, 92110 Clichy, France", 
           "longitudeE6":"2307130", 
           "accuracy":"5", 
           "attribute1State":"Île-de-France" 
         }, 
         "name":"40 Boulevard Jean Jaurès 92110 Clichy France", 
         "pictureURIs":[], 
         "placeType":"UNKNOWN" 
       },{ 
         "isTemporary":"false", 
         "text":"", 
         "accountId":"133", 
         "mapURI":"http:\/\/jeronimo.dnsalias.net\/fiztestdev\/media\/144_9829?", 
         "placeTips":[], 
         "placeId":"144_1968", 
         "address":{ 
           "latitudeE6":"48865498", 
           "attribute3ZipCode":"93360", 
           "attribute2Town":"Neuilly-Plaisance", 
           "attribute0Country":"France", 
           "attribute4Line":"10 Allée de Bruges", 
           "radius":"125", 
           "formattedAddress":"10 Allée de Bruges, 93360 Neuilly-Plaisance, France", 
           "longitudeE6":"2509900", 
           "accuracy":"5", 
           "attribute1State":"Île-de-France" 
         }, 
         "name":"maison Willy", 
         "pictureURIs":[], 
         "placeType":"HOME" 
       }, 
       } 
     ] 
   } 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizApiUnattendedException|un|500|Unattended Exception| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h1. Contact - ctc 

 The Contact API is used to manage the shared contact of the family.    In order to access the API, the client shall be already logged and authenticated with a valid session using  

 the log method detailed above.  

 h2. Get Contact List- _ctclist_ 

 The method ctclist enables a logged user to retrieve all the shared contacts entered by the members. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/ctc/list? 

 *Parameters*: 

 No parameters necessary for this method 


 The method returns the list of contacts Icontacts. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
  { 
   "cn":"ctclist", 
   "feed":[ 
     { 
       "contactId":"144_531",/*Contact unique identifier*/ 
       "accountId":"130",/*Account Id representing the author of the contact*/ 
       "birthDate":"1986-12-01T23:00:00.000Z",/*Birthdate in UTC format*/ 
       "pictureURIs":[],/*Picture of the contact if any, mabe null*/ 
       "firstName":"Boby Joe",/*First name of the contact*/ 
       "displayName":"Gv vffg",/*Display name of the contact*/ 
       "devices":[*/List of devices*/ 
   "devices":[ 
       { 
         "deviceType":"MOBILE",*/device with a mobile Type*/ 
         "value":"014026232", 
         "deviceId":"144_534_634" 
       },{ 
         "deviceType":"EMAIL",*/Email Type entry*/ 
         "value":"email@fr.r", 
         "deviceId":"144_534_635" 
       },{ 
         "deviceType":"PHONE",*/Fix Phone entry*/ 
         "value":"0140263244", 
         "deviceId":"144_534_636" 
       },{ 
         "deviceType":"MOBILE", 
         "value":"0687824772", 
         "deviceId":"144_534_637" 
       } 
     ] 
       ], 
       "addresses":[/*Related Addresses to the contact Please see CTC CreateAPI for more information*/ 
         { 
           "geocodedAddress":{ 
             "latitudeE6":"48856614", 
             "attribute3ZipCode":"61944", 
             "attribute2Town":"Paris", 
             "attribute0Country":"France", 
             "attribute4Line":"", 
             "radius":"7986", 
             "formattedAddress":"Paris, France", 
             "longitudeE6":"2352221", 
             "accuracy":"5", 
             "attribute1State":"Île-de-France" 
           }, 
           "placeType":"HOME", 
           "addressId":"144_531_90" 
         } 
       ] 
     } 
   ] 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizContactAlreadyExistsException|ex|200|Contact already exists| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Get Contact - _ctcget_ 

 The method ctcget enables a logged user to retrieve a contact information with a certain id. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/ctc/get?contactId=144_501 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |contactId|String|Contact Id of the contact queried| 

 The method returns the contact details IContacts. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"ctcget", 
   "feed":{ 
     "contactId":"3084_514", 
     "accountId":"3067", 
     "birthDate":"1970-01-10T23:00:00.000Z", 
     "pictureURIs":[], 
     "firstName":"MQA_11", 
     "displayName":"MQA_11", 
     "devices":[ 
       { 
         "deviceType":"EMAIL", 
         "value":"Family_11@mgsei.com", 
         "deviceId":"3084_514_604" 
       },{ 
         "deviceType":"MOBILE", 
         "value":"13500000011", 
         "deviceId":"3084_514_605" 
       } 
     ], 
     "addresses":[] 
   } 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h2. Create Contact - _ctccreate_ 

 The method ctccreate enables a logged user to create a contact. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/ctc/create 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |firstName|String|Firstname of the contact (Firstname shall be not null if Lastname is null)| 
 |lastName|String|Lastname of the contact (Lastname shall be not null if Firstname is null)| 
 |function|String|Function defines the type of contact such as baby-sitter or cousin| 
 |Gender|String|Gender of the contact (masculine or feminine)| 
 |Birthdate|String|Contact Birthday, string containing an ISO-8601 formatted date/time.If it contains a time zone (not recommended), it will be converted to user time zone in utc| 
 |Picture|Binary|Binary file picture or URL information| 
 |devices|String|Generic device of the contact (maybe email or mobile phone number). Format will be detected by the server and automatically labeled)| 
 |mobiles|String|Mobile device (note that Work and Home type will be added soon to this API)| 
 |phone|String|phone device (note that Work and Home type will be added soon to this API)| 
 |addresses|String|address input may contain number street,town,zipcode,country (Server checks the address using google API and reformat. To date the API uses the first matches used by google API. Next version will proposes the ability to enter an address with no check or asking for reformating )| 
 |adressesType|String|address type used to provide the type of location entered and the associated Icon (UNKNOWN,HOME,SPORT,SCHOOL,MUSIC,PARK,WORK,SHOPPING)| 

 The method returns the contact details IContacts. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"ctccreate", 
   "feed":{ 
     "lastName":"smith", 
     "contactId":"144_537", 
     "accountId":"130", 
     "gender":"MASCULINE", 
     "birthDate":"2011-04-01T08:00:00.000Z", 
     "pictureURIs":[], 
     "firstName":"john", 
     "displayName":"john smith", 
     "devices":[ 
       { 
         "deviceType":"EMAIL", 
         "value":"test@fr.fr", 
         "deviceId":"144_537_642" 
       },{ 
         "deviceType":"PHONE", 
         "value":"010101010101", 
         "deviceId":"144_537_643" 
       },{ 
         "deviceType":"MOBILE", 
         "value":"06736546436", 
         "deviceId":"144_537_644" 
       } 
     ], 
     "addresses":[ 
       { 
         "geocodedAddress":{ 
           "latitudeE6":"48239816", 
           "attribute3ZipCode":"36925", 
           "attribute2Town":"York", 
           "attribute0Country":"United States", 
           "attribute4Line":"4th Ave", 
           "radius":"2252", 
           "formattedAddress":"4th Ave, Surrey, ND, USA", 
           "longitudeE6":"-101057796", 
           "accuracy":"5", 
           "attribute1State":"North Dakota" 
         }, 
         "placeType":"UNKNOWN", 
         "addressId":"144_537_93" 
       } 
     ] 
   } 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizContactAlreadyExistsException|ex|200|Contact already exists| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 


 h2. Update Contact - _ctcupdate_ 

 The method ctcupdate enables a logged user to update a contact with a specific contactid. The method enable the user to override the information already entered for a certain  

 contact.  

 By sending an HTTP request http://stagingapi.familywall.com/api/api/ctc/update 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |contactId|String|Contact Id that will be updated| 
 |firstName|String|Firstname of the contact (Firstname shall be not null if Lastname is null)| 
 |lastName|String|Lastname of the contact (Lastname shall be not null if Firstname is null)| 
 |function|String|Function defines the type of contact such as baby-sitter or cousin| 
 |Gender|String|Gender of the contact (masculine or feminine)| 
 |Birthdate|String|Contact Birthday, string containing an ISO-8601 formatted date/time.If it contains a time zone (not recommended), it will be converted to user time zone in  

 utc| 
 |Picture|Binary|Binary file picture or URL information| 
 |devices|String|Generic device of the contact (maybe email or mobile phone number). Format will be detected by the server and automatically labeled)| 
 |mobiles|String|Mobile device (note that Work and Home type will be added soon to this API)| 
 |phone|String|phone device (note that Work and Home type will be added soon to this API)| 
 |addresses|String|address input may contain number street,town,zipcode,country (Server checks the address using google API and reformat. To date the API uses the first matches  

 used by google API. Next version will proposes the ability to enter an address with no check or asking for reformating )| 
 |adressesType|String|address type used to provide the type of location entered and the associated Icon (UNKNOWN,HOME,SPORT,SCHOOL,MUSIC,PARK,WORK,SHOPPING)| 
 |adresseids|String|adresseid to remove from to the contact| 
 |deviceids|String|deviceid to remove from to the contact| 

 The method returns the contact details IContacts. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"ctcupdate", 
   "feed":{ 
     "lastName":"smith", 
     "contactId":"144_537", 
     "accountId":"130", 
     "gender":"MASCULINE", 
     "birthDate":"2011-04-01T08:00:00.000Z", 
     "pictureURIs":[], 
     "firstName":"john", 
     "displayName":"john smith", 
     "devices":[ 
       { 
         "deviceType":"EMAIL", 
         "value":"test@fr.fr", 
         "deviceId":"144_537_642" 
       },{ 
         "deviceType":"PHONE", 
         "value":"010101010101", 
         "deviceId":"144_537_643" 
       },{ 
         "deviceType":"MOBILE", 
         "value":"06736546436", 
         "deviceId":"144_537_644" 
       } 
     ], 
     "addresses":[ 
       { 
         "geocodedAddress":{ 
           "latitudeE6":"48239816", 
           "attribute3ZipCode":"36925", 
           "attribute2Town":"York", 
           "attribute0Country":"United States", 
           "attribute4Line":"4th Ave", 
           "radius":"2252", 
           "formattedAddress":"4th Ave, Surrey, ND, USA", 
           "longitudeE6":"-101057796", 
           "accuracy":"5", 
           "attribute1State":"North Dakota" 
         }, 
         "placeType":"UNKNOWN", 
         "addressId":"144_537_93" 
       } 
     ] 
   } 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizContactAlreadyExistsException|ex|200|Contact already exists| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method| 

 h2. Delete Contact - _ctcdelete_ 

 The method ctcdelete enables a logged user to delete a contact information with a certain id or a series of Ids. 

 By sending an HTTP request http://stagingapi.familywall.com/api/api/ctc/delete?contactId=144_501 

 *Parameters*: 
 |*Name*|*Type*|*Description*| 
 |contactId|String|Contact Id of the contact queried| 

 The method returns a boleean as a result. 


 *Response*: 
 <pre><code class="javascript"> 
 { 
   "cn":"ctcdelete", 
   "feed":"true" 
 } 
 </code></pre> 


 *Error*: 
 |*Error Code*|*Type*|*Value*|*Description*| 
 |FizMediaQuotaExceededException|ex|601|Media Quota exceedded| 
 |FizAccountNotFoundInSessionException|un|501|Session is invalid| 
 |FizApiInvalidParameterException|un|502|invalid token| 
 |FizApiModelDoesNotExistException|un|503|Object does not exists| 
 |FizApiModelRightException|un|504|Right exception to use this method|