ublic static Feed ExecuteGroupBatchRequest(ContactGroupsRequest cr) { // List that holds the batch request entries. List requestFeed = new List(); // Create a Group entry for the retrieve request. Group retrieveContactGroup = new Group(); retrieveContactGroup.Id = "https://www.google.com/m8/feeds/groups/default/private/full/retrieveContactGroupId"; retrieveContactGroup.BatchData = new GDataBatchEntryData("retrieve", GDataBatchOperationType.query); // Create a Group entry for the create request. Group createContactGroup = new Group(); createContactGroup.Title = "Salsa group"; createContactGroup.ExtendedProperties.Add(new ExtendedProperty() { Name = "more info about the group", Value = "Nice people.", }); createContactGroup.BatchData = new GDataBatchEntryData("create", GDataBatchOperationType.insert); // Retrieve the Group entry to update. Group updateContactGroup = cr.Retrieve( new Uri("https://www.google.com/m8/feeds/groups/default/full/updateContactGroupId")); updateContactGroup.Title = "New Group Title"; updateContactGroup.Content = "New Group Content"; updateContactGroup.BatchData = new GDataBatchEntryData("update", GDataBatchOperationType.update); // Retrieve the Group entry to delete. Group deleteContactGroup = cr.Retrieve( new Uri("https://www.google.com/m8/feeds/groups/default/full/deleteContactGroupId")); deleteContactGroup.BatchData = new GDataBatchEntryData("delete", GDataBatchOperationType.delete); // Insert the entries to the batch feed. requestFeed.Add(retrieveContactGroup); requestFeed.Add(createContactGroup); requestFeed.Add(updateContactGroup); requestFeed.Add(deleteContactGroup); // Submit the batch request to the server. Feed responseFeed = cr.Batch(requestFeed, new Uri("https://www.google.com/m8/feeds/groups/default/full/batch"), GDataBatchOperationType.Default); // Check the status of each operation. foreach (Group entry in responseFeed.Entries) { Console.WriteLine(entry.BatchData.Id + ": " + entry.BatchData.Status.Code + " (" + entry.BatchData.Status.Reason + ")"); } return responseFeed; }