fullName = contact.get("Full_Name"); email = contact.get("Email"); phone = contact.get("Mobile"); mobile = contact.get("Phone"); address = contact.get("Service_Address"); ginput = Map(); ginput.put("names",{{"givenName":fullName}}); if(email != null) { ginput.put("emailAddresses",{{"value":email}}); } if(mobile != null) { ginput.put("phoneNumbers",{{"value":mobile}}); } if(phone != null) { if(ginput.containKey("phoneNumbers")) { phonenumberList = ginput.get("phoneNumbers").toList(); phonenumberList.add({"value":phone}); ginput.put("phoneNumbers",phonenumberList); } else { ginput.put("phoneNumbers",{{"value":phone}}); } } if(address != null) { ginput.put("addresses",{{"city":address.get("City"),"country":address.get("Country"),"postalCode":address.get("Zip_Code"),"streetAddress":address.get("Street_1")}}); } if(contact.get("Custom_Field_ID") != null) { googleContactId = contact.get("Custom_Field_ID"); personFields = {"personFields":"names,phoneNumbers"}; getGcontactInfo = invokeurl [ url :"https://people.googleapis.com/v1/" + googleContactId type :GET parameters:personFields headers:Map() connection:"Connection_Name" ]; if(getGcontactInfo != null && getGcontactInfo.get("etag") != null) { etagid = getGcontactInfo.get("etag"); ginput.put("etag",etagid); gUpdateResp = invokeurl [ url :"https://people.googleapis.com/v1/" + googleContactId + ":updateContact?updatePersonFields=names,addresses,phoneNumbers,emailAddresses" type :PATCH parameters:ginput.toString() headers:Map() connection:"Connection_Name" ]; info gUpdateResp; } else { gcontactresp = invokeurl [ type :POST parameters:ginput.toString() headers:Map() connection:"Connection_Name" ]; if(gcontactresp != null && gcontactresp.get("resourceName") != null) { googleResourceName = gcontactresp.get("resourceName"); updatedResp = zoho.fsm.updateRecord("Contacts",contact.get("id"),{"Custom_Field_ID":googleResourceName}); info updatedResp; } } } else { gcontactresp = invokeurl [ type :POST parameters:ginput.toString() headers:Map() connection:"Connection_Name" ]; if(gcontactresp != null && gcontactresp.get("resourceName") != null) { googleResourceName = gcontactresp.get("resourceName"); updatedResp = zoho.fsm.updateRecord("Contacts",contact.get("id"),{"Custom_Field_ID":googleResourceName}); info updatedResp; } } |