Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Getting 'unknown sender' notification when creating google calender event via service account #3576

Open
mster429 opened this issue Oct 15, 2024 · 2 comments

Comments

@mster429
Copy link

const auth = new GoogleAuth({
      scopes: [
        'https://www.googleapis.com/auth/calendar',
        'https://www.googleapis.com/auth/calendar.events'
      ],
      keyFile: './src/serviceaccount.json',
      clientOptions: {
        subject: '[email protected]'
      }
    });

    const calendar = google.calendar({ version: 'v3', auth: auth });

    const apiResponse = await calendar.events.insert({
      calendarId: "[email protected]",
      conferenceDataVersion: 1,
      requestBody: {
        start: {
          dateTime: "2024-10-10T08:00:00+09:00",
        },
        end: {
          dateTime: "2024-10-10T08:30:00+09:00",
        },
        attendees: [{ email: "[email protected]" }, { email: "[email protected]" }],
        summary: 'Test Event',
        description: 'Test Event created',
        guestsCanInviteOthers: true,
        conferenceData: {
          createRequest: {
            requestId: randomUUID(),
            conferenceSolutionKey: {
              type: 'hangoutsMeet'
            }
          }
        },
        reminders: {
          useDefault: false,
          overrides: [],
        },
        guestsCanModify: true,
        visibility: 'default',
      }
    });

I am using the above code to create a calender event using google calender api via google service account. sendUpdates parameter is false so that I don't get any notification via google about the event creation. But when I try this only the first time I am getting the below notification from google and i need to suppress/ disable it and i need help to get this resolved.
unknown_sender
Thanks in advance

@Nondukishor
Copy link

Can you try this one:

const { google } = require('googleapis');
const { GoogleAuth } = require('google-auth-library');
const { randomUUID } = require('crypto');

const auth = new GoogleAuth({
  scopes: [
    'https://www.googleapis.com/auth/calendar',
    'https://www.googleapis.com/auth/calendar.events'
  ],
  keyFile: './src/serviceaccount.json',
  clientOptions: {
    subject: '[email protected]' // User under which the service account will operate
  }
});

const calendar = google.calendar({ version: 'v3', auth: auth });

const apiResponse = await calendar.events.insert({
  calendarId: "[email protected]",
  conferenceDataVersion: 1,
  requestBody: {
    start: {
      dateTime: "2024-10-10T08:00:00+09:00",
    },
    end: {
      dateTime: "2024-10-10T08:30:00+09:00",
    },
    attendees: [{ email: "[email protected]" }, { email: "[email protected]" }],
    summary: 'Test Event',
    description: 'Test Event created',
    guestsCanInviteOthers: true,
    conferenceData: {
      createRequest: {
        requestId: randomUUID(),
        conferenceSolutionKey: {
          type: 'hangoutsMeet'
        }
      }
    },
    reminders: {
      useDefault: false,
      overrides: [],
    },
    guestsCanModify: true,
    visibility: 'default',
  },
  sendUpdates: 'none' // Add this line to suppress notifications
});


@mster429
Copy link
Author

Hi @Nondukishor
This is what was on the official documentation
image
Because we are heavily using the sync webhooks we are not going to use this option

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants
@Nondukishor @mster429 and others