This is the Google OAuth verification demo for CrossEvents.
Video:
• Video
What is demonstrated:
1) User-initiated Google Calendar connection from CrossEvents.
2) Availability check (calendar.freebusy).
3) Creating a confirmed booking sync to Google Calendar.
4) Editing the same CrossEvents booking and updating the same Google Calendar event.
5) Canceling/removing a booking and removing/canceling the corresponding Google Calendar event.
6) Scope usage is limited to booking-related calendar operations.
Why calendar.events.owned is required:
CrossEvents only writes/updates/deletes events it created for synchronized bookings. A narrower scope (read-only scopes) cannot create, edit, or delete calendar events, so calendar.events.owned is the minimal write scope needed for this feature.