The setup:

Account A has a calendar (Cal) shared to everyone on the domain with full rights of "Make Changed and Manage Sharing"

Account B creates an event (Event) on Cal, Event is an all-day event. Attendees may or may not include Account B.

Account B cannot see Event created in the calendar on the web.

Account C can see Event created in the calendar on the web.

Account B and C have the exact same rights to Cal (they have the same Access Permissions and the same Share with specific people settings).

If Account C sends Account B a link to the event, Account B CAN open the link and view the event.

If Account C views Event - the date of Event is "Jun 25, 2019 to Jun 25, 2019." And "All Day" is checked.enter image description here

If Account B views Event - the date of Event is "Jun 25, 2019 to Jun 24, 2019." And "All Day" is checked. (Event is viewed via copy and paste of Event URL, both Account B and Account C are pointed to the exact same URL.) enter image description here

If, however, Account B views Cal on an App or in Outlook with events synced, Account B CAN see Event.

For Account B - I have cleared cache, wiped all chrome data, used a different browser, used a different computer, spun up a fresh VM with clean install. I have deleted Cal, cleared cache et al then added Cal back. I have blocked Account B on Cal - tried to access, then unblocked Account B.

I have checked time-zones. I have checked the computer's date.

I have even used the Google Calendar API to create an even with Account B, set start.date = date(yyyy-MM-dd) and end.date = start.date, but when Account B views Event that Account B created (via URL), the end date is the start date less one day, but when that same Event

Dim te As New [Event] With {.Summary = "Event Title", .Description = "Event Body"}
Dim taskDate As New EventDateTime With {.[Date] = CDate(task.Item("duedate")).ToString("yyyy-MM-dd")}
te.Start = taskDate
te.End = te.Start

Any ideas? Because I have no ideas left.

Update: If Account B opens the event in the iOS or Android Calendar app then clicks "save" without changing the event in any other way, the event will appear on the Google Calendar in a browser.

  • What is the timezone of the shared calendar? What is the time zone of the creator main (own) calendar? How are the calendar synced with Outlook? Commented Jun 5, 2019 at 3:18
  • All calendars and users are US Central time. There is a program that is used to sync. Account B doesn't use outlook generally, I logged in to see if it would show the events there. Account C regularly does though. I don't see how that may affect the way the accounts show the event in a browser.
    – Andrew
    Commented Jun 5, 2019 at 3:27

1 Answer 1


Two part answer here.

1) The Google API for All-Day events requires that the date.end be a day beyond date.start as date.end is an "exclusive" date, not an inclusive date.

See reference here and guide implemented here.

2) This is a known bug that it randomly affects some people but not other people. Google is working on a fix (per email I received, also here a Google Employee comments on it kinda). This only happens when submitting using the Google Calendar API.

Temporary solution - view the Google Calendar in "Schedule" view to see all the events. Can be easily fixed, per event, by editing and toggling "all day event" off then back on.

Maybe someone could make a script that fixes all the "all day" events if they felt like it.

Also, correct code to end.date = start.date + 1 day.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.