AutomationMart
Home/Browse/Generate website screenshots on-demand with ScreenshotMachine API via webhooks
n8n

Generate website screenshots on-demand with ScreenshotMachine API via webhooks

n8nn8n7 modulesv1.0
GmailSlackDiscordGoogle DriveDropbox

This n8n template enables you to instantly generate high-quality screenshots of any specified public URL by simply sending a webhook request. It’s an indispensable tool for developers, content creators, marketers, or anyone needing on-demand visual captures of web pages without manual intervention, all while including crucial security measures. --- 🔧 How it works - Receive URL Webhook: This node acts as the entry point for the workflow. It listens for incoming POST requests and expects a JSON bo

At a glance

Generate website screenshots on-demand with ScreenshotMachine API via webhooks is a ready-made n8n workflow you import as a workflow JSON file — no build required. It connects Gmail, Slack, Discord, Google Drive. It's free to download. Follow the 5-step import below to go live in minutes.

Platform
n8n
Connects
Gmail, Slack, Discord, Google Drive, Dropbox
Modules
7
Price
Free
Version
v1.0
Generate website screenshots on-demand with ScreenshotMachine API via webhooks workflow diagram

About this workflow

This n8n template enables you to instantly generate high-quality screenshots of any specified public URL by simply sending a webhook request. It’s an indispensable tool for developers, content creators, marketers, or anyone needing on-demand visual captures of web pages without manual intervention, all while including crucial security measures. --- 🔧 How it works - Receive URL Webhook: This node acts as the entry point for the workflow. It listens for incoming POST requests and expects a JSON body containing a url property with the website you want to screenshot. You can trigger it from any application or service capable of sending an HTTP POST request. - Validate URL for SSRF: This is a crucial security step. This Function node validates the incoming url to prevent Server-Side Request Forgery (SSRF) vulnerabilities. It checks for valid http:// or https:// protocols and, more importantly, ensures the URL does not attempt to access internal/private IP addresses or localhost. If the URL is deemed unsafe or invalid, it flags it for an error response. - IF URL Valid: This IF node checks the isValidUrl flag set by the previous validation step. - If the URL is valid (true), the workflow proceeds to take the screenshot. - If the URL is invalid or flagged for security (false), the workflow branches to Respond with Validation Error. - Take Screenshot: This node sends an HTTP GET request to the ScreenshotMachine API to capture an image of the validated URL. Remember to replace YOURAPIKEY in the URL field of this node with your actual API key from ScreenshotMachine. - Respond with Screenshot Data: This node sends the data received directly from the Take Screenshot node back to the original caller of the webhook. This response typically includes information about the generated screenshot, such as the URL to the image file, success status, and other metadata from the ScreenshotMachine API. - Respond with Validation Error: If the IF URL Valid node determines the URL is unsafe or invalid, this node sends a descriptive error message back to the webhook caller, explaining why the request was denied due to security concerns or an invalid format. --- 🔒 Security Considerations This template includes a dedicated Validate URL for SSRF node to mitigate Server-Side Request Forgery (SSRF) vulnerabilities. SSRF attacks occur when an attacker can trick a server-side application into making requests to an unintended location. Without validation, an attacker could potentially use your n8n workflow to scan internal networks, access sensitive internal resources, or attack other services from your n8n server. The validation checks for: - Only http:// or https:// protocols. - Prevention of localhost or common private IP ranges (e.g., 10.x.x.x, 172.16.x.x - 172.31.x.x, 192.168.x.x). While this validation adds a significant layer of security, always ensure your n8n instance is properly secured and updated. --- 👤 Who is it for? This workflow is ideal for: - Developers: Automate screenshot generation for testing, monitoring, or integrating visual content into applications. - Content Creators: Quickly grab visuals for articles, presentations, or social media posts. - Marketing Teams: Create dynamic visual assets for campaigns, ads, or competitive analysis. - Automation Enthusiasts: Integrate powerful screenshot capabilities into existing automated workflows. - Website Owners: Monitor how your website appears across different tools or over time. --- 📑 Prerequisites To use this template, you will need: - An n8n instance (cloud or self-hosted). - An API Key from ScreenshotMachine. You can obtain one by signing up on their website: --- 📑 Data Structure When you trigger the webhook, send a POST request with a JSON body structured as follows: If the URL is valid, the workflow will return the JSON response directly from the ScreenshotMachine API. This response typically includes information about the generated screenshot, such as the URL to the image file, success status, and other metadata: If the URL is invalid or blocked by the security validation, the workflow will return an error response similar to this: --- ⚙️ Setup Instructions - Import Workflow: In your n8n editor, click "File" > "Import from JSON" and paste the provided workflow JSON. - Configure Webhook Path: - Double-click the Receive URL Webhook node. - In the 'Path' field, set a unique and descriptive path (e.g., /website-screenshot). - Add ScreenshotMachine API Key: - Double-click the Take Screenshot node. - In the 'URL' parameter, locate YOURAPIKEY and replace it with your actual API key obtained from ScreenshotMachine. Example URL structure: $json.validatedUrl }} - Activate Workflow: Save and activate the workflow. --- 📝 Tips - Processing Screenshots: You're not limited to just responding with the screenshot data! You can insert additional nodes after the Take Screenshot node (and before the Respond with Screenshot Data node) to further process or utilize the generated image. Common extensions include: - Saving to Cloud Storage: Use nodes for Amazon S3, Google Drive, or Dropbox to store the screenshots automatically, creating an archive. - Sending via Email: Attach the screenshot to an email notification using an Email or Gmail node for automated alerts or reports. - Posting to Chat Platforms: Share the screenshot directly in a Slack, Discord, or Microsoft Teams channel for team collaboration or visual notifications. - Image Optimization: Use an image processing node (if available via an API or a custom function) to resize, crop, or compress the screenshot before saving or sending. - Custom Screenshot Parameters: The ScreenshotMachine API supports various optional parameters (e.g., width, height, quality, delay, fullpage). - Upgrade: Extend the Receive URL Webhook to accept these parameters in the incoming JSON body (e.g., {"url": "...", "width": 1024, "fullpage": true}). - Leverage: Dynamically pass these parameters to the Take Screenshot HTTP Request node's URL to customize your screenshots for different use cases. - Scheduled Monitoring: - Upgrade: Combine this workflow with a Cron or Schedule node. Set it to run periodically (e.g., daily, hourly). - Leverage: Automatically monitor your website or competitors' sites for visual changes. You could then save screenshots to cloud storage and even trigger a comparison tool if a change is detected. - Automated Visual Regression Testing: - Upgrade: After taking a screenshot, store it with a unique identifier. In subsequent runs, take a new screenshot, then use an external image comparison API or a custom function to compare the new screenshot with a baseline. - Leverage: Get automated alerts if visual elements on your website change unexpectedly, which is critical for quality assurance. - Dynamic Image Generation for Social Media/Marketing: - Upgrade: Feed URLs (e.g., for new blog posts, product pages) into this workflow. After generating the screenshot, use it to create dynamic social media images or marketing assets. - Leverage: Streamline the creation of engaging visual content, saving design time.

n8n

How to import this n8n workflow

  1. 1

    Download the workflow JSON file after purchase.

  2. 2

    Open n8n → click the menu → Import from File.

  3. 3

    Select the downloaded JSON and import.

  4. 4

    Set up credentials for each node that requires them.

  5. 5

    Click Execute Workflow to test, then activate.

Setup guide

Setup guide included

Purchase to unlock the full step-by-step guide

Related N8n workflows

Generate AI images from text prompts with Gemini 2.0, Google Sheets & Drive

This n8n template demonstrates how to automate the creation of high-quality visual content using AI. The workflow takes simple titles from a Google Sheets spreadsheet, generates detailed artistic prompts using AI, creates photorealistic images, and manages the entire process from data input to final delivery. Use cases are many: Perfect for digital marketers, content creators, social media managers, e-commerce businesses, advertisin

Free

Convert files to PDF from Dropbox in PDF.co and upload the output to Dropbox

Get files meeting specified criteria in Dropbox, convert them to PDF and upload the converted files back to Dropbox.

Free

Send a Slack reminder for pending Revolut draft payments

Use this template to list Revolut Business draft payments created 3 days ago and yet to be approved, and automatically send a Slack reminder to a person who approves or rejects them. The scenario is scheduled to run once a day at 10:00. You can change it by clicking on the watch icon next to the first module.

Free

Parse Gmail inbox and transform into Todoist tasks with Solve Propositions

Who is it for? # If you are getting a lot of emails into your Gmail inbox, then probably some of those can be solved easly by replying or by doing specific short tasks. But analyzing whole email thread content just to catch up with multiple threads can be very wasteful. So by using AI you can actually get simple propositions of what should be done before closing this specific email and actual proposed answer to that email. This is especially useful if you need to do some actions before replying

Free

Real-time PulsePoint emergency alerts to iMessage with AI summaries

Emergency Alerts Reporter to iMessage This n8n template fetches real-time emergency incident alerts from PulsePoint for a specific agency and delivers them directly to any phone number via iMessage using the Blooio API. It's designed to keep users informed with clear, AI-summarized reports of emergency activity near them—automatically and reliably. Use cases are powerful and immediate: - Get real-time fire/medical alerts for your neighborhood. - Use it for family, local safety groups, or even

Free

Voice translator bridge (Telegram → Slack) with GPT-4o-mini + Whisper

How it works This workflow automatically transcribes and translates voice messages from Telegram to Slack, enabling seamless communication between Japanese and English speakers. In our real-world use case, our distributed team often sends short voice updates on Telegram — but most discussion happens on Slack. Before this workflow, we constantly asked: - “Can someone write a summary of that voice message?” - “I can’t understand what was said — is there a transcript?”

Free

AI-powered CV extractor: Google Drive to Sheet with GPT-4 + Slack for recruiters

CV Extractor: Google Drive to Sheet + Slack Update for Recruiters Watch the demo video below: []( > This workflow automatically processes resumes (PDFs) uploaded or updated in a Google Drive folder. It extracts and structures the candidate’s information using AI, then updates or inserts the data into a Google Sheet, acting as a central talent database. Finally, it notifies the hiring team via Slack with a summary. Perfect for HR and TA teams, this automation eliminates the repetitive task of

Free

AI chatbot call center: General exception flow (production-ready, part 8)

Workflow Name: 👻 Exception Flow Template was created in n8n v1.90.2 Skill Level: Low Categories: n8n, Chatbot Stacks - Error Trigger - Slack node What this workflow does? This is a n8n Error Workflow. It will trigger when there is an error in another workflow. When this happens, it then tries to send an error notification to the preset Slack channel. How it works - The Error Trigger node will trigger when there is an error in another workflow, as long as that workflow is set up to do so. - A err

Free

Reviews

No reviews yet

Be the first to buy and share your experience.

Leave a review

Sign in to share your experience with this workflow.

Log in to review
Free
No ratings yet

Create a free account to purchase workflows.

  • JSON blueprint — instant download
  • Setup guide PDF included
  • 5 downloads · valid 30 days
  • Works with n8n

Need help setting this up?

Book a 3-hour live setup session with an Agility consultant.

₹2,499/ session
3 hrs · video call
  • Configure live on Google Meet / Zoom
  • Free follow-up if workflow has defects
  • Platform expert assigned to you
Book installation session
Free