diff --git a/packages/app-store/googlecalendar/lib/CalendarService.ts b/packages/app-store/googlecalendar/lib/CalendarService.ts index cdf8531033..c4a7b46996 100644 --- a/packages/app-store/googlecalendar/lib/CalendarService.ts +++ b/packages/app-store/googlecalendar/lib/CalendarService.ts @@ -1,6 +1,7 @@ /* eslint-disable @typescript-eslint/no-explicit-any */ import { calendar_v3 } from "@googleapis/calendar"; import type { Prisma } from "@prisma/client"; +import type { GaxiosResponse } from "googleapis-common"; import { OAuth2Client } from "googleapis-common"; import { RRule } from "rrule"; import { v4 as uuid } from "uuid"; @@ -52,6 +53,9 @@ const ONE_MONTH_IN_MS = 30 * MS_PER_DAY; const GOOGLE_WEBHOOK_URL_BASE = process.env.GOOGLE_WEBHOOK_URL || process.env.NEXT_PUBLIC_WEBAPP_URL; const GOOGLE_WEBHOOK_URL = `${GOOGLE_WEBHOOK_URL_BASE}/api/integrations/googlecalendar/webhook`; +const isGaxiosResponse = (error: unknown): error is GaxiosResponse => + typeof error === "object" && !!error && error.hasOwnProperty("config"); + export default class GoogleCalendarService implements Calendar { private integrationName = ""; private auth: ReturnType; @@ -264,7 +268,7 @@ export default class GoogleCalendarService implements Calendar { "primary"; try { - let event; + let event: calendar_v3.Schema$Event | undefined; let recurringEventId = null; if (formattedCalEvent.existingRecurringEvent) { recurringEventId = formattedCalEvent.existingRecurringEvent.recurringEventId; @@ -350,6 +354,11 @@ export default class GoogleCalendarService implements Calendar { iCalUID: event?.iCalUID, }; } catch (error) { + if (isGaxiosResponse(error)) { + // Prevent clogging up the logs with the body of the request + // Plus, we already have this data in error.data.summary + delete error.config.body; + } this.log.error( "There was an error creating event in google calendar: ", safeStringify({ error, selectedCalendar, credentialId })