[[:dev|Developer Reference]] / [[dev:api|AOS API Document]] / Contact Manager ====== AOS Contact Manager - RFC ====== \\ Date: 2 August 2001\\ Available: 21 August 2001\\ Revised: 21 August 2001\\ Revised: July 2007\\ Status: Draft\\ Compliant to AOS API Version: AOS 2.0b1\\ Web: http://www.afteroffice.com/dev/api/contact.html\\ By fui@afteroffice.com\\ ---------------------------------------------------------------------------------------- **Revision**\\ 8/21/2001 Correction to the use for "lastnick" while saving record.\\ 25/7/2007 Added creation and modification date/time.\\ 10/18/2007 Added uid support, discountinued lastnick/nick as record reference and added custom field support.\\ ---------------------------------------------------------------------------------------- **Description**\\ Retrieve Contact manager raw data and performing editing tasks.\\ **Index**\\ 1. [[dev:api:contact#openabook.abook.mms|openabook.abook.mms]]: Obtain Contact list\\ 2. [[dev:api:contact#saverec.abook.mms|saverec.abook.mms]]: Save contact information\\ 3. [[dev:api:contact#delrec.abook.mms|delrec.abook.mms]]: Delete contact record\\ 4. [[dev:api:contact#|ext_fld.abook.mms]]: Set/get custom fields\\ ---------------------------------------------------------------------------------------- ==== openabook.abook.mms ==== **Command:** [SID].openabook.abook.mms\\ Use: Obtain Contact list\\ Access: HTTP\\ Method: POST and GET\\ Parameters case sensitive: NO\\ Where: [SID] = the user login session ID\\ **Result:**\\ Multiple-lines records, each line is a contact record\\ **Parameters:** ^Key ^Mandatory ^Description ^Sample^ |api |Yes |Indicate the http query is for API, only 1 argument accepted: "LC" |lc| |file |No |The contact file name (not supported yet) |mycontact| |sp |No |Record seperator (default "UNIX"). Supported: "UNIX", "DOS", "MAC" |MAC| |fieldHeader |No |"yes" to include the field headers as first line, empty to void. |yes| **Contact record structure:**\\ Each record seperate by a CR, field seperate by TAB. Line break in field indicate with "\r"\\ ^Field No. ^Field name ^Format ^Description ^Sample^ |1 |nick |String |The shortcut of the name (nickname), no space allow |jd| |2 |name |String |Name |John Dill| |3 |email |String |Email Address. MIME supported |jd@domain.com| |4 |addr |String |Postal Address |33, Acme Street, PD| |5 |city |String |City |DS| |6 |zip |String |Zip Code |36002| |7 |country |String |Country |US| |8 |state |String |State |AL| |9 |company |String |Company |Acme Co.| |10 |job |String |Job title |Manager| |11 |dept |String |Department |Sales| |12 |tel1 |String |Telephone Number |+5555555| |13 |tel2 |String |Telephone Number |+5555556| |14 |fax1 |String |Fax Number |+5555557| |15 |fax2 |String |Fax Number |+5555558| |16 |mobile |String |Mobile phone number |+5555559| |17 |pager |String |Pager number |+5555551-555| |18 |web |String |Web site URL |http://www.acme.com| |19 |rmk |String |Remark |Nice| |20 |crdate |String |The date time when the record being created |7/29/2007 11:20 AM| |21 |mddate |String |The date time when the record being modified |7/29/2007 11:28 AM| ---------------------------------------------------------------------------------------- ==== saverec.abook.mms ==== **Command:** [SID].saverec.abook.mms\\ Use: Save contact record\\ Access: HTTP\\ Method: POST and GET\\ Parameters case sensitive: NO\\ Where: [SID] = the user login session ID\\ **Parameters:** ^Key ^Mandatory ^Description ^Sample^ |api |Yes |Indicate the http query is for API, only 1 argument accepted: "LC" |lc| |uid |No |The record ID to update. You can leave this empty to create a new record, the ID will be automatically assigned by the Contact Manager. You can also provide a none-exist ID in order to create a new record with it. |23| |file |No |The contact file name (not supported yet) |mycontact| |[Recrod Structure] |Yes |Refer to Contact record structure above |-| **Result:**\\ true or false.\\ ---------------------------------------------------------------------------------------- ==== delrec.abook.mms ==== **Command:** [SID].delrec.abook.mms\\ Use: Delete contact record\\ Access: HTTP\\ Method: POST and GET\\ Parameters case sensitive: NO\\ Where: [SID] = the user login session ID\\ **Parameters:**\\ ^Key ^Mandatory ^Description ^Sample^ |api |Yes |Indicate the http query is for API, only 1 argument accepted: "LC" |lc| |uid |Yes |The ID to delete. |23| **Result:**\\ true or false.\\ ---------------------------------------------------------------------------------------- ==== ext_fld.abook.mms ==== **Command:** [SID].ext_fld.abook.mms\\ Use: Set or get the custom fields or extended fields\\ Access: HTTP\\ Method: POST and GET\\ Parameters case sensitive: NO\\ Where: [SID] = the user login session ID\\ **Parameters:** ^Key ^Mandatory ^Description ^Sample^ |api |Yes |Indicate the http query is for API, only 1 argument accepted: "LC" |lc| |fld |No |The custom fields name to set, each field name seperated by a comma ",".\\ If fld is empty, the existing custom field set will be returned.\\ If you would like to update the custom fields, the _update parameter must be set properly. |myfield,test_fld| |_update |No |If this is set to "checked", the fld will be saved. Or else it will be ignored. |checked| **Result:**\\ the existing custom field.