You can take a ScreenshotMachine screenshot from Linux with Bash and curl, calling ScreenshotMachine’s hosted screenshot API. The available documentation describes this API workflow, not a separately installed native Linux CLI. The request needs your customer key and the page URL; the example below saves the response as a local image.
Capture a webpage from Linux with Bash and curl
Save this as screenshot.sh. Replace the key and URL, then run it with Bash. The request uses curl -G and --data-urlencode so query strings and other reserved characters in the target URL are encoded as request parameters.
#!/usr/bin/env bash
set -euo pipefail
CUSTOMER_KEY="PUT_YOUR_CUSTOMER_KEY_HERE"
SECRET_PHRASE="" # Leave empty if not configured.
URL="https://www.google.com"
DIMENSION="1366x768"
DEVICE="desktop"
FORMAT="png"
CACHE_LIMIT="0"
DELAY="2000"
ZOOM="100"
ARGS=(
--data-urlencode "key=$CUSTOMER_KEY"
--data-urlencode "dimension=$DIMENSION"
--data-urlencode "device=$DEVICE"
--data-urlencode "format=$FORMAT"
--data-urlencode "cacheLimit=$CACHE_LIMIT"
--data-urlencode "delay=$DELAY"
--data-urlencode "zoom=$ZOOM"
--data-urlencode "url=$URL"
)
if [[ -n "$SECRET_PHRASE" ]]; then
HASH=$(printf '%s' "$URL$SECRET_PHRASE" | md5sum | cut -d ' ' -f 1)
ARGS+=(--data-urlencode "hash=$HASH")
fi
curl -G -s "https://api.screenshotmachine.com" "${ARGS[@]}" > output.png
Make the script executable and run it:
chmod +x screenshot.sh
./screenshot.sh
The script writes the API response to output.png. Its set -euo pipefail line is a shell-safety choice, not a ScreenshotMachine requirement. A successful curl exit alone does not establish that the response is a valid screenshot; see the error-checking section below.
Set the request parameters
ScreenshotMachine’s API documentation describes an HTTP GET request. The following values are vendor-documented settings, not independent test results; check the live API guide for changes before relying on defaults or accepted values.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware match#1 Best Overall
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
| Parameter | What to set | Documented behavior |
|---|---|---|
key |
Your customer API key. | Required. |
url |
The page to capture, including its scheme, such as https://. |
Required. ScreenshotMachine recommends percent-encoding the URL; the example uses curl’s --data-urlencode. |
dimension |
A width and height in widthxheight form, such as 1366x768. |
The documented default is 120x90. Width range: 100–1920; height range: 100–9999. Use full for full-page height. |
format |
jpg, png, or gif. |
The documented default is jpg. Match the output filename extension to the format you request. |
cacheLimit |
A cache age in days; use 0 to request a fresh screenshot. |
Documented range: 0–14 days; default: 14. Fractional-day values are documented for shorter intervals. |
delay |
A delay in milliseconds before capture. | Documented choices run from 0 to 10,000 ms in listed increments; default: 200 ms. A longer delay may allow animations or late-loading content to finish, but adds waiting time. |
zoom |
A percentage from 10 to 400. | Default: 100. The vendor says 200 or higher can produce a retina-style larger image; zoom is ignored for screenshots below typical device dimensions. |
device |
The device setting for the capture. The example uses desktop. |
Consult ScreenshotMachine’s current API guide for the supported device values and their behavior. |
Choose a viewport dimension when you need a screenshot of a particular visible screen size; use full when the capture should extend down the page. PNG, JPG, and GIF are supported formats, but the documentation does not establish a universal best choice: select the format your downstream workflow needs. Set cacheLimit to zero when freshness matters more than cache reuse. Use a longer delay only when the page needs time to render content that would otherwise be missing.
Keep the API key and optional hash safe
ScreenshotMachine requires a unique customer key. Keep it in a server-side script or another private configuration location; do not commit it or a configured secret phrase to a public repository, or put them in client-side code.
Rank #2
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
If you have configured a secret phrase, the documented hash is the MD5 digest of the exact URL value followed immediately by the secret phrase. The example computes that digest with Linux’s md5sum and includes the hash parameter only when SECRET_PHRASE is nonempty. ScreenshotMachine says requests with a missing or incorrect hash are ignored when a phrase is configured. Its documentation particularly recommends the safeguard for direct calls from public HTML pages; it does not make a public API key or secret phrase safe to expose.
When setting the secret phrase, keep it out of source control and ensure that the URL used to calculate the hash is the same URL value sent in the request.
Rank #3
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
Check error responses instead of trusting the output file
ScreenshotMachine documents that invalid or incomplete requests can return an error image containing a text message. It also documents the X-Screenshotmachine-Response response header and error codes including invalid_hash, invalid_key, invalid_url, missing_key, missing_url, no_credits, invalid_selector, invalid_crop, and system_error.
| Symptom or code | What to check |
|---|---|
| The output file contains an error message or is not the expected image. | Inspect X-Screenshotmachine-Response; the response may be an error image even if curl completed. Check the request parameters and the code-specific cause. |
missing_key or invalid_key |
Supply the customer key and confirm it is correct. |
missing_url or invalid_url |
Supply a valid target URL. Keep --data-urlencode so reserved characters in a URL are handled reliably. |
invalid_hash |
If a secret phrase is configured, calculate the hash from the exact URL value plus that phrase and include it. If no phrase is configured, do not send an unnecessary hash. |
no_credits |
Check the account’s available credits. |
invalid_selector or invalid_crop |
If your request includes selector or crop options, review those values; the basic example above does not use either option. |
system_error |
The documented code indicates a system error. Check the response and request details; the available documentation does not specify a guaranteed recovery time. |
For a quick header check, ask curl to print response headers while saving the body separately:
Rank #4
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
curl -G -sS -D response-headers.txt "https://api.screenshotmachine.com" "${ARGS[@]}" -o output.png
grep -i '^X-Screenshotmachine-Response:' response-headers.txt
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Use the separate PDF API for a PDF capture
ScreenshotMachine documents website-to-PDF capture as a separate API, not as another output format of the image endpoint. Its Bash/curl example uses https://pdfapi.screenshotmachine.com and PDF-specific options such as paper size, orientation, media, background, delay, and scale. Keep the API endpoint and options distinct from the screenshot request above, and save its response with a .pdf filename.
Or skip the browser setup
ScreenshotNeo is a website screenshot API and MCP server for developers. One GET request can return a PNG, JPEG, WebP, or PDF. For a Linux shell call, install nothing beyond curl and your API key:
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Clear out junk files and repair common Windows errorsFree Scan →Best Value
- 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
- Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
- Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
- HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
- What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo API documentation for request options. It removes cookie and consent banners, newsletter popups, and chat widgets before capture; each step can be turned off. Bot checks/CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and responses indicate the page verdict and billing status in headers. Its MCP server provides take_screenshot, get_page_info, and capture_pdf tools for AI agents and MCP clients. The free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000 screenshots.
Sign up for ScreenshotNeo’s free plan to try 1,000 screenshots a month without a card.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




