Español

Lee este artículo en español.

How to take a screenshot of a website in n8n (with a single node)

If you automate with n8n, sooner or later you need a screenshot of a web page: a link thumbnail, a preview of a client's site, or archiving how a page looked at a given moment. You don't need to run a browser yourself or install anything odd. With the regular HTTP Request node and the Cofferdock API you can set it up in a minute.

One thing up front, because people search for it: n8n has no dedicated node for taking website screenshots. You do it with the HTTP Request node calling an API that opens the page and takes the shot. Here's which one and how, field by field.

What you'll get

You send the URL of any public website and it returns the screenshot in PNG or JPEG, ready for the next step in your flow. Unlike the HTML-to-image tool, here the page's JavaScript actually runs, so you capture the site the way a real visitor would see it.

Common uses in n8n:

What you need

Step by step in the HTTP Request node

Add an HTTP Request node and fill it in like this:

That's it. The node's output is the image as a file, ready to wire into Google Drive, Gmail, Telegram or wherever you need it. One node, done.

A quick example

Say you keep a link catalog in a Google Sheets and want a thumbnail for each one. The flow would be:

  1. A Google Sheets node that reads the rows with the links.
  2. The HTTP Request node above, which captures each URL from the row.
  3. A Google Drive node that stores the image (or Gmail that attaches it).

Every loop gives you a screenshot of a different site, with nothing done by hand.

Options you can tweak

Add them as Query Parameters in the same node:

OptionDefaultWhat it does
width1280Viewport width in pixels.
height800Viewport height in pixels.
full_pagefalseSet it to true to capture the full page, not just the visible part.
formatpngFormat: png or jpeg.
wait_ms0Wait a few milliseconds before the shot, in case something loads late (max 5000).

The page opens with JavaScript enabled, so it renders just like in a real browser: dropdown menus, content that loads later, animations already finished if you wait with wait_ms.

Prefer to see it in code?

In case you want to test it quickly outside n8n, the same call with curl:

curl -X POST "https://api.cofferdock.com/screenshot?width=1280&height=800" \
  -H "x-api-key: YOUR_KEY" \
  -H "Content-Type: text/plain" \
  --data-binary "https://cofferdock.com" \
  -o screenshot.png

How much does it cost?

Each screenshot uses 1 credit from your plan. Every Cofferdock tool draws from the same pool of credits, so you don't have to pay for a separate service for each little thing.

FAQ

Does n8n have a native node to capture a website? No. You do it with the HTTP Request node calling the Cofferdock API, which is what opens the page and takes the shot.

Do I need to know how to code? No. You just fill in the HTTP Request node fields following this guide. The code examples are optional.

Does it run the page's JavaScript? Yes. Unlike the HTML-to-image tool (meant for your own HTML), here JavaScript is enabled so the site renders as it would for a regular visitor.

Can I capture any URL? Any public website. Internal or private addresses (for example, ones on your own network) are blocked for security.

Can I capture several websites in a loop? Yes. If the previous node returns several rows with links, n8n runs the HTTP Request once per row and you get one screenshot per item.

Try it yourself

You'll find the full instructions, with copy-paste examples, on the website screenshot tool page. And if you don't have an account yet, you can create one for free and build your first flow today.