Every calendar, one shape
Every calendar the account can see, with single events, recurring series and their exceptions in a rolling window, from Google Calendar, Microsoft 365 and CalDAV servers.
Calendar in the product overviewScheduling breaks when it can't see the real calendar or write back to it. workwae reads every calendar an account can see, finds free time across attendees and writes events, RSVPs and meeting links straight to Google, Microsoft 365 and CalDAV.
// A weekly 1:1 with a Teams or Meet link
const tz = "America/New_York";
const event = await workwae.calendarEvents.create({
accountId,
calendarId,
subject: "Weekly 1:1",
start: { dateTime: "2026-11-02T10:00:00", timeZone: tz },
end: { dateTime: "2026-11-02T10:30:00", timeZone: tz },
attendees: [{ address: "jordan@example.com" }],
recurrence: ["RRULE:FREQ=WEEKLY;BYDAY=MO"],
onlineMeeting: true,
});
// Answer an invitation from your own UI
await workwae.calendarEvents.respond({
accountId,
eventId: invite.id,
response: "accepted",
});
One event shape for Google Calendar, Microsoft 365 and CalDAV, with the provider differences handled for you.
Every calendar the account can see, with single events, recurring series and their exceptions in a rolling window, from Google Calendar, Microsoft 365 and CalDAV servers.
Calendar in the product overviewGet each attendee's busy blocks and the common free slots in one call, with the slot length, step, working days and hours, and time zone you set.
Calendar in the product overviewCreate, change and delete single events, one occurrence or a whole series, with RFC 5545 recurrence rules, and choose whether attendees hear about it where the provider allows.
Calendar in the product overviewAccept, tentatively accept or decline invitations from your own interface, with an optional comment for the organizer.
Calendar in the product overviewAdd a Teams or Google Meet link, a link you already have, or a Zoom or Webex meeting that workwae creates and keeps in step with the event.
Meetings in the product overviewcalendar_event webhooks for new, changed and deleted events, driven by Google and Microsoft push, name the fields that changed, so availability is never stale.
With Google or Microsoft sign-in, or an IMAP account whose CalDAV server workwae discovers. Approve only the calendar access you need.
Calendars, events and series are synced in a rolling window and kept current with push notifications, with polling as a backstop.
Find common free time, write the event with its meeting link, and react to RSVPs and changes as they happen.
Every use case runs on the same accounts, events and SDK. See all use cases.
Log every rep's email and meetings, send from their own mailbox, and see opens, clicks, bounces and replies.
Bring candidate threads into your ATS and book interviews on real calendars with the meeting link attached.
Turn shared inboxes into tickets with filtered webhooks on new mail, and reply in the thread from the team address.
Give an agent new mail as it arrives, full messages and threads, and drafts a person approves before anything is sent.
We are onboarding a small number of teams. Tell us what you are building.