Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Google Calendar API - no invites sent out during insert + event not visible in non-gmail-account

I'm currently implementing the insert-function from the google-calendar-api (api reference) but after creating the event successfully, it never shows up on non-gmail-accounts (such as [email protected]). This is also true when testing with the api-explorer. It only silently appears in gmail-accounts.

I've set sendNotifications to true and sendUpdates to all. No invite is sent out and yes, I've checked the spam-directory. I'm sitting at this problem for some days now and it just boggles my mind that this isn't working. The service is currently unusable as I can't event add attendees with non-gmail-addresses.

I've been following the documentation, tried the api-explorer and also tested the node.js-library as well as plain http-requests.

As said, the invite/non-gmail-accounts won't even work with the api-explorer. How can this bug be fixed?


Edit 1: The function in Typescript that calls the corresponding api. oAuth2Client gets initialized correctly. googleapis is version 48.0.0. The start and end times are correctly formatted strings, as the event gets created successfully but without a notification.

export async function createGoogleCalendarEntry(
  uid: string,
  props: CreateGoogleCalendarEntryProps,
  context: CallableContext
): Promise<CreateCalendarEntryRes<CreateGoogleCalendarEntryRes>> {
  const { title, start, end, attendees, desc } = props;

  const oAuth2Client = await getAuthnAuthzGcpOAuth2ClientFromCallableContext(uid, context, c => c.gcp!);

  return google
    .calendar({ version: "v3", auth: oAuth2Client })
    .events.insert({
      calendarId: "primary",
      sendUpdates: "all",
      sendNotifications: true,
      requestBody: {
        summary: title,
        description: desc,
        start: { dateTime: start },
        end: { dateTime: end },
        attendees: attendees.map(a => ({ email: a.mail }))
      }
    })
    .then(res => ({
      provider: "google",
      externalCalId: res.data.id!,
      meta: res.data as CreateGoogleCalendarEntryRes
    }));
}
like image 503
flaming.codes Avatar asked Oct 24 '25 21:10

flaming.codes


1 Answers

This appears to be a bug!

I tested this out using the Calendars: Events.insert Try this API functionality and was able to replicate this, so I had a look on Google's Issue Tracker and there is already a report which details the same kind of behaviour:

  • Does not send invitation mails for events created through the "Advanced Calendar" API.

Google does seem to know about this issue but if it's causing problems you can file your own bug about it here.

You can also hit the ☆ next to the issue number in the top left on the aforementioned pages which lets Google know more people are encountering this and so it is more likely to be seen to faster.

like image 159
I hope this is helpful to you Avatar answered Oct 27 '25 00:10

I hope this is helpful to you



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!