Back to Catalog

Automated press pass verification & badge creation with QR codes & multi-channel distribution

Jitesh DugarJitesh Dugar
362 views
2/3/2026
Official Page

🎫 Verified Press Pass Generator for Media Events

Automate press credential verification and badge generation for journalists covering your events


πŸ“ Description

Streamline your event media management with this comprehensive press pass automation. When journalists apply for credentials, this workflow instantly validates their identity, verifies their media affiliation, generates professional digital badges with QR codes, and delivers everything via emailβ€”all within seconds.

Perfect for conferences, product launches, trade shows, corporate events, and any occasion requiring verified media access.


✨ Key Features

πŸ” Advanced Email Verification

  • Real-time email validation using VerifiEmail API
  • Checks RFC compliance, MX records, and domain reputation
  • Detects disposable email addresses and spoofed domains
  • Confirms journalist works for legitimate media organization

🎨 Professional Badge Design

  • Auto-generates branded digital press passes
  • Includes journalist photo, name, media outlet, and credentials
  • Embedded QR code for contactless event entry
  • Customizable colors, fonts, and event branding
  • 400Γ—600px portrait format optimized for mobile display

πŸ“§ Automated Communication

  • Beautiful HTML email with embedded badge preview
  • Download links for PNG and PDF versions
  • Clear instructions for event check-in
  • Professional event branding throughout

πŸ“Š Multi-Platform Logging

  • Google Sheets backup with timestamp logs
  • Slack notifications for organizer oversight
  • Complete audit trail for compliance

⚑ Lightning Fast Processing

  • Average execution time: 5-10 seconds
  • Real-time webhook response with confirmation
  • Scalable to hundreds of applications per hour
  • Error handling with graceful fallbacks

🎯 Use Cases

Event Types:

  • Tech conferences and summits
  • Product launch events
  • Trade shows and exhibitions
  • Political rallies and press conferences
  • Sports events and tournaments
  • Film festivals and premieres
  • Corporate announcements
  • Award ceremonies

πŸ”§ What You Need

Required Services:

  1. n8n (Cloud or Self-hosted)
  2. VerifiEmail API (Get API Key) - Email verification
  3. HTMLCSSToImage API (Get API Key) - Badge generation
  4. Gmail Account (OAuth) - Email delivery
  5. Slack Workspace - Team notifications
  6. Google Sheets - Backup logging

πŸ“‹ How It Works

Step-by-Step Process:

1. Application Submission Journalist fills out form on your event website (name, email, media outlet, photo, phone)

2. Data Validation Webhook receives application and checks for required fields (name, email, photo)

3. Email Verification VerifiEmail API validates email domain, checks MX records, and confirms media affiliation

4. Credential Generation

  • Generates unique press ID (PRESS-XXX-timestamp)
  • Creates QR code linking to verification portal
  • Sets 30-day validity period

5. Badge Creation HTMLCSSToImage API renders professional badge with:

  • Circular profile photo
  • Name and media outlet
  • Press ID in styled container
  • Scannable QR code
  • Event name and validity dates
  • "VERIFIED" indicator

6. Distribution

  • Sends HTML email with badge preview and download link
  • Posts notification to Slack channel
  • Backs up to Google Sheets
  • Returns success response to webhook

7. Event Check-In Security scans QR code at event entrance, verifies credentials instantly


πŸš€ Setup Instructions

Quick Start (15 minutes):

1. Import Workflow

  • Download the JSON file
  • In n8n: Click Workflows β†’ Import from File
  • Upload the JSON and open the workflow

2. Configure Webhook

  • Activate the workflow
  • Copy the webhook URL from the Webhook Trigger node
  • Add this URL to your website form's action attribute

3. Add API Credentials

  • VerifiEmail: Create credential with API key from verifi.email dashboard
  • HTMLCSSToImage: Add User ID and API Key from htmlcsstoimg.com
  • Gmail: Connect via OAuth (click "Sign in with Google")
  • Slack: Connect via OAuth and select notification channel
  • Google Sheets: Connect via OAuth

4. Setup Google Sheets Create a new sheet named "Press Pass Logs" with these column headers:

Timestamp | Press ID | Name | Email | Phone | Media Outlet | Email Domain | Verification Status | Event Name | Issued Date | Valid Until | Badge Image URL | QR Code URL | Verification URL | Photo URL | Execution Mode

5. Customize Badge Design

  • Open the "HTML/CSS to Image" node
  • Edit the HTML in html_content field
  • Change gradient colors: Replace #667eea and #764ba2 with your brand colors
  • Update event name default value
  • Modify font sizes, spacing, or layout as needed

6. Update Email Content

  • Open "Send Press Pass Email" node
  • Customize email text, support contact info
  • Update company/event branding
  • Modify footer with your details

7. Configure Slack Channel

  • Open "Notify Organizers (Slack)" node
  • Select your preferred notification channel
  • Customize notification message format

8. Test the Workflow Send a test POST request using Postman or cURL:

curl -X POST https://your-n8n-url/webhook/press-application \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Jane Smith",
    "email": "jane@bbc.com",
    "media_outlet": "BBC News",
    "photo_url": "https://randomuser.me/api/portraits/women/50.jpg",
    "phone": "+44-1234567890",
    "event_name": "Tech Summit 2025"
  }'

9. Go Live

  • Verify test execution completed successfully
  • Check email received with badge
  • Activate workflow for production use

🎨 Customization Options

Badge Design:

  • Colors: Change gradient from purple (#667eea, #764ba2) to your brand colors
  • Fonts: Swap Google Font from Poppins to any available font
  • Logo: Add event logo in header section
  • Size: Adjust viewport_width and viewport_height for different dimensions
  • Layout: Modify HTML structure for custom badge designs

Email Templates:

  • Branding: Update colors, fonts, and styling in HTML email
  • Content: Customize greeting, instructions, and footer
  • Attachments: Add PDF version or additional documents
  • Language: Translate all text to your language

πŸ”’ Security & Privacy

Data Protection:

  • βœ… Email verification prevents fake submissions
  • βœ… QR codes use unique, non-guessable IDs
  • βœ… HTTPS webhook for encrypted transmission
  • βœ… No sensitive data stored in workflow variables
  • βœ… Audit trail for compliance requirements

Best Practices:

  • Use environment variables for API keys
  • Enable webhook authentication (Basic Auth or API key)
  • Implement rate limiting on webhook endpoint
  • Regularly rotate API credentials
  • Set up backup systems for critical data

πŸ› οΈ Troubleshooting

Common Issues:

Issue: "Webhook not receiving data" Solution: Ensure workflow is activated and webhook URL is correct in form action

Issue: "Email verification fails for valid domains" Solution: Check VerifiEmail API credit balance and credential configuration

Issue: "Badge image not generating" Solution: Verify HTMLCSSToImage API key is correct and has sufficient credits

Issue: "Gmail not sending" Solution: Reconnect Gmail OAuth credential and check sending limits

Issue: "QR code not loading in badge" Solution: Ensure QR code URL is properly encoded and publicly accessible


πŸ“ˆ Performance Metrics

  • Average execution time: 5-10 seconds
  • Success rate: 98%+ (with valid inputs)
  • Concurrent capacity: 50+ requests/minute
  • API reliability: 99.9% uptime (dependent on services)
  • Badge generation: <2 seconds
  • Email delivery: <3 seconds

🏷️ Tags

event-management press-pass credential-verification badge-generation email-automation qr-code media-relations event-technology htmlcsstoimage verifi-email gmail slack google-sheets webhook automation workflow conference journalism press-credentials


πŸ“„ License

This workflow template is provided as-is for use with n8n. Customize freely for your organization's needs.


Automated Press Pass Verification & Badge Creation with QR Codes

This n8n workflow automates the process of verifying press pass applications, generating unique QR code badges, and distributing them via multiple channels. It streamlines event accreditation by checking applicant status, creating personalized badges, and notifying applicants of their approval or rejection.

What it does

This workflow simplifies and automates the following steps:

  1. Receives a Webhook Trigger: The workflow is initiated by an incoming webhook, likely containing press pass application data.
  2. Checks Applicant Status: An "If" node evaluates a condition (e.g., {{ $json.status === "approved" }}).
    • If Approved:
      • Generates a QR Code (Code Node): A custom JavaScript code node is used to generate a unique QR code for the approved applicant.
      • Creates a Badge (Code Node): Another custom JavaScript code node is used to generate a personalized press badge, likely embedding the QR code and applicant information.
      • Sends Email (Gmail): The generated badge (and possibly other details) is sent to the applicant via Gmail.
      • Posts to Slack (Slack): A notification is sent to a designated Slack channel, informing the team about the approved application and badge creation.
      • Responds to Webhook: A success response is sent back to the triggering webhook.
    • If Not Approved:
      • Sends Rejection Email (Gmail): An email is sent to the applicant informing them that their press pass application was not approved.
      • Posts to Slack (Slack): A notification is sent to a designated Slack channel, informing the team about the rejected application.
      • Responds to Webhook: A success response is sent back to the triggering webhook.
  3. Handles Errors (Stop and Error): If any critical error occurs during the process, the workflow stops and reports the error.
  4. Logs to Google Sheets (Google Sheets): All applications, regardless of their status, are logged to a Google Sheet for record-keeping.

Prerequisites/Requirements

To use this workflow, you will need:

  • n8n Instance: A running n8n instance.
  • Webhook Source: An external system or form that can send data to an n8n webhook.
  • Google Sheets Account: A Google Sheets account and a configured credential in n8n to log application data.
  • Gmail Account: A Gmail account and a configured credential in n8n to send emails.
  • Slack Account: A Slack account and a configured credential in n8n to post notifications.
  • JavaScript Knowledge (Optional but Recommended): For customizing the QR code and badge generation in the "Code" nodes.

Setup/Usage

  1. Import the Workflow: Import the provided JSON into your n8n instance.
  2. Configure Credentials:
    • Set up your Google Sheets credential.
    • Set up your Gmail credential.
    • Set up your Slack credential.
  3. Configure Webhook:
    • Copy the URL of the "Webhook" trigger node. This URL will be used by your external system to send application data.
    • Ensure the webhook is configured to receive the necessary application data (e.g., applicant name, email, status).
  4. Customize "If" Node: Adjust the condition in the "If" node ({{ $json.status === "approved" }}) to match the exact field and value used in your incoming webhook data to determine approval status.
  5. Customize "Code" Nodes:
    • QR Code Generation: Modify the "Code" node responsible for QR code generation to use your preferred QR code library or method and to embed the correct applicant data.
    • Badge Creation: Modify the "Code" node for badge creation to design your badge layout and incorporate applicant details and the generated QR code.
  6. Customize Email Content (Gmail):
    • Adjust the subject and body of the "Gmail" nodes for both approved and rejected applications.
    • Attach the generated badge to the approval email.
  7. Customize Slack Messages (Slack):
    • Modify the messages in the "Slack" nodes to provide relevant information about approved/rejected applications to your team.
  8. Configure Google Sheets:
    • Specify the Spreadsheet ID and Sheet Name in the "Google Sheets" node where you want to log the data.
    • Map the incoming webhook data fields to the appropriate columns in your Google Sheet.
  9. Activate the Workflow: Once configured, activate the workflow to start automating your press pass verification and badge creation process.

Related Templates

Track competitor SEO keywords with Decodo + GPT-4.1-mini + Google Sheets

This workflow automates competitor keyword research using OpenAI LLM and Decodo for intelligent web scraping. Who this is for SEO specialists, content strategists, and growth marketers who want to automate keyword research and competitive intelligence. Marketing analysts managing multiple clients or websites who need consistent SEO tracking without manual data pulls. Agencies or automation engineers using Google Sheets as an SEO data dashboard for keyword monitoring and reporting. What problem this workflow solves Tracking competitor keywords manually is slow and inconsistent. Most SEO tools provide limited API access or lack contextual keyword analysis. This workflow solves that by: Automatically scraping any competitor’s webpage with Decodo. Using OpenAI GPT-4.1-mini to interpret keyword intent, density, and semantic focus. Storing structured keyword insights directly in Google Sheets for ongoing tracking and trend analysis. What this workflow does Trigger β€” Manually start the workflow or schedule it to run periodically. Input Setup β€” Define the website URL and target country (e.g., https://dev.to, france). Data Scraping (Decodo) β€” Fetch competitor web content and metadata. Keyword Analysis (OpenAI GPT-4.1-mini) Extract primary and secondary keywords. Identify focus topics and semantic entities. Generate a keyword density summary and SEO strength score. Recommend optimization and internal linking opportunities. Data Structuring β€” Clean and convert GPT output into JSON format. Data Storage (Google Sheets) β€” Append structured keyword data to a Google Sheet for long-term tracking. Setup Prerequisites If you are new to Decode, please signup on this link visit.decodo.com n8n account with workflow editor access Decodo API credentials OpenAI API key Google Sheets account connected via OAuth2 Make sure to install the Decodo Community node. Create a Google Sheet Add columns for: primarykeywords, seostrengthscore, keyworddensity_summary, etc. Share with your n8n Google account. Connect Credentials Add credentials for: Decodo API credentials - You need to register, login and obtain the Basic Authentication Token via Decodo Dashboard OpenAI API (for GPT-4o-mini) Google Sheets OAuth2 Configure Input Fields Edit the β€œSet Input Fields” node to set your target site and region. Run the Workflow Click Execute Workflow in n8n. View structured results in your connected Google Sheet. How to customize this workflow Track Multiple Competitors β†’ Use a Google Sheet or CSV list of URLs; loop through them using the Split In Batches node. Add Language Detection β†’ Add a Gemini or GPT node before keyword analysis to detect content language and adjust prompts. Enhance the SEO Report β†’ Expand the GPT prompt to include backlink insights, metadata optimization, or readability checks. Integrate Visualization β†’ Connect your Google Sheet to Looker Studio for SEO performance dashboards. Schedule Auto-Runs β†’ Use the Cron Node to run weekly or monthly for competitor keyword refreshes. Summary This workflow automates competitor keyword research using: Decodo for intelligent web scraping OpenAI GPT-4.1-mini for keyword and SEO analysis Google Sheets for live tracking and reporting It’s a complete AI-powered SEO intelligence pipeline ideal for teams that want actionable insights on keyword gaps, optimization opportunities, and content focus trends, without relying on expensive SEO SaaS tools.

Ranjan DailataBy Ranjan Dailata
161

Generate song lyrics and music from text prompts using OpenAI and Fal.ai Minimax

Spark your creativity instantly in any chatβ€”turn a simple prompt like "heartbreak ballad" into original, full-length lyrics and a professional AI-generated music track, all without leaving your conversation. πŸ“‹ What This Template Does This chat-triggered workflow harnesses AI to generate detailed, genre-matched song lyrics (at least 600 characters) from user messages, then queues them for music synthesis via Fal.ai's minimax-music model. It polls asynchronously until the track is ready, delivering lyrics and audio URL back in chat. Crafts original, structured lyrics with verses, choruses, and bridges using OpenAI Submits to Fal.ai for melody, instrumentation, and vocals aligned to the style Handles long-running generations with smart looping and status checks Returns complete song package (lyrics + audio link) for seamless sharing πŸ”§ Prerequisites n8n account (self-hosted or cloud with chat integration enabled) OpenAI account with API access for GPT models Fal.ai account for AI music generation πŸ”‘ Required Credentials OpenAI API Setup Go to platform.openai.com β†’ API keys (sidebar) Click "Create new secret key" β†’ Name it (e.g., "n8n Songwriter") Copy the key and add to n8n as "OpenAI API" credential type Test by sending a simple chat completion request Fal.ai HTTP Header Auth Setup Sign up at fal.ai β†’ Dashboard β†’ API Keys Generate a new API key β†’ Copy it In n8n, create "HTTP Header Auth" credential: Name="Fal.ai", Header Name="Authorization", Header Value="Key [Your API Key]" Test with a simple GET to their queue endpoint (e.g., /status) βš™οΈ Configuration Steps Import the workflow JSON into your n8n instance Assign OpenAI API credentials to the "OpenAI Chat Model" node Assign Fal.ai HTTP Header Auth to the "Generate Music Track", "Check Generation Status", and "Fetch Final Result" nodes Activate the workflowβ€”chat trigger will appear in your n8n chat interface Test by messaging: "Create an upbeat pop song about road trips" 🎯 Use Cases Content Creators: YouTubers generating custom jingles for videos on the fly, streamlining production from idea to audio export Educators: Music teachers using chat prompts to create era-specific folk tunes for classroom discussions, fostering interactive learning Gift Personalization: Friends crafting anniversary R&B tracks from shared memories via quick chats, delivering emotional audio surprises Artist Brainstorming: Songwriters prototyping hip-hop beats in real-time during sessions, accelerating collaboration and iteration ⚠️ Troubleshooting Invalid JSON from AI Agent: Ensure the system prompt stresses valid JSON; test the agent standalone with a sample query Music Generation Fails (401/403): Verify Fal.ai API key has minimax-music access; check usage quotas in dashboard Status Polling Loops Indefinitely: Bump wait time to 45-60s for complex tracks; inspect fal.ai queue logs for bottlenecks Lyrics Under 600 Characters: Tweak agent prompt to enforce fuller structures like [V1][C][V2][B][C]; verify output length in executions

Daniel NkenchoBy Daniel Nkencho
601

Automate Dutch Public Procurement Data Collection with TenderNed

TenderNed Public Procurement What This Workflow Does This workflow automates the collection of public procurement data from TenderNed (the official Dutch tender platform). It: Fetches the latest tender publications from the TenderNed API Retrieves detailed information in both XML and JSON formats for each tender Parses and extracts key information like organization names, titles, descriptions, and reference numbers Filters results based on your custom criteria Stores the data in a database for easy querying and analysis Setup Instructions This template comes with sticky notes providing step-by-step instructions in Dutch and various query options you can customize. Prerequisites TenderNed API Access - Register at TenderNed for API credentials Configuration Steps Set up TenderNed credentials: Add HTTP Basic Auth credentials with your TenderNed API username and password Apply these credentials to the three HTTP Request nodes: "Tenderned Publicaties" "Haal XML Details" "Haal JSON Details" Customize filters: Modify the "Filter op ..." node to match your specific requirements Examples: specific organizations, contract values, regions, etc. How It Works Step 1: Trigger The workflow can be triggered either manually for testing or automatically on a daily schedule. Step 2: Fetch Publications Makes an API call to TenderNed to retrieve a list of recent publications (up to 100 per request). Step 3: Process & Split Extracts the tender array from the response and splits it into individual items for processing. Step 4: Fetch Details For each tender, the workflow makes two parallel API calls: XML endpoint - Retrieves the complete tender documentation in XML format JSON endpoint - Fetches metadata including reference numbers and keywords Step 5: Parse & Merge Parses the XML data and merges it with the JSON metadata and batch information into a single data structure. Step 6: Extract Fields Maps the raw API data to clean, structured fields including: Publication ID and date Organization name Tender title and description Reference numbers (kenmerk, TED number) Step 7: Filter Applies your custom filter criteria to focus on relevant tenders only. Step 8: Store Inserts the processed data into your database for storage and future analysis. Customization Tips Modify API Parameters In the "Tenderned Publicaties" node, you can adjust: offset: Starting position for pagination size: Number of results per request (max 100) Add query parameters for date ranges, status filters, etc. Add More Fields Extend the "Splits Alle Velden" node to extract additional fields from the XML/JSON data, such as: Contract value estimates Deadline dates CPV codes (procurement classification) Contact information Integrate Notifications Add a Slack, Email, or Discord node after the filter to get notified about new matching tenders. Incremental Updates Modify the workflow to only fetch new tenders by: Storing the last execution timestamp Adding date filters to the API query Only processing publications newer than the last run Troubleshooting No data returned? Verify your TenderNed API credentials are correct Check that you have setup youre filter proper Need help setting this up or interested in a complete tender analysis solution? Get in touch πŸ”— LinkedIn – Wessel Bulte

Wessel BulteBy Wessel Bulte
247