npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@rrulenet/n8n-nodes-rrulenet

v0.1.4

Published

n8n community node for rrule.net advanced schedules.

Downloads

350

Readme

The first node in this package is rrule.net Schedule Trigger. It starts an n8n workflow from a hosted rrule.net schedule, so schedule creation, timezone handling, recurrence evaluation, and webhook delivery live in a dedicated scheduling layer.

Why Use It

rrule.net is a hosted scheduler for automation workflows. It can run simple schedules such as Every minute, but also gives you a more explicit and testable scheduling model than cron as your workflows grow.

Use it when you want:

  • a schedule you can describe in natural language
  • timezone-aware execution with DST handling
  • a persistent remote schedule that can be paused, resumed, and inspected
  • clear validation errors before a workflow is published
  • webhook delivery into n8n without maintaining your own scheduler stack
  • target-aware executions for routing by market, region, timezone, or custom metadata
  • support for non-English natural-language schedules, depending on your rrule.net account and API configuration

For a deeper comparison of recurrence semantics and cron limitations, see RRule vs Cron.

It also covers schedules that are awkward or brittle with cron, such as:

  • Every second Tuesday at 18:00 except August
  • Every business day at 9:00 and weekends at 10:00

rrule.net handles the recurrence model and calls your n8n webhook when an occurrence is due.

Installation

Install this package as an n8n community node package.

Package name:

@rrulenet/n8n-nodes-rrulenet

Follow n8n's community node installation guide:

https://docs.n8n.io/integrations/community-nodes/installation/

Credentials

Create a rrule.net API credential in n8n:

  • API Key: an rrule.net API key from your dashboard
  • API Base URL: defaults to https://api.rrule.net

The API base URL is configurable so you can use local or staging rrule.net APIs during development.

Trigger Setup

Add rrule.net Schedule Trigger to a workflow and configure:

  • Name: optional display name for the remote schedule
  • Schedule Text: natural-language schedule text
  • Timezone: IANA timezone, for example Europe/Paris
  • On Deactivate: pause or delete the remote schedule when the workflow is unpublished

Example:

Every minute

Complex example:

Every second Tuesday at 18:00 except August

Activation Behavior

When the workflow is published, the node creates or resumes a persistent schedule in rrule.net.

The remote schedule points to the workflow's production n8n webhook URL. If you are testing locally, make sure n8n is reachable from the internet through a tunnel and that WEBHOOK_URL is set to the public tunnel URL.

When the workflow is unpublished, the node pauses the remote schedule by default. You can choose to delete it instead.

If the stored remote schedule was deleted manually, the node recreates it on the next publish.

Webhook Troubleshooting

The node registers the workflow's production n8n webhook URL with rrule.net when the workflow is published or activated.

If rrule.net reports failed deliveries, check these common causes first:

  • HTTP 404 from n8n: the workflow is usually not published or active, or the webhook URL is not the production URL.
  • webhook-test URL: n8n test webhook URLs only work while n8n is explicitly listening for a test event. Use the production webhook URL for persistent schedules.
  • Local n8n instance: expose n8n through a public HTTPS tunnel and set WEBHOOK_URL to that public URL before activating the workflow.
  • Stopped tunnel or changed public URL: reactivate the workflow so the node updates the remote rrule.net schedule with the current webhook URL.

rrule.net automatically pauses clearly broken webhook endpoints. For example, a 404 or 410 response is treated as a terminal endpoint failure, while likely configuration errors such as 400, 401, or 403 are paused after repeated failures. Fix the n8n endpoint, then resume or reactivate the schedule.

Target-Aware Schedules

rrule.net can run one logical schedule across multiple execution targets, such as regions, markets, stores, audiences, or local timezones.

For targeted schedules, the trigger output includes normalized target fields:

  • target_id
  • target_label
  • target_timezone
  • target_metadata

Use these fields in downstream n8n nodes to route each execution. Untargeted schedules keep the same webhook payload shape and leave target fields empty, except target_metadata, which is an empty object.

Learn more in the rrule.net schedule targets guide:

https://rrule.net/guides/schedule-targets

Output

Each trigger execution emits one item with normalized fields:

{
  "schedule_id": "6b02511c-d936-42cf-932f-cb1ce3832a4c",
  "schedule_name": "n8n lead sync",
  "execution_id": "148bdd21-39af-45a6-8f7f-ea6b40ca39a4",
  "scheduled_for": "2026-05-04T09:23:00+00:00",
  "executed_at": "2026-05-04T09:23:29.173Z",
  "timezone": "Europe/Paris",
  "target_id": "paris",
  "target_label": "Paris audience",
  "target_timezone": "Europe/Paris",
  "target_metadata": {
    "market": "fr",
    "segmentId": "brevo-fr"
  },
  "input_type": "natural",
  "input_value": "Every minute",
  "raw_payload": {}
}

Quotas And Plans

Persistent schedules run on rrule.net. API key, quota, and subscription errors are returned by the rrule.net API and shown in n8n when the workflow is published.

Manage your account and API keys from:

https://rrule.net/dashboard