The schema for contacts records, used by Evolution and Akonadi
Main Document
{
"_id": string - unique ID of this document, # internal to CouchDB
"_rev": string - revision_for_this_document, #internal to CouchDB
"record_type": "http://www.freedesktop.org/wiki/Specifications/desktopcouch/contact",
"first_name": string - First name of the contact,
"middle_name": string - Middle name of the contact,
"last_name": string - Last name of the contact,
"title": string - Title of the contact,
"suffix": string - Suffix of the contact,
"birth_date": string - Birth date in YYYY-MM-DD format,
"nick_name": string - Nick name,
"spouse_name": string - Spouse name,
"wedding_date": string - Wedding/Anniversary date in YYYY-MM-DD format,
"company": string - Company name,
"department": string - Department name,
"job_title": string - Job title,
"manager_name": string - Manager name,
"assistant_name": string - Assistant name,
"office": string - Office name,
"notes": string - Notes,
"addresses": mergeable list of {
{
"city": string - City name,
"description": string - "work", "home" or "other",
"address1": string - Street name,
"address2": string - Address extension,
"state": string - State / Region name,
"country": string - Country name,
"postalcode": string - Postal code
}
},
"phone_numbers": mergeable list of {
{
"description": string - "home", "mobile", "home fax", "work", "car", "pager", "work fax", "assistant", "callback", "company", "other", "other fax", "primary", or "telex"
"number": string - Phone number
}
},
"email_addresses": mergeable list of {
{
"description": string - "work", "home" or "other"
"address": string - Email address
}
},
"urls": mergeable list of {
{
"description": string - "blog" or "home page"
"address": string - URL
}
},
"im_addresses": mergeable list of {
{
"address": string - IM user ID
"description": string - Description
"protocol": string - Protocol (aim|gadu-gadu|groupwise|icq|irc|jabber|msn|skype|yahoo)
}
},
"application_annotations": {
"application_name": { ... }
...stuff specific to applications, nobody should rely on these...
},
}
Attachments
- photo: The contact photo. Maximum size 100k. MIME type image/*
Explanation
- Mergeable lists are lists of JSON objects, each of which has a unique identifier
- Dates should be represented in YYYY-MM-DD format