How to Access, Add, Update or Delete Gmail Contacts inside .NET Apps

This technical tip shows how .NET developers can access, add, update or Delete Gmail contacts inside .NET application. Aspose.Email supports working with Gmail contacts. Using the IGmailClient interface, users can retrieve contacts from a Gmail account, create new contacts, and update as well as delete existing contacts. Gmail allows developers to perform all these using its public developer's API. The following user information is required for working with Gmail contacts: User name, email address, password, client ID, client secret refresh token. This article shows how to access Gmail contacts, create new Gmail contacts, update existing contacts, delete a contact and save contact.
//your code here...Following is a sample application which can be used to access the detail of contacts in all the groups. // C# Code Sample string username = "username"; string email = "email@gmail.com"; string password = "password"; string clientId = "clientid"; string clientSecret = "client secret"; string refresh_token = "refresh token"; //The refresh_token is to be used in below. GoogleTestUser user = new GoogleTestUser( username, email, password, clientId, //client id clientSecret, //client secret refresh_token); //refresh token using (IGmailClient client = Aspose.Email.Google.GmailClient.GetInstance(user.ClientId, user.ClientSecret, user.RefreshToken)) { Contact[] contacts = client.GetAllContacts(); foreach (Contact contact in contacts) Console.WriteLine(contact.DisplayName + ", " + contact.EmailAddresses[0]); //Fetch contacts from a specific group FeedEntryCollection groups = client.FetchAllGroups(); GmailContactGroup group = null; foreach (GmailContactGroup g in groups) switch (g.Title) { case "TestGroup": group = g; break; } //Retrieve contacts from the Group if (group != null) { Contact[] contacts2 = client.GetContactsFromGroup(group); foreach (Contact con in contacts2) Console.WriteLine(con.DisplayName + "," + con.EmailAddresses[0].ToString()); } } } //VB.NET Code Sample Dim username As String = "username" Dim email As String = "email@gmail.com" Dim password As String = "password" Dim clientId As String = "client id" Dim clientSecret As String = "client secret" Dim refresh_token As String = "refresh token" 'The refresh_token is to be used in below. 'client id 'client secret Dim user As New GoogleTestUser(username, email, password, clientId, clientSecret, refresh_token) 'refresh token Using client As IGmailClient = Aspose.Email.Google.GmailClient.GetInstance(user.ClientId, user.ClientSecret, user.RefreshToken) Dim contacts As Contact() = client.GetAllContacts() For Each contact As Contact In contacts Console.WriteLine(contact.DisplayName + ", " + contact.EmailAddresses(0)) Next 'Fetch contacts from a specific group Dim groups As FeedEntryCollection = client.FetchAllGroups() Dim group As GmailContactGroup = Nothing For Each g As GmailContactGroup In groups Select Case g.Title Case "TestGroup" group = g Exit Select End Select Next 'Retrieve contacts from the Group If group IsNot Nothing Then Dim contacts2 As Contact() = client.GetContactsFromGroup(group) For Each con As Contact In contacts2 Console.WriteLine(con.DisplayName + "," + con.EmailAddresses(0).ToString()) Next End If End Using //Creating Gmail Contact //C# Code Sample string username = "newcustomeroffnet"; string email = "newcustomeroffnet@gmail.com"; string password = "visual2010"; string clientId = "633643385868-v64nsvkmh5ca2dlhkroo8941ne92onov.apps.googleusercontent.com"; string clientSecret = "UQ26EXvvo8L12TNhtLtYbHVO"; string refresh_token = "1/yord7s4aqV8t7S_vT9IqlBO60eIE-hY0WHLfqQ9zOCQ"; //The refresh_token is to be used in below. GoogleTestUser user = new GoogleTestUser( username, email, password, clientId, //client id clientSecret, //client secret refresh_token); //refresh token //Gmail Client IGmailClient client = Aspose.Email.Google.GmailClient.GetInstance(user.ClientId, user.ClientSecret, user.RefreshToken, user.EMail); //Create a Contact Contact contact = new Contact(); contact.Prefix = "Prefix"; contact.GivenName = "GivenName"; contact.Surname = "Surname"; contact.MiddleName = "MiddleName"; contact.DisplayName = "Test User 1"; contact.Suffix = "Suffix"; contact.JobTitle = "JobTitle"; contact.DepartmentName = "DepartmentName"; contact.CompanyName = "CompanyName"; contact.Profession = "Profession"; contact.Notes = "Notes"; PostalAddress address = new PostalAddress(); address.Category = PostalAddressCategory.Work; address.Address = "Address"; address.Street = "Street"; address.PostOfficeBox = "PostOfficeBox"; address.City = "City"; address.StateOrProvince = "StateOrProvince"; address.PostalCode = "PostalCode"; address.Country = "Country"; contact.PhysicalAddresses.Add(address); PhoneNumber pnWork = new PhoneNumber(); pnWork.Number = "323423423423"; pnWork.Category = PhoneNumberCategory.Work; contact.PhoneNumbers.Add(pnWork); PhoneNumber pnHome = new PhoneNumber(); pnHome.Number = "323423423423"; pnHome.Category = PhoneNumberCategory.Home; contact.PhoneNumbers.Add(pnHome); PhoneNumber pnMobile = new PhoneNumber(); pnMobile.Number = "323423423423"; pnMobile.Category = PhoneNumberCategory.Mobile; contact.PhoneNumbers.Add(pnMobile); contact.Urls.Blog = "Blog.ru"; contact.Urls.BusinessHomePage = "BusinessHomePage.ru"; contact.Urls.HomePage = "HomePage.ru"; contact.Urls.Profile = "Profile.ru"; contact.Events.Birthday = DateTime.Now.AddYears(-30); contact.Events.Anniversary = DateTime.Now.AddYears(-10); contact.InstantMessengers.AIM = "AIM"; contact.InstantMessengers.GoogleTalk = "GoogleTalk"; contact.InstantMessengers.ICQ = "ICQ"; contact.InstantMessengers.Jabber = "Jabber"; contact.InstantMessengers.MSN = "MSN"; contact.InstantMessengers.QQ = "QQ"; contact.InstantMessengers.Skype = "Skype"; contact.InstantMessengers.Yahoo = "Yahoo"; contact.AssociatedPersons.Spouse = "Spouse"; contact.AssociatedPersons.Sister = "Sister"; contact.AssociatedPersons.Relative = "Relative"; contact.AssociatedPersons.ReferredBy = "ReferredBy"; contact.AssociatedPersons.Partner = "Partner"; contact.AssociatedPersons.Parent = "Parent"; contact.AssociatedPersons.Mother = "Mother"; contact.AssociatedPersons.Manager = "Manager"; //Email Address EmailAddress eAddress = new EmailAddress(); eAddress.Address = "email@gmail.com"; contact.EmailAddresses.Add(eAddress); string contactUri = client.CreateContact(contact); //VB.NET Code Sample Dim username As String = "newcustomeroffnet" Dim email As String = "newcustomeroffnet@gmail.com" Dim password As String = "visual2010" Dim clientId As String = "633643385868-v64nsvkmh5ca2dlhkroo8941ne92onov.apps.googleusercontent.com" Dim clientSecret As String = "UQ26EXvvo8L12TNhtLtYbHVO" Dim refresh_token As String = "1/yord7s4aqV8t7S_vT9IqlBO60eIE-hY0WHLfqQ9zOCQ" 'The refresh_token is to be used in below. 'client id 'client secret Dim user As New GoogleTestUser(username, email, password, clientId, clientSecret, refresh_token) 'refresh token 'Gmail Client Dim client As IGmailClient = Aspose.Email.Google.GmailClient.GetInstance(user.ClientId, user.ClientSecret, user.RefreshToken, user.EMail) 'Create a Contact Dim contact As New Contact() contact.Prefix = "Prefix" contact.GivenName = "GivenName" contact.Surname = "Surname" contact.MiddleName = "MiddleName" contact.DisplayName = "Test User 1" contact.Suffix = "Suffix" contact.JobTitle = "JobTitle" contact.DepartmentName = "DepartmentName" contact.CompanyName = "CompanyName" contact.Profession = "Profession" contact.Notes = "Notes" Dim address As New PostalAddress() address.Category = PostalAddressCategory.Work address.Address = "Address" address.Street = "Street" address.PostOfficeBox = "PostOfficeBox" address.City = "City" address.StateOrProvince = "StateOrProvince" address.PostalCode = "PostalCode" address.Country = "Country" contact.PhysicalAddresses.Add(address) Dim pnWork As New PhoneNumber() pnWork.Number = "323423423423" pnWork.Category = PhoneNumberCategory.Work contact.PhoneNumbers.Add(pnWork) Dim pnHome As New PhoneNumber() pnHome.Number = "323423423423" pnHome.Category = PhoneNumberCategory.Home contact.PhoneNumbers.Add(pnHome) Dim pnMobile As New PhoneNumber() pnMobile.Number = "323423423423" pnMobile.Category = PhoneNumberCategory.Mobile contact.PhoneNumbers.Add(pnMobile) contact.Urls.Blog = "Blog.ru" contact.Urls.BusinessHomePage = "BusinessHomePage.ru" contact.Urls.HomePage = "HomePage.ru" contact.Urls.Profile = "Profile.ru" contact.Events.Birthday = DateTime.Now.AddYears(-30) contact.Events.Anniversary = DateTime.Now.AddYears(-10) contact.InstantMessengers.AIM = "AIM" contact.InstantMessengers.GoogleTalk = "GoogleTalk" contact.InstantMessengers.ICQ = "ICQ" contact.InstantMessengers.Jabber = "Jabber" contact.InstantMessengers.MSN = "MSN" contact.InstantMessengers.QQ = "QQ" contact.InstantMessengers.Skype = "Skype" contact.InstantMessengers.Yahoo = "Yahoo" contact.AssociatedPersons.Spouse = "Spouse" contact.AssociatedPersons.Sister = "Sister" contact.AssociatedPersons.Relative = "Relative" contact.AssociatedPersons.ReferredBy = "ReferredBy" contact.AssociatedPersons.Partner = "Partner" contact.AssociatedPersons.Parent = "Parent" contact.AssociatedPersons.Mother = "Mother" contact.AssociatedPersons.Manager = "Manager" 'Email Address Dim eAddress As New EmailAddress() eAddress.Address = "email@gmail.com" contact.EmailAddresses.Add(eAddress) Dim contactUri As String = client.CreateContact(contact) //Update Gmail Contact //Once a contact is retrieved, its attributes can be updated and the contact can be saved back to the Gmail account. The sample code below retrieves contacts from a Gmail account and then modifies one of these which is then saved back. //C# Code Sample string username = "username"; string email = "email@gmail.com"; string password = "password"; string clientId = "clientid"; string clientSecret = "client secret"; string refresh_token = "refresh token"; //The refresh_token is to be used in below. GoogleTestUser user = new GoogleTestUser(

Url: http://www.aspose.com/docs/display/emailnet/Working+with+Gmail+contacts

Language: C# | User: Sheraz Khan | Created: Dec 17, 2014 | Tags: Access Gmail contacts Using C# Create new Gmail contacts Update existing contacts in .NET Delete a Gmail contact Save Gmail contact .NET outlook email component Aspose.Email for .NET