Skip to main content

Redact Event Titles

What it does: Replaces every event title with "Busy" before syncing, hiding the real event name from the target calendar.

Use case: Share your availability with a scheduling tool or colleague without exposing meeting names or topics.

function gate(event: GateEvent): GateResult {
return { pass: true, transform: { title: 'Busy' } };
}

How It Works

The transform field on the GateResult allows you to replace event properties before they are written to the target calendar. Setting transform.title replaces the event's title while keeping all other properties (time, duration, attendees) intact. The original event in your source calendar is not affected.

Customization

Redact only personal events, pass others through unchanged:

function gate(event: GateEvent): GateResult {
if (event.matches('personal') || event.matches('private')) {
return { pass: true, transform: { title: 'Busy' } };
}
return { pass: true };
}

Use a different replacement text:

function gate(event: GateEvent): GateResult {
return { pass: true, transform: { title: 'Reserved' } };
}

Redact both title and description:

function gate(event: GateEvent): GateResult {
return {
pass: true,
transform: {
title: 'Busy',
description: null
}
};
}