You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Remove unused webhook_offsets field from calendars
webhook_offsets was a placeholder for pre-event reminder webhooks that
was never implemented. Remove it from the schema, API handlers, docs,
and specs to avoid shipping an unused field that causes confusion.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
-**Missing parameters on existing MCP tools** — `caldave_create_event` now supports `metadata`, `attendees`, and `status`. `caldave_update_event` now supports `metadata`, `attendees`, and `recurrence`. `caldave_create_calendar` now supports `webhook_url`, `webhook_secret`, `webhook_offsets`, `agentmail_api_key`, and `welcome_event`.
24
+
-**Missing parameters on existing MCP tools** — `caldave_create_event` now supports `metadata`, `attendees`, and `status`. `caldave_update_event` now supports `metadata`, `attendees`, and `recurrence`. `caldave_create_calendar` now supports `webhook_url`, `webhook_secret`, `agentmail_api_key`, and `welcome_event`.
25
25
-**Remote MCP endpoint at `/mcp`** — CalDave now serves an MCP endpoint via Streamable HTTP transport. Agents can connect with just a URL and API key (`{ "url": "https://caldave.ai/mcp", "headers": { "Authorization": "Bearer sk_live_..." } }`) — no local installation required. Sessions are stateful with automatic 30-minute TTL cleanup.
26
26
-**MCP agent guide** — Enhanced MCP instructions with structured quick-start, workflow descriptions, and tool selection guide. Added `caldave://guide` MCP resource with a comprehensive getting-started guide for agents (setup checklist, code examples, event fields reference, webhook/SMTP config, debugging).
27
27
@@ -45,7 +45,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
45
45
-**SMTP test `to` parameter** — `POST /agents/smtp/test` now accepts an optional `to` body parameter to send the test email to a specific address instead of the configured `from` address.
46
46
-**SMTP test endpoint** — `POST /agents/smtp/test` sends a test email to verify your SMTP configuration works. Sends to the configured `from` address and reports success/failure with the SMTP error message if any.
47
47
-**SMTP `secure` field** — `PUT /agents/smtp` now accepts an optional `secure` boolean to explicitly control TLS mode. Use `true` for implicit TLS (port 465) or `false` for STARTTLS (port 587). Auto-detected from port when omitted.
48
-
-**Webhook config at calendar creation** — `POST /calendars` now accepts `webhook_url`, `webhook_secret`, and `webhook_offsets` at creation time, saving a separate `PATCH` call.
48
+
-**Webhook config at calendar creation** — `POST /calendars` now accepts `webhook_url`and `webhook_secret` at creation time, saving a separate `PATCH` call.
49
49
-**`email_sent` in event responses** — `POST` and `PATCH` event endpoints now return `email_sent: true/false` when the event has attendees, confirming whether the invite was dispatched. Invites are now sent synchronously before the response is returned.
50
50
-**SMTP integration for outbound emails** — configure your own SMTP server via `PUT /agents/smtp` so calendar invites and RSVP replies are sent from your email address instead of CalDave's built-in delivery. New `GET /agents/smtp` (view config, password excluded) and `DELETE /agents/smtp` (revert to built-in). `GET /agents/me` now includes `smtp_configured` boolean. Supports any SMTP provider (AgentMail, SendGrid, Gmail, etc.).
51
51
-**Webhook test endpoint** — `POST /calendars/:id/webhook/test` sends a test payload to the calendar's configured webhook URL and returns the HTTP status code. Supports HMAC-SHA256 signing via `X-CalDave-Signature` when `webhook_secret` is set.
Copy file name to clipboardExpand all lines: src/routes/changelog.js
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -253,7 +253,7 @@ const CHANGELOG = [
253
253
{
254
254
type: 'feature',
255
255
title: 'Webhook config at calendar creation',
256
-
description: 'POST /calendars now accepts webhook_url, webhook_secret, and webhook_offsets so you can configure webhooks in a single call instead of a separate PATCH.',
256
+
description: 'POST /calendars now accepts webhook_urland webhook_secret so you can configure webhooks in a single call instead of a separate PATCH.',
<div class="param"><span class="param-name">agentmail_api_key <span class="param-opt">optional</span></span><span class="param-desc">AgentMail API key for fetching inbound email attachments</span></div>
400
400
<div class="param"><span class="param-name">webhook_url <span class="param-opt">optional</span></span><span class="param-desc">URL to receive event webhooks (must be a valid URL)</span></div>
401
401
<div class="param"><span class="param-name">webhook_secret <span class="param-opt">optional</span></span><span class="param-desc">Secret for HMAC-SHA256 webhook signatures (sent in <code class="inline-code">X-CalDave-Signature</code> header)</span></div>
402
-
<div class="param"><span class="param-name">webhook_offsets <span class="param-opt">optional</span></span><span class="param-desc">Reserved for future pre-event reminders. Stored but not yet acted on.</span></div>
403
402
<div class="param"><span class="param-name">welcome_event <span class="param-opt">optional</span></span><span class="param-desc">Set to <code class="inline-code">false</code> to skip the auto-created welcome event (recommended for production agents). Defaults to true.</span></div>
Copy file name to clipboardExpand all lines: src/routes/man.js
-2Lines changed: 0 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -241,7 +241,6 @@ function getEndpoints() {
241
241
{name: 'agentmail_api_key',in: 'body',required: false,type: 'string',description: 'AgentMail API key for inbound email attachments'},
242
242
{name: 'webhook_url',in: 'body',required: false,type: 'string',description: 'URL to receive event webhooks'},
243
243
{name: 'webhook_secret',in: 'body',required: false,type: 'string',description: 'Secret for HMAC-SHA256 webhook signatures'},
244
-
{name: 'webhook_offsets',in: 'body',required: false,type: 'array',description: 'Reserved for future pre-event reminders. Stored but not yet acted on.'},
245
244
{name: 'welcome_event',in: 'body',required: false,type: 'boolean',description: 'Set to false to skip the auto-created welcome event (recommended for production). Defaults to true.'},
0 commit comments