backstack-caldav

n8n community node for CalDAV calendar integration by Backstack

Package Information

Released: 6/30/2025
Downloads: 30 weekly / 77 monthly
Latest Version: 1.2.2
Author: Backstack

Documentation

n8n-nodes-backstack-caldav

n8n.io - Workflow Automation

A comprehensive n8n community node for CalDAV calendar integration, developed by Backstack.

:warning: AI Warning

This community node is entirely developed by AI. While there was human review of functionality and testing of capability, the code in it's entirety has not been reviewed.

Features

  • Get Events in Range: Retrieve calendar events within a specified date range
  • Get Single Event: Retrieve a specific event by its UID
  • Create Event: Create new calendar events with full properties
  • Update Event: Modify existing calendar events with ETag support

Installation

To install this community node in n8n:

  1. Go to Settings > Community Nodes
  2. Select Install
  3. Enter n8n-nodes-backstack-caldav as the npm package name
  4. Click Install

Alternatively, you can install it manually:

npm install n8n-nodes-backstack-caldav

Compatibility

This node has been tested with:

  • Nextcloud CalDAV
  • SabreDAV
  • Apple Calendar Server
  • Any RFC 4791 compliant CalDAV server

Configuration

Credentials

Create CalDAV API credentials with:

  • Server URL: Your CalDAV server endpoint (e.g., https://nextcloud.example.com/remote.php/dav)
  • Username: Your username
  • Password: Your password or app password
  • Calendar Path: Optional relative path to specific calendar (e.g., calendars/username/personal/)

Operations

Get Events in Range

Retrieves events within a date range using CalDAV REPORT queries.

Parameters:

  • Start Date (required)
  • End Date (required)
  • Calendar Path (optional)
  • Include All-Day Events (optional)
  • Max Results (optional)

Get Single Event

Retrieves one specific event by UID.

Parameters:

  • Event UID (required)
  • Calendar Path (optional)

Create Event

Creates a new calendar event.

Required Parameters:

  • Title
  • Start DateTime
  • End DateTime

Optional Parameters:

  • Description
  • Location
  • All Day flag

Update Event

Updates an existing event with ETag conflict prevention.

Required Parameters:

  • Event UID

Optional Parameters:

  • Title
  • Start DateTime
  • End DateTime
  • Description
  • Location
  • All Day flag

Data Format

All operations return events in a standardized format:

{
  "uid": "unique-event-id",
  "title": "Event Title",
  "description": "Event description",
  "start": "2024-01-01T10:00:00.000Z",
  "end": "2024-01-01T11:00:00.000Z",
  "location": "Meeting Room A",
  "allDay": false,
  "status": "CONFIRMED",
  "url": "https://example.com/event",
  "etag": "\"1234567890\""
}

Technical Details

  • CalDAV Protocol: Full WebDAV/CalDAV implementation with proper HTTP methods
  • iCalendar Support: RFC 5545 compliant parsing and generation using ical.js
  • Authentication: HTTP Basic Auth with credential validation
  • Error Handling: Comprehensive error handling with n8n ApplicationError
  • TypeScript: Full type safety with custom declarations

License

MIT License - see LICENSE file for details.

Development

This node was developed by Backstack as a community contribution to the n8n ecosystem.

Building

npm install
npm run build

Linting

npm run lint

Support

For issues and feature requests, please use the GitHub Issues page.

Discussion