October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PCOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk8 min

How to Integrate ScreenshotMachine with WordPress in India

A practical guide to calling ScreenshotMachine from WordPress with PHP, protecting API credentials, validating responses, caching screenshots, and checking India-specific details.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

You can integrate ScreenshotMachine with WordPress by building a server-side request to its screenshot API, keeping your customer key and secret phrase out of public code, validating the target URL, and handling the response through WordPress’s HTTP API. The integration is the same for a WordPress site in India as elsewhere; the available service documentation does not establish India-specific pricing, taxes, eligibility, data location, latency, or support terms.

What a ScreenshotMachine integration needs

ScreenshotMachine documents an HTTP GET endpoint at https://api.screenshotmachine.com/. A basic request needs a customer key and the target url. Optional parameters control properties such as output dimensions, format, cache duration, delay, and zoom; consult the vendor’s current API reference for the supported values and limits.

As an Amazon Associate I earn from qualifying purchases.

The vendor’s PHP example constructs a client using the customer key and secret phrase, sets the target URL and options, then generates a request URL. That URL can be used to display an image or the response can be retrieved and saved. The PHP package is available through Composer or GitHub: screenshotmachine-php.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choose a WordPress integration approach

Approach Best fit Check before using
Existing shortcode plugin A site owner who needs a shortcode workflow and wants to avoid writing integration code. The WordPress.org listing for JSM Screenshot Machine Shortcode establishes that a plugin listing exists, but by itself does not establish current maintenance quality, compatibility with your WordPress version, or whether the plugin is preferable to custom code. Review its current listing and test it before installing on a production site.
Custom plugin or theme integration A developer who needs control over credentials, validation, error handling, caching, and where the screenshot appears. Use WordPress’s HTTP API for the outbound request, validate and sanitize inputs, escape rendered output, and add caching only when the freshness trade-off suits the page.

For a custom build, decide whether WordPress should return a generated image URL for the browser to load or fetch and save image bytes on the server. Returning a URL is simpler, but a public-page request must be protected so credentials are not exposed. Fetching bytes server-side gives you more control over caching and storage, but requires you to handle transport errors, HTTP status codes, response content, and storage permissions.

#1 Best Overall
CanaKit Raspberry Pi 5 Starter Kit PRO - Turbine Black (128GB Edition) (8GB RAM)
  • Includes Raspberry Pi 5 with 2.4Ghz 64-bit quad-core CPU (8GB RAM)
  • Includes 128GB Micro SD Card pre-loaded with 64-bit Raspberry Pi OS, USB MicroSD Card Reader
  • CanaKit Turbine Black Case for the Raspberry Pi 5
  • CanaKit Low Noise Bearing System Fan
  • Mega Heat Sink - Black Anodized

Keep credentials and public requests safe

  • Store the customer key and secret phrase in server-side configuration or protected plugin settings. Do not print either value in HTML or expose it to client-side JavaScript.
  • The vendor recommends using the hash parameter to safeguard requests made directly from public HTML. Its API documentation explains that the hash is calculated from the URL value and secret phrase; when a secret phrase is configured, requests without a valid hash are ignored. Confirm your account’s current configuration and follow the vendor’s current hashing instructions.
  • Validate the submitted target URL and capture settings against what your feature actually needs. Do not accept arbitrary options merely because the API supports them.
  • Escape values when rendering HTML. WordPress plugin guidance recommends validating, sanitizing, and escaping data, and using the WordPress HTTP API rather than custom cURL calls.

WordPress describes GET as a method “used to retrieve data” in its HTTP API documentation. The HTTP API also provides WordPress-aware handling of outbound requests and transport failures.

Build a server-side WordPress request

The example below is a starting point for a custom plugin. Define credentials outside the public-facing code, for example in wp-config.php, then call the function from a shortcode or another server-side feature. It requests a JPEG and returns the image bytes only if the request succeeds and the response appears to be an image. Confirm the exact parameters and response behavior against ScreenshotMachine’s current API documentation before deploying.

Rank #2
CanaKit Raspberry Pi 4 4GB Starter PRO Kit - 4GB RAM
  • Includes Raspberry Pi 4 4GB Model B with 1.5GHz 64-bit quad-core CPU (4GB RAM)
  • Includes Pre-Loaded 32GB EVO+ Micro SD Card (Class 10), USB MicroSD Card Reader
  • CanaKit Premium High-Gloss Raspberry Pi 4 Case with Integrated Fan Mount, CanaKit Low Noise Bearing System Fan
  • CanaKit 3.5A USB-C Raspberry Pi 4 Power Supply (US Plug) with Noise Filter, Set of Heat Sinks, Display Cable - 6 foot (Supports up to 4K60p)
  • CanaKit USB-C PiSwitch (On/Off Power Switch for Raspberry Pi 4)
define( 'SCREENSHOTMACHINE_KEY', 'your-customer-key' );
define( 'SCREENSHOTMACHINE_SECRET', 'your-secret-phrase' );

function mysite_screenshotmachine_image( $target_url ) {
    if ( ! filter_var( $target_url, FILTER_VALIDATE_URL ) ) {
        return new WP_Error( 'invalid_url', 'Enter a valid URL.' );
    }

    $parts = wp_parse_url( $target_url );
    if ( empty( $parts['scheme'] ) || ! in_array( strtolower( $parts['scheme'] ), array( 'http', 'https' ), true ) ) {
        return new WP_Error( 'invalid_scheme', 'Only HTTP and HTTPS URLs are allowed.' );
    }

    $args = array(
        'key'    => SCREENSHOTMACHINE_KEY,
        'url'    => $target_url,
        'format' => 'jpg',
    );

    // If your account requires hash protection, generate the hash exactly
    // as specified in ScreenshotMachine's current API documentation.
    // Do not guess the algorithm or expose the secret phrase in public output.

    $api_url = add_query_arg( $args, 'https://api.screenshotmachine.com/' );
    $response = wp_remote_get( $api_url, array( 'timeout' => 60 ) );

    if ( is_wp_error( $response ) ) {
        return new WP_Error( 'screenshot_request_failed', 'The screenshot request could not be completed.' );
    }

    $status = wp_remote_retrieve_response_code( $response );
    $content_type = wp_remote_retrieve_header( $response, 'content-type' );
    $body = wp_remote_retrieve_body( $response );

    if ( 200 !== $status || false === stripos( (string) $content_type, 'image/' ) || '' === $body ) {
        return new WP_Error( 'screenshot_invalid_response', 'ScreenshotMachine did not return a usable image.' );
    }

    return array(
        'bytes'       => $body,
        'content_type' => $content_type,
    );
}

Do not treat a successful HTTP response as proof of success without checking it: an API can return an error message or other non-image content. This example deliberately does not invent a hash formula; implement the vendor’s documented method if your account requires hash protection. If your use case displays the generated API URL directly instead of fetching bytes, keep the secret phrase server-side and use the vendor’s hash mechanism for public-page calls.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Configure capture options and caching

Set only the options your page needs. ScreenshotMachine documents settings including dimension, format, cacheLimit, delay, and zoom, with additional device and capture choices shown in its examples. The API reference gives a cacheLimit range of 0–14 days and dimension constraints; verify the current limits in the live documentation rather than relying on a value copied into old code.

Rank #3
ELECROW CrowPi Case Kit for Raspberry Pi 5, 9-Inch Display
  • Not including the Raspberry Pi 5 (8GB), the Crowpi advanced version comes with the Raspberry Pi 5
  • ELECROW Black Case for the Raspberry Pi 5, CrowPi is equipped with a 9-inch HD touchscreen along with a camera; All the regular components used in DIY electronics are packed into the CrowPi development board, such as LCD, LED matrix, buzzer, light sensor, PIR sensor, ultrasonic sensor, IR sensor, etc
  • Raspberry Pi Sensors: The Crowpi raspberry pi 5 programming kit is jam-packed with lots of buttons such as 19 different sensors in a tidy easy to use package; You don't have to wait and wire things
  • Build Quality: Solid ABS shell and well made components in one place make it strong and convenient to travel
  • Programming Lessons: This raspberry pi 5 learning kit ships with step by step instructions and provides 21 lessons to take you through identifying components reading code and running it in the terminal
  • Output: choose a supported image format and dimensions that fit the component in your WordPress theme.
  • Capture timing: use delay only when the target page needs extra time to render; longer waits can make a page feature feel slower.
  • Vendor cache: use cacheLimit if ScreenshotMachine’s cache behavior matches the freshness you need.
  • WordPress cache: WordPress transients can keep a screenshot or reference for a chosen time. Choose an expiration based on how often the target changes, and refresh or invalidate it when your own content or target URL changes.

WordPress documents transients as time-limited cached data. A transient can expire earlier than requested if the underlying cache is cleared, so code should be able to regenerate the screenshot rather than assuming it will always exist.

Display or save the screenshot

Display an image URL

The vendor documents generating an API URL and placing it in an image element. In WordPress, escape any URL inserted into HTML with an appropriate escaping function such as esc_url(). This method is convenient, but a public request must not expose the secret phrase; use the vendor’s hash protection where applicable.

Rank #4
CanaKit Raspberry Pi 5 Desktop PC with SSD (Fully Assembled) (256 GB SSD)
  • Fully assembled for plug-and-play operation
  • Includes Raspberry Pi 5 with 8GB RAM
  • 256 GB PCIe Pi NVMe SSD (Pre-loaded with Pi 64-Bit OS)
  • M.2 HAT+
  • CanaKit Turbine Black Case for the Pi 5

Fetch and store the image server-side

The vendor’s PHP example also retrieves and saves the image. In a WordPress implementation, check the HTTP result before saving, restrict file handling to a safe destination, and avoid writing arbitrary responses as image files. Consider whether WordPress’s uploads directory, a transient-held reference, or an external cache best fits your retention and delivery needs.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

India-specific considerations

The service and WordPress documentation describe general API use; they do not establish India-specific availability, billing currency, tax treatment, account eligibility, data residency, latency, or support terms. Check ScreenshotMachine’s current account terms or ask the service provider before making a purchasing or compliance decision based on those details. Your WordPress host’s location and network path can also affect request latency, so test from the actual hosting environment rather than inferring performance from your own browser in India.

Best Value
RasTech Raspberry Pi 5 8GB Kit with Active Cooler and Pi5 Case
  • 【What you Get】You will get 1*Pi 5 8GB Single Board,1*RasTech Case,1*Active Cooler,1*Screwdriver,1*Installation instructions,12-month free warranty, lifetime service, 24-hour prompt and friendly response.
  • 【More Connectors】There are two USB 3.0 ports(5Gbps simultaneously) and two USB 2.0 ports, which triple total bandwidth ,support any combination of up to two cameras or displays. Peak SD card performance is doubled through support for the SDR104 high-speed mode. It provides a smooth desktop experience for you. Offer Gigabit Ethernet and a PCIe interface, along with dual-band Wi-Fi and Bluetooth 5.0/BLE wireless capability. The RasTech Pi 5 Kit use the new 27W 5.1V 5A USB-C power connector.
  • 【 Support Dual 4Kp60 Display 】Each of the two microHDMI sockets can control a 4K display at 60 Hertz, now support HDR, offering super HD video for media streaming projects. RPi 5 is the first RPi model that comes with a PCI Express port (PCIe 2.0 x1 with 500 MB/s) to attach SSDs (requires separate M.2 HAT).
  • 【 Excellent Chips And Applications】Pi 5 is a full-size Pi computer using silicon built in-house at Pi. The RP1 “southbridge” provides the bulk of the I/O capabilities for Pi 5. Pi 5 is more friendly and convenient in the development of Internet of Things, Web development, machine identification, automatic control and other electronic equipment applications and network.
  • 【 Faster CPU, Better GPU 】 Pi 5 features a Broadcom BCM2712 64-bit quad-core Arm Cortex-A76 processor running at 2.4GHz, it delivers a 2–3× increase in CPU performance relative to RaspberryPi 4. The 800MHz VideoCore VII GPU is compatible to OpenGL ES 3.1 and Vulkan 1.2, substantial uplift in graphics performance. Pi 5 Offers lightning-fast CPU speed, a PCI Express interface, a Real Time Clock (RTC) and a power button and runs significantly cooler than Pi 4.

Test and troubleshoot the integration

Before launch

  1. Test with a target URL you are authorized to capture and a minimal set of options.
  2. Run the request from the WordPress hosting environment, not only from a local development machine.
  3. Check the WordPress HTTP response for transport errors, status code, content type, and a non-empty body.
  4. Test a cached response and an expired or missing cache entry so the page can recover by requesting a fresh capture.
  5. Confirm that neither credentials nor an unprotected API request URL appear in page source, logs accessible to visitors, or browser network requests.

Common failures

Symptom Likely cause What to check
WordPress returns a transport error The host cannot reach the API, DNS or TLS failed, or the request exceeded the configured timeout. Inspect the WordPress HTTP API error, confirm outbound HTTPS is permitted by the host, and test from that hosting environment.
HTTP response is not a usable image The key or parameters may be invalid, the target may fail to load, or the service may return an error body. Check status code and content type before saving or displaying the response; compare request parameters with the vendor documentation.
Request is ignored when hash protection is enabled The hash is missing or incorrect for the URL and secret phrase. Generate the hash according to the current vendor instructions and verify whether your account requires it.
Screenshot appears stale Vendor-side or WordPress-side caching is returning an older capture. Review the selected cache duration and transient expiration; refresh or invalidate the WordPress cache when the target changes.
The request works locally but not on the live site The production host may have different outbound network restrictions, PHP configuration, or WordPress behavior. Test on the actual host and inspect its logs and HTTP API result rather than assuming local success guarantees production success.

Or skip the browser setup

If you would rather call a screenshot API than build and maintain a WordPress-side browser workflow, ScreenshotNeo offers a GET endpoint. See the ScreenshotNeo documentation for current request options.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

ScreenshotNeo removes cookie banners, newsletter popups, and chat widgets before a capture; bot checks, blank pages, and failed loads are never billed. Its MCP server lets AI agents take screenshots, and its free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Sign up free for ScreenshotNeo.

Frequently Asked Questions

Can I use a ScreenshotMachine shortcode in WordPress?

A WordPress.org listing exists for JSM Screenshot Machine Shortcode. Check its current compatibility and maintenance details before installing; the listing alone does not establish that it is suitable for your site.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Does the available documentation confirm ScreenshotMachine pricing or data residency in India?

No. Check the provider’s current account terms or contact ScreenshotMachine for country-specific billing, tax, eligibility, and data-location details.

Quick Recap

Bestseller No. 1
CanaKit Raspberry Pi 5 Starter Kit PRO - Turbine Black (128GB Edition) (8GB RAM)
CanaKit Raspberry Pi 5 Starter Kit PRO - Turbine Black (128GB Edition) (8GB RAM)
Includes Raspberry Pi 5 with 2.4Ghz 64-bit quad-core CPU (8GB RAM); CanaKit Turbine Black Case for the Raspberry Pi 5
$259.95
Bestseller No. 2
CanaKit Raspberry Pi 4 4GB Starter PRO Kit - 4GB RAM
CanaKit Raspberry Pi 4 4GB Starter PRO Kit - 4GB RAM
Includes Raspberry Pi 4 4GB Model B with 1.5GHz 64-bit quad-core CPU (4GB RAM); Includes Pre-Loaded 32GB EVO+ Micro SD Card (Class 10), USB MicroSD Card Reader
$159.99
Bestseller No. 4
CanaKit Raspberry Pi 5 Desktop PC with SSD (Fully Assembled) (256 GB SSD)
CanaKit Raspberry Pi 5 Desktop PC with SSD (Fully Assembled) (256 GB SSD)
Fully assembled for plug-and-play operation; Includes Raspberry Pi 5 with 8GB RAM; 256 GB PCIe Pi NVMe SSD (Pre-loaded with Pi 64-Bit OS)
$339.97

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.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Crashes, No Sound, or Screen Glitches?Free driver scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.