I'm integrating the Google Calendar API using Google.Apis.Calendar.v3 1.49.0.2187 and using the service account as credentials.
When creating a new event, I need to set reminders in advance of the user, in this case I am using the object reminders.overrides [] and setting the method and minutes in advance correctly, however when I invite a participant to this event this reminder is not displayed.
Event even = new Event();
even.Summary = "Test event";
even.Description = "Test event";
even.Created = DateTime.Now;
EventDateTime start = new EventDateTime();
start.DateTime = new DateTime(2021, 1, 18, 18, 00, 00);
EventDateTime end = new EventDateTime();
end.DateTime = new DateTime(2021, 1, 20, 18, 00, 00);
even.Start = start;
even.End = end;
even.GuestsCanInviteOthers = false;
even.GuestsCanModify = false;
even.GuestsCanSeeOtherGuests = false;
even.ColorId = "11";
even.Locked = true;
even.PrivateCopy = true;
even.Visibility = "public";
even.Status = "confirmed";
even.Transparency = "transparent";
even.Creator = new Event.CreatorData()
{
DisplayName = "****",
Email = "****@gmail.com"
};
even.Organizer = new Event.OrganizerData()
{
DisplayName = "****",
Email = "****@gmail.com"
};
even.Source = new Event.SourceData()
{
Title = "****",
Url = "https://****"
};
even.Reminders = new Event.RemindersData()
{
Overrides = EventReminders(),
UseDefault = false
};
List<EventAttendee> eventAttendees = new List<EventAttendee>();
EventAttendee eventAttendee = new EventAttendee();
eventAttendee.Email = "****@gmail.com";
eventAttendee.DisplayName = "Henrique";
eventAttendee.Optional = false;
eventAttendee.ResponseStatus = "accepted";
eventAttendees.Add(eventAttendee);
even.Attendees = eventAttendees;
try
{
var requisicao = service.Events.Insert(even, "calendarId");
requisicao.SendUpdates = EventsResource.InsertRequest.SendUpdatesEnum.All;
requisicao.SendNotifications = true;
var request = requisicao.Execute();
}
catch(Exception ex){ }
Reading the API guide in the https://developers.google.com/calendar/concepts/sharing#private_event_properties section "Not all information is shared among all the event copies. Some properties are private, such as reminders, colorId, transparency, or the extendedProperties.private property. These properties are controlled by the attendee's settings and not by the organizer calendar. ", so I understood that when invite a participant to the event these types of settings are not replicated to this participant.
Would there be any other way to make the reminder display to all participants invited to the event?