Hello, When using the "updated-min" and "showdeleted=true" query parameters, you will be able to sync your database with updates from the Contacts API. Deleted contacts will have an additional <gd:deleted<http://code.google.com/apis/gdata/docs/2.0/elements.html#gdDeleted>/> element indicating that those were deleted since the last sync.
Best, Alain On Tue, Sep 6, 2011 at 10:50 AM, Justin Giesbrecht <[email protected]>wrote: > Hi Alain, thank you for your response to my message. > > My question comes as when trying to determine which contacts got > *deleted* inside Gmail Contacts... so I can sync my DB and delete the > contact inside my DB. > I can send queries to Google no problem, it seems to be when I want to > receive the deleted contacts to update my database that seems to be > the problem. > > > On Sep 5, 11:35 am, Alain Vongsouvanh <[email protected]> wrote: > > Hello, > > > > Please see my answers inline: > > > > On Fri, Sep 2, 2011 at 5:04 PM, Justin Giesbrecht <[email protected] > >wrote: > > > > > > > > > > > > > > > > > > > > > Hello, > > > I am using PHP + Zend to gain access to Gmail's Contacts. > > > I am able to retrieve everything just well... I am able to add and > > > update contacts as well. > > > > > The problem i'm having is when I try to receive contacts to find out > > > which were 'deleted' from Gmail. > > > > > And According to this > > > > >http://code.google.com/googleapps/domain/shared_contacts/gdata_shared. > .. > > > > > With the HINT: > > > *** Hint: To track incremental changes to a domain shared contact > > > list, do the following: When you send a request for a feed, keep track > > > of the value of the feed's <updated> element. Then you can later > > > retrieve only the domain shared contacts that have changed since the > > > previous request by setting the query parameter updated-min to that > > > <updated> value, and setting showdeleted to true. *** > > > > > Here is a small version of my code: > > > $query = new Zend_Gdata_Query(' > http://www.google.com/m8/feeds/contacts/ > > > default/full'); > > > > You are not requesting the Domain Shared Contacts feed but the current > > user's contacts. Also, please use SSL (https) over non-SSL (http) > whenever > > possible. > > > > > > > > > > > > > > > > > > > > > $query->maxResults = $maxResults; > > > > > if($updatedMin != NULL) { > > > $query->setParam('updated-min', $updatedMin); > > > $query->setParam('showdeleted', 'true'); > > > $query->setParam('requirealldeleted', 'true'); > > > $query->setParam('orderby', 'lastmodified'); > > > > > And when I ADD a contact in Gmail, and then DELETE it in Gmail, it > > > will show up under the > > > $xml = simplexml_load_string($entry->getXML()); > > > $obj = new stdClass; > > > > > $obj->gmailUrl = rawurlencode($entry->id); > > > *** This will show, DELETED = TRUE > > > $obj->delete = (string) $xml->groupMembershipInfo['deleted']; > > > > The "deleted" attribute under gContact:groupMembershipInfo is to tell > client > > applications that the specified groupMembershipInfo has been removed for > the > > contact (e.g the contact does not belong to the group anymore). > > > > > > > > > But when I add a contact using the POST XML version, and the contact > > > then goes into "Other Contacts"... > > > > By default, when creating a contact without any > gContact:groupMembershipInfo > > element, the contact will be added into the "Other Contacts" group (which > > groups all the contacts). To add a contact to the "My Contacts" group, > you > > will first have to query the Contact Groups feed to retrieve the atom ID > of > > the "My Contacts" group and add a gContact:groupMembershipInfo element to > > the contact to be created. > > > > > If I then go and DELETE that contact I just added INSIDE gmail, > > > $obj->delete = (string) $xml->groupMembershipInfo['deleted']; > > > WILL == NULL > > > > > And then even if I go and MOVE that contact to MY CONTACTS and make an > > > UPDATE to the contact, and show the DELETE... it will show up... > > > > Not sure I understand what you mean here. If you want to delete a > contact, > > simply send a DELETE request to the contact's edit link. > > > > Best, > > Alain > > > > Is there any other method, or am I stuck big time? > > > > > Any help on trying to retrieve information on deleted contacts would > > > be great!! > > > Thank you in advance! > > > > > -- > > > You received this message because you are subscribed to the Google > > > Groups "Google Contacts, Shared Contacts and User Profiles APIs" group. > > > To post to this group, send email to > > > [email protected] > > > To unsubscribe from this group, send email to > > > [email protected] > > > For more options, visit this group at > > >http://code.google.com/apis/contacts/community/forum.html > > > > -- > > Alain Vongsouvanh > > -- > You received this message because you are subscribed to the Google > Groups "Google Contacts, Shared Contacts and User Profiles APIs" group. > To post to this group, send email to > [email protected] > To unsubscribe from this group, send email to > [email protected] > For more options, visit this group at > http://code.google.com/apis/contacts/community/forum.html > -- Alain Vongsouvanh -- You received this message because you are subscribed to the Google Groups "Google Contacts, Shared Contacts and User Profiles APIs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://code.google.com/apis/contacts/community/forum.html
