n8n-nodes-tscaldav
v0.4.0
Published
N8N community node for CalDAV calendar integration using ts-caldav
Maintainers
Readme
n8n-nodes-tscaldav
N8N community node for CalDAV calendar integration using ts-caldav.
This node allows you to interact with CalDAV calendar servers directly from your n8n workflows. It supports popular providers like Google Calendar, iCloud, Fastmail, Yahoo, GMX, Nextcloud, and any custom CalDAV server.
Installation
Community Nodes (Recommended)
- Go to Settings > Community Nodes
- Select Install
- Enter
n8n-nodes-tscaldavand confirm
Then restart n8n if needed.
Features
Resources
- Calendar: List all calendars from the server
- Event: Full CRUD operations for calendar events
Operations
| Resource | Operation | Description | |----------|-----------|-------------| | Calendar | Get Many | List all calendars | | Event | Get Many | Fetch events (with optional date filtering) | | Event | Get | Fetch a specific event by UID | | Event | Create | Create a new event | | Event | Update | Update an existing event | | Event | Delete | Delete an event |
Event Features
- Basic fields: Summary, start/end times, description, location
- Status: Tentative, Confirmed, or Cancelled
- All-day events: Mark events as whole-day
- Timezones: Specify start and end timezones
- Recurrence: Daily, weekly, monthly, yearly with advanced options
- Alarms: Display popups, audio alerts, or email reminders
Supported Providers
The node includes pre-configured server URLs for:
| Provider | Status | Notes | |----------|--------|-------| | Google Calendar | Supported | Requires app-specific password | | iCloud | Supported | Requires app-specific password | | Fastmail | Supported | Works with account password | | Yahoo Calendar | Supported | May require app-specific password | | GMX | Supported | Works with account password | | Nextcloud | Supported | Provide your server URL | | Custom | Supported | Any CalDAV-compliant server |
Credentials
⚠️ PLEASE NOTE
When setting up the N8N credential, you might get an error about connection failure. You can ignore this alert and save successfully. If everything is set up correctly, you'll be able to see you calendars from list component.
- Create new credentials of type CalDAV API
- Select your server preset (or Custom)
- Enter your username and password
- For iCloud/Google: Generate an app-specific password
Getting App-Specific Passwords
iCloud:
- Go to appleid.apple.com
- Sign in > Security > App-Specific Passwords
- Generate a password for n8n
Google:
- Enable 2FA on your Google account
- Go to myaccount.google.com/apppasswords
- Generate a password for n8n
Usage Examples
List All Calendars
- Add a CalDAV node
- Select Calendar resource
- Select Get Many operation
- Execute
Get Events from a Calendar
- Add a CalDAV node
- Select Event resource
- Select Get Many operation
- Choose a calendar from the dropdown
- Optionally set date range filters
- Execute
Create a Recurring Event
- Add a CalDAV node
- Select Event resource, Create operation
- Set Summary, Start, End times
- Under Recurrence, add a rule:
- Frequency: Weekly
- Interval: 1
- By Day: Monday, Wednesday, Friday
- Execute
Update an Event
- First, use Get or Get Many to retrieve the event
- Note the
uid,href, andetagfrom the response - Add another CalDAV node with Update operation
- Fill in the UID, Href, and ETag fields
- Set the new values for Summary, Start, End, etc.
- Execute
Development
# Clone the repository
git clone https://github.com/ivorocha/n8n-nodes-tscaldav.git
cd n8n-nodes-tscaldav
# Install dependencies
npm install
# Build
npm run build
# Link for local testing
npm link
cd ~/.n8n/nodes
npm link n8n-nodes-tscaldavLicense
MIT License - see LICENSE for details.
Contributing
Contributions are welcome! Please open an issue or submit a pull request.
