This document summarizes the structure and usage of the Android Contacts Provider for syncing and accessing contact data. It describes the key tables in the Contacts Provider - ContactsContract.Contacts, ContactsContract.RawContacts and ContactsContract.Data. It explains how raw contacts from different sources like Google and Facebook are aggregated into contacts and how applications can query, modify and determine changes to contact data through the Contacts Provider API.