by System Admin
No description available
by System Admin
Tagged with: , , , ,
by Robert Breen
A minimal, plug-and-play workflow that generates sample data using n8n’s Code node (both JavaScript and Python versions included) and then fans out those records into individual items with Split Out. Perfect for testing downstream nodes, mapping, pagination, or prototyping list-based logic without connecting to real data sources. ✅ What this template does Generates 20 sample records** with fields: index, num, and test Writes the array to item.json.barr Uses Split Out to convert the array into one item per record Includes both JavaScript and Python implementations side-by-side 👤 Who’s it for Builders who need mock data to test mappings and loops Educators/demo makers who want a simple fan-out pattern Anyone who wants a clean scaffold for list processing in n8n ⚙️ How it works / What it does Generate Data Javascript**: Produces barr = [{ index, num, test }, ...] for 20 rows Generate Data Python**: Same output, written in Python Split Out Javascript / Python: Takes barr and emits **one item per element > Use either branch (JS or Python) depending on your preference. 🛠️ How to set up No external setup required. Import the workflow and Execute. Select either the JavaScript or Python branch to see fan-out items. 📋 Requirements n8n (Cloud or self-hosted) No credentials or third-party services 🎛️ Customize the workflow Change the number of rows: adjust the loop range (0..N) Rename or add fields to each record (e.g., name, price, tags) Replace the static array with generated or randomized data Pipe the Split Out output into Set, Function, HTTP, or Sheets nodes for further testing 🗒️ Notes Sticky notes are included for in-editor guidance. Both implementations return the same structure so you can swap freely. 📬 Contact Need help customizing this (e.g., shaping fields, adding randomizers, or exporting to CSV/Sheets)? 📧 rbreen@ynteractive.com 🔗 Robert Breen — https://www.linkedin.com/in/robert-breen-29429625/ 🌐 ynteractive.com — https://ynteractive.com
by Arthur Dimeglio
🎧 Automated Spotify Playlist Organizer — Sort and Queue Tracks by Popularity 🧠 Overview This workflow acts as your AI-powered Spotify DJ assistant. It retrieves your playlists, cleans and organizes them, sorts tracks by popularity, and automatically queues them for playback — creating a ready-to-play, personalized listening session. ⸻ ⚙️ Step-by-Step Breakdown Manual Trigger Node: When clicking ‘Execute workflow’ Starts the workflow manually when you click “Execute” in n8n. ⸻ Get User’s Playlists Node: Get a user’s playlists • Uses your Spotify OAuth credentials. • Calls Spotify’s API to retrieve all playlists from your account (returnAll: true). • Output: an array of playlists (name, URI, number of tracks, etc.). 🟢 This is your raw data source. ⸻ Clean & Deduplicate Node: Clean & Deduplicate (Code node) This JavaScript block: • Normalizes input (handles arrays and multiple items). • Extracts only useful fields: name, uri, total. • Filters out playlists missing data. • Removes duplicates by URI. 🧹 Result: a clean, uniform list of your playlists. ⸻ Get a Playlist’s Tracks Node: Get a playlist’s tracks by URI or ID • Fetches all tracks from a specific playlist. • Returns detailed info: name, popularity, artists, album, added date, etc. 🎵 This retrieves the actual songs from your chosen playlist. ⸻ Playlist Reorganizer Node: Playlist reorganizer (Code node) This JavaScript block: • Collects all tracks from the selected playlist. • Avoids duplicates with seenTrackIds. • Extracts key fields: id, name, popularity, artists, album, added_at, url, etc. • Sorts songs by ascending popularity (less popular first). 📊 Result: playlist reorganized by song popularity. ⸻ Loop Over Items Node: Split in Batches • Iterates over each track one by one. • Sends each song sequentially to the next node (“Add a song to a queue”). 🔁 Allows each song to be processed individually. ⸻ Add a Song to a Queue Node: Add a song to a queue • Uses each song’s Spotify ID to add it to your Spotify playback queue (spotify:track:{{ $json.id }}). • Connected to the “Loop Over Items” node to continue until all songs are queued. 🎶 Result: your Spotify queue fills automatically with the reorganized tracks. ⸻ ✅ Final Result When you execute this workflow: It fetches all your playlists. Cleans and filters them. Extracts tracks from one selected playlist. Sorts them by popularity. Adds them to your playback queue. 🎧 End result: a fully automated “AI DJ” that reorganizes your playlists and lines up your music session — from discovery to playback. ⸻ 🪪 Prerequisites Before using this workflow: • You must have a Spotify account. • You need to set up Spotify OAuth credentials in n8n (Client ID, Client Secret, Redirect URI). • Ensure you have Spotify Premium (API queueing only works on Premium accounts). ⸻ 🛠️ Setup Instructions Import this workflow into your n8n instance. Go to the Spotify OAuth2 API credentials section and connect your account.
by Johnpaul Nwagwu
Use this workflow to book, cancel, or reschedule appointments using Vapi and Google Calendar How it works The Check Availability workflow checks if appointments exist on Google Calendar and returns a response to Vapi. The Book Appointment workflow schedules an appointment on Google Calendar. The Manage Appointments workflow updates or cancels appointments based on the user’s request. Key Features: Ability to book, update, or cancel an appointment Validates required fields before booking Handles errors with helpful user messages Returns a Vapi-compatible response format Set up steps Prerequisites Vapi.ai account Google Calendar n8n instance - Self-hosted or cloud Steps Step 1: Configure Google Calendar Access Step 2: Import and Configure Workflows Step 3: Create Vapi Custom Tools Step 4: Configure Vapi Assistant Use Cases Appointment booking automation for service businesses
by System Admin
Tagged with: , , , ,
by System Admin
Tagged with: , , , ,
by KlickTipp
Community Node Disclaimer: This workflow uses KlickTipp community nodes. Introduction This workflow automates Zoom recurring webinar registrations by capturing form submissions from a KlickTipp Landingpage and enriching contacts with webinar details. Depending on the registrant’s webinar choice (for example “E-Mail Zustellung für Anfänger” or “E-Mail Zustellung für Experten”), the system fetches the correct Zoom webinar info and writes it into KlickTipp. Ideal for running scalable webinar funnels without manual data entry. Benefits Instant contact enrichment**: Automatically populates KlickTipp with Zoom join links and session times. Dynamic segmentation**: Applies specific tags for “Beginner” or “Expert” webinar participants. Scalable structure**: Router logic allows easy extension for more webinar types. Key Features KlickTipp Trigger**: Starts the workflow when a landing-page form is submitted via outbound webhook. Switch Router**: Routes based on the webinar selection. Supports multiple webinar options. Zoom API Integration**: Retrieves recurring webinar data including join URL and future occurrences. webinar IDs are set per path (Beginner vs Expert). KlickTipp Contact Sync**: Updates or subscribes contacts in the correct list. Writes custom fields for join link and next session timestamp. Applies topic-specific tags for segmentation. Custom Fields (KlickTipp Setup) | Name | Field type | |---------------------------------|----------------| | Zoom \| webinar choice | Line Text | | Zoom \| webinar start timestamp | Date & Time | | Zoom \| Join URL | URL | | Zoom \| Registration ID | Line Text | | Zoom \| Duration webinar | Line Text | Tags (Segmentation) Zoom webinar E-Mail Zustellung für Anfänger Zoom webinar E-Mail Zustellung für Experten Setup Instructions KlickTipp Preparation Create the custom fields above. Add dropdown for webinar choice on landing page. Configure outbound webhook to n8n. Credential Configuration Authenticate KlickTipp API. Connect Zoom via OAuth2 (webinar:write:registrant scope). Insert correct Zoom webinar IDs in workflow nodes. Field Mapping Map the zoom data to the newly created KlickTipp custom fields. Ensure tags match campaign setup. Testing and Deployment Submit a registration form. Confirm workflow triggers and Zoom data is fetched. Verify KlickTipp contact is updated with: Join URL Start timestamp Correct segmentation tag ⚠️ Note: Zoom OAuth tokens may expire — refresh when needed. Zoom may also enforce API rate limits. Campaign Expansion Ideas Add more webinar types and extend router. Build reminder and follow-up campaigns in KlickTipp by tag. Track attendance tags for automated post-event actions. Customization Adapt Zoom nodes for webinars. Add fallback logic if Zoom data is missing. Trigger cross-tool automations (CRM, Slack, invoicing). Resources: Use KlickTipp Community Node in n8n Automate Workflows: KlickTipp Integration in n8n
by Dereck Bearsong
How it Works Save a .md file to the folder set in the triggers. This workflow will check every hour, convert the md file to HTML, and create a confluence page for it. If the md file is updated or changed in the folder, the workflow will check for a matching page in Confluence and update it. Setup Steps Ensure you have an Oauth2 connection set up with access to the Google Drive API. Point to the folder in 'File Created' / 'File Updated' triggers Create a scoped API token for Confluence with the 'write:confluence-content' and 'write:content:confluence' scopes, then add it as a header auth for your HTTP request nodes Add your Confluence Cloud ID to the URL in "Create Confluence Page", "Get Page ID", and "Update Confluence Page"
by Guilherme Campos
This n8n workflow turns Slack messages into actionable Notion todos — using nothing more than a simple emoji reaction. By reacting to any Slack message with the 📝 emoji, the workflow will automatically capture the message, extract its content, and create a new Notion to_do item with a link back to the original message. A daily scheduled Slack message then reminds you of any tasks left unchecked in Notion. Perfect for async teams who live in Slack but organize work in Notion, this template helps you bridge the gap between communication and execution—without switching tools or relying on memory. Who’s it for Teams that use Slack and Notion daily Product managers, leads, and async-first teams who want quick capture of action items Anyone tired of copy-pasting Slack messages into Notion manually How it works Emoji-triggered Notion capture The workflow listens for the reaction_added event from Slack. When a user reacts to a message with :memo:, it fetches the full message content and permalink. It creates a to_do block in Notion with the message and a direct link to the original Slack thread. Daily Slack reminder Every day at 08:00, the workflow scans all to_do blocks in a designated Notion page. It filters out those that are still unchecked. It aggregates the unchecked tasks and sends a single Slack message to the user with the list of open todos. How to set up Connect your Slack account and configure the trigger to watch for the :memo: reaction. Connect your Notion account and select a page where todos should be created. Customize the schedule time if needed (default is 08:00). (Optional) Set up the final Slack message node to send reminders to yourself or a specific team channel. Requirements A Slack app with permission to read messages and reactions A Notion integration with access to edit the target page A Notion page with blocks enabled (or create one manually) How to customize the workflow Change the emoji from :memo: to another (e.g. :fire: for urgent, :idea: for brainstorms) Add logic to assign Notion tasks to specific team members Use Slack threads, tags, or message metadata to auto-categorize tasks Modify the daily reminder to include due dates, priorities, or Slack buttons to check off tasks
by Patrick Jennings
Sleeper NFL Players Sync This template uses the Sleeper API to fetch the complete list of NFL players and stores them in an Airtable base. It’s built to run daily and ensures you have the most up-to-date player list for fantasy football workflows What it Does Maintain a current player list for fantasy league automations for Sleeper app users / NFL fantasy football managers Pull Sleeper player IDs once daily instead of every request Build smarter workflows using Airtable as your structured dataset Create a subworkflow in n8n for even more Sleeper app workflows Setup Instructions Install n8n (Cloud or self-hosted) Import the template JSON Create Airtable Credentials: Generate an API key at airtable.com/account Connect your base and table (you’ll be prompted to do this in n8n) If you would like to customize how you store data please feel free to use what works best for you Match your fields with the data you're storing: player_id (text/number) full_name position team etc. Activate your workflow Remember, you can customize how you trigger this workflow and where you store the data if you choose to do so. Notes Sleeper's player API returns 6,000+ entries, including inactive players, retired players, etc. You can filter this down as needed via position, status, or metadata. Airtable record limit on the free tier is 1,000 rows per base — consider upgrading or filtering further. Be careful of rate limits: both Sleeper and Airtable have them (but this workflow stays well within safe boundaries). The Airtable node can be replaced with other data storage nodes (Google Sheets, Excel, etc) if you prefer Difficulty Rating & Comment (from the author) 2 out of 10 if this ain't you're first rodeo, respectfully. If you use Sleeper for fantasy football, lets go win some games!
by Matan Grady
Auto-resolve Jira tickets with coding agents Improve issue resolution by assigning Jira tickets to coding agents with full operational context from Port, ensuring faster, accurate, and context-aware development How it works Listen for Jira ticket updates and detect when an issue moves to In Progress with the label product_approved and without copilot_assigned. Query the Port catalog to extract only contextual information relevant to the Jira issue (services, repos, docs, resources, dependencies). Generate a concise GitHub issue title and a self-contained issue body that summarizes the Jira description and includes any found Port context. Create the GitHub issue in the target repository and post a comment that requests Copilot to take ownership. Write the GitHub link back to the Jira ticket and add the copilot_assigned label so the ticket is marked as handled. Setup [ ] Connect your Jira Cloud account and enable issue_updated events [ ] Register for free on Port.io [ ] Connect your Port.io account and add the API key [ ] Connect your GitHub account and select the target repository [ ] Ensure a Copilot bot or @copilot user has access to the repository [ ] Confirm the workflow webhook or Jira trigger URL is active [ ] Test by moving a product_approved ticket to In Progress.