Read, Copy, and Search "Other contacts"

After you've completed the steps in Get Ready to Use the People API , you are ready to read, copy, and search "Other contacts" data.

The following code samples demonstrate how to send a few simple requests. For a full list of methods, see the reference documentation .

List the user's "Other contacts"

To get a list of people in the user's "Other contacts" , use the following code:

Protocol

 GET 
 /v1/otherContacts?readMask=names,emailAddresses 
 HTTP 
 / 
 1.1 
 Host 
 : 
 people.googleapis.com 

Java

 ListOtherContactsResponse 
  
 response 
  
 = 
  
 peopleService 
 . 
 otherContacts 
 (). 
 list 
 () 
  
 . 
 setReadMask 
 ( 
 "metadata,names,emailAddresses" 
 ) 
  
 . 
 execute 
 (); 
 List<Person 
 > 
  
 otherContacts 
  
 = 
  
 response 
 . 
 getOtherContacts 
 (); 

List the user's "Other contacts" that have changed

Java

 // Initial request 
 ListOtherContactsResponse 
  
 fullSyncResponse 
  
 = 
  
 peopleService 
 . 
 otherContacts 
 (). 
 list 
 () 
  
 . 
 setReadMask 
 ( 
 "metadata,names,emailAddresses" 
 ) 
  
 . 
 setRequestSyncToken 
 ( 
 true 
 ) 
  
 . 
 execute 
 (); 
 // Fetch all the pages 
 while 
  
 ( 
 fullSyncResponse 
 . 
 getNextPageToken 
 () 
  
 != 
  
 null 
 ) 
  
 { 
  
 fullSyncResponse 
  
 = 
  
 peopleService 
 . 
 otherContacts 
 (). 
 list 
 () 
  
 . 
 setReadMask 
 ( 
 "metadata,names,emailAddresses" 
 ) 
  
 . 
 setRequestSyncToken 
 ( 
 true 
 ) 
  
 . 
 setPageToken 
 ( 
 fullSyncResponse 
 . 
 getNextPageToken 
 ()) 
  
 . 
 execute 
 (); 
 } 
 // Some time passes 
 // Fetch incremental changes using the sync token returned in the last fullSyncResponse. 
 try 
  
 { 
  
 ListOtherContactsResponse 
  
 incrementalSyncResponse 
  
 = 
  
 peopleService 
 . 
 otherContacts 
 (). 
 list 
 () 
  
 . 
 setReadMask 
 ( 
 "metadata,names,emailAddresses" 
 ) 
  
 . 
 setSyncToken 
 ( 
 fullSyncResponse 
 . 
 getNextSyncToken 
 ()) 
  
 . 
 execute 
 (); 
  
 for 
  
 ( 
 Person 
  
 person 
  
 : 
  
 incrementalSyncResponse 
 . 
 getOtherContacts 
 ()) 
  
 { 
  
 handlePerson 
 ( 
 person 
 ); 
  
 } 
  
  
 // Fetch all the pages 
  
 while 
  
 ( 
 ! 
 incrementalSyncResponse 
 . 
 getNextPageToken 
 (). 
 isEmpty 
 ()) 
  
 { 
  
 incrementalSyncResponse 
  
 = 
  
 peopleService 
 . 
 otherContacts 
 (). 
 list 
 () 
  
 . 
 setReadMask 
 ( 
 "metadata,names,emailAddresses" 
 ) 
  
 . 
 setSyncToken 
 ( 
 fullSyncResponse 
 . 
 getNextSyncToken 
 ()) 
  
 . 
 setPageToken 
 ( 
 incrementalSyncResponse 
 . 
 getNextPageToken 
 ()) 
  
 . 
 execute 
 (); 
  
 for 
  
 ( 
 Person 
  
 person 
  
 : 
  
 incrementalSyncResponse 
 . 
 getOtherContacts 
 ()) 
  
 { 
  
 handlePerson 
 ( 
 person 
 ); 
  
 } 
  
 } 
 } 
  
 catch 
  
 ( 
 GoogleJsonResponseException 
  
 e 
 ) 
  
 { 
  
 if 
  
 ( 
 e 
 . 
 getStatusCode 
 () 
  
 == 
  
 410 
 ) 
  
 { 
  
 // Sync token expired. Make full sync request. 
  
 } 
 } 
 void 
  
 handlePerson 
 ( 
 Person 
  
 person 
 ) 
  
 { 
  
 if 
  
 ( 
 person 
 . 
 getMetadata 
 (). 
 getDeleted 
 ()) 
  
 { 
  
 // Handle deleted person 
  
 } 
  
 else 
  
 { 
  
 // Handle changed person 
  
 } 
 } 

More details about sync behavior at ListOtherContacts .

Copy an "Other contact" to "myContacts" group

To copy an "Other contact" to "myContacts" group , use the following code:

Protocol

 POST 
 /v1/ resource_name 
:copyOtherContactToMyContactsGroup?copyMask=names,emailAddresses,phoneNumbers 
 HTTP 
 / 
 1.1 
 Host 
 : 
 people.googleapis.com 

Java

 Person 
  
 copiedContact 
  
 = 
  
 peopleService 
  
 . 
 otherContacts 
 () 
  
 . 
 copyOtherContactToMyContactsGroup 
 ( 
  
 " resource_name 
" 
 , 
  
 new 
  
 CopyOtherContactToMyContactsGroupRequest 
 () 
  
 . 
 setCopyMask 
 ( 
 "names,emailAddresses,phoneNumbers" 
 )) 
  
 . 
 execute 
 (); 

Search the user's "Other contacts"

To search all of the user's "Other contacts" , use the following code:

Protocol

 // Warmup cache 
 GET 
  
 / 
 v1 
 / 
 otherContacts 
 : 
 search 
? query 
 = 
& readMask 
 = 
 names 
 , 
 emailAddresses 
  
 HTTP 
 / 
 1.1 
 Host 
 : 
  
 people 
 . 
 googleapis 
 . 
 com 
 // Send search request after several seconds 
 GET 
  
 / 
 v1 
 / 
 otherContacts 
 : 
 search 
? query 
 = 
  query 
 
&readMask = 
 names 
 , 
 emailAddresses 
  
 HTTP 
 / 
 1.1 
 Host 
 : 
  
 people 
 . 
 googleapis 
 . 
 com 

Java

 // Warmup cache 
 SearchResponse 
  
 response 
  
 = 
  
 peopleService 
 . 
 otherContacts 
 (). 
 search 
 () 
  
 . 
 setQuery 
 ( 
 "" 
 ) 
  
 . 
 setReadMask 
 ( 
 "names,emailAddresses" 
 ) 
  
 . 
 execute 
 (); 
 // Wait a few seconds 
 Thread 
 . 
 sleep 
 ( 
 5 
 ); 
 // Send search request 
 SearchResponse 
  
 response 
  
 = 
  
 peopleService 
 . 
 otherContacts 
 (). 
 search 
 () 
  
 . 
 setQuery 
 ( 
 " query 
" 
 ) 
  
 . 
 setReadMask 
 ( 
 "names,emailAddresses" 
 ) 
  
 . 
 execute 
 (); 
Create a Mobile Website
View Site in Mobile | Classic
Share by: