ApiFlash is a website screenshot API that allows users to capture high-quality screenshots of web pages programmatically.
ApiFlash is a website screenshot API that allows users to capture high-quality screenshots of web pages programmatically. On Nagent, Apiflash is exposed as a fully-configurable images & design integration that any agent can call — 5 actions, and API key authentication. No code is required to wire Apiflash into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Apiflash to automate the kinds of tasks images & design teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Apiflash into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Apiflash, with input parameters and output schema. Drop these into any step of an agent built in Helix.
APIFLASH_BATCH_CAPTURE_SCREENSHOTSTool to capture screenshots for multiple URLs in a single request. Use when you have a list of pages to snapshot in batch.
Input parameters
List of full URLs to capture; each must include protocol (http or https).
When true, bypasses API cache and forces a new screenshot capture. Use for frequently updated pages.
Browser viewport width in pixels. Default 1920 for desktop; use 375-414 for mobile simulation.
Output image format for all screenshots. JPEG is smallest, PNG supports transparency, WebP offers best compression.
Browser viewport height in pixels. Only used when full_page is false. Default 1080 for desktop.
When true, captures the entire scrollable page instead of just the visible viewport.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
APIFLASH_CAPTURE_SCREENSHOTTool to capture a screenshot of a website. Returns a JSON response with URLs to the screenshot (and optionally extracted HTML/text). Supports extensive customization including viewport dimensions, full page capture, quality settings, element selection, geolocation emulation, and more. Use when you need to capture website screenshots for documentation, testing, or monitoring purposes.
Input parameters
Additional JavaScript code to be injected into the page before capturing. Should be URL encoded.
A CSS string to inject in the web page when capturing the screenshot. Should be URL encoded.
Number of seconds the screenshot is cached. From 0 seconds to 2592000 seconds (30 days). Default is 86400.
The complete URL of the website to capture. Must include the protocol (http:// or https://). Example: 'https://example.com'
Capture a screenshot of an area of the page. Format: 'left,top,width,height' (e.g., '10,20,50,100' captures an area 50 pixels wide and 100 pixels high).
The delay, in seconds, to wait after the page is loaded before capturing the screenshot. From 0 to 10 seconds. Default is 0.
Force the API to capture a fresh new screenshot instead of returning a screenshot from the cache.
The address of a proxy server through which the screenshot should be captured. Format: 'address:port' or 'user:password@address:port'.
The width, in pixels, of the viewport to use. Default is 1920.
The image format of the captured screenshot. Either jpeg (default), png, or webp.
The height, in pixels, of the viewport to use. Ignored if full_page is true. Default is 1080.
Prevent ads from being displayed. Blocks requests from popular ad-networks and hides common ad spaces.
The object key to use when uploading the screenshot.
A semicolon separated list of cookies to be used when capturing the screenshot (e.g., 'cookie1=value1;cookie2=value2'). Should be URL encoded.
Capture a screenshot of the first element matched by the given CSS selector. Ignored if full_page is true. Should be URL encoded.
A semicolon separated list of headers to be used when capturing the screenshot (e.g., 'Header1=value1;Header2=value2'). Should be URL encoded.
The quality of the image between 0 and 100. Works with jpeg and webp formats. Default is 80.
The accuracy value, in meters, to use when emulating geo-location. Default is 0.
The latitude to use when emulating geo-location between -90 and 90.
Wait until the provided CSS selector matches an element present in the page before capturing. If no item matches after 15 seconds, capture is aborted with an error.
Set to true to capture the entire page of the target website.
The longitude to use when emulating geo-location between -180 and 180.
The name of the S3 bucket to upload the screenshot to.
The AWS region to use to upload the screenshot to AWS S3. Might be needed for custom S3 compatible storage providers.
The time zone to use when capturing screenshots. Accepts standard time zone database names (e.g., 'Europe/Paris' or 'America/New_York'). Should be URL encoded.
Sets the User-Agent header to emulate a particular device when making screenshots. Should be URL encoded.
Wait until the given criterion is satisfied. Options: dom_loaded, page_loaded, network_idle (default).
An ISO alpha-2 country code designating the country associated with the IP address of the proxy. Only available for custom enterprise plans.
Prevent tracking scripts from running and block requests from popular tracking services.
Custom S3 compatible storage provider endpoint URL. Leave empty to use AWS S3.
Set to true to scroll through the entire page before capturing a screenshot. Useful to trigger animations or lazy loaded elements.
Capture a screenshot with transparency enabled. The background color of the page body should be set to transparent. Only works with png format.
Extract the HTML of the page at the same time the screenshot is made. Only works when response_type is 'json'.
Extract the text of the page at the same time the screenshot is made. Only works when response_type is 'json'.
Specifies the device scale factor. Acceptable values are 1 (standard resolution) or 2 (high definition for retina displays). Default is 1.
The type of response to return. Can be 'image' (binary data) or 'json' (JSON document with url, extracted_html, and extracted_text fields). Default is 'json' for easier handling.
The AWS secret access key to use to upload the screenshot to AWS S3.
A comma separated list of HTTP status codes that should make the API call fail instead of returning a screenshot. Hyphen separated ranges can be used (e.g., '400,404,500-511').
Sets the Accept-Language header on requests to the target URL, allowing screenshots with specific language. Example: 'en-US'.
Also capture the elements that overlap the element targeted by the element parameter.
The width, in pixels, of the thumbnail to generate. The aspect ratio will be preserved. Ignored if full_page is true.
The AWS access key id to use to upload the screenshot to AWS S3.
Prevent cookie banners and popups from being displayed.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
APIFLASH_CAPTURE_WEBSITE_SCREENSHOT_POSTCapture a screenshot of any website. Returns a URL to the generated screenshot image. Supports full-page captures, custom viewport sizes, and multiple image formats (JPEG, PNG, WebP). Use this tool when you need to visually capture web pages for documentation, monitoring, or analysis.
Input parameters
The complete URL of the website to capture (must include protocol, e.g., 'https://example.com').
Wait time in seconds (0-10) before capturing the screenshot. Useful for pages with animations or delayed content loading.
Set to true to force a new screenshot, bypassing any cached version. Use for pages with frequently changing content.
Viewport width in pixels. Default is 1920. Use smaller values (e.g., 375) for mobile views.
Output image format. 'jpeg' (default) is best for most cases, 'png' supports transparency, 'webp' offers smaller file sizes.
Viewport height in pixels. Default is 1080. Ignored when full_page is true.
Image quality from 0-100 (only for jpeg/webp). Default is 80. Higher values = better quality but larger file size.
Set to true to capture the entire scrollable page. When false (default), captures only the visible viewport.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
APIFLASH_GET_QUOTA_INFORMATIONTool to retrieve current API quota usage and limits. Use after authentication to monitor usage and reset times.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
APIFLASH_GET_SCREENSHOT_METADATARetrieve metadata (file size, MIME type) for a previously captured screenshot. Use this tool when you need to check the size or format of a screenshot without downloading the full image. Requires the screenshot URL from a prior capture action.
Input parameters
Full URL of the screenshot image returned from a previous capture. This URL is obtained from the 'url' field in the response of a screenshot capture action.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 70 agents privately built on Nagent that already use Apiflash.
Build on Nagent
Connect Apiflash to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Apiflash, and click "Connect Now." You'll authenticate with an API key — Nagent handles credential storage and refresh automatically. Once connected, Apiflash is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Apiflash is connected, you configure its 5 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Apiflash steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Apiflash event fires, the agent kicks off automatically.
Every Apiflash action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Apiflash ships with 5 pre-built images & design actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Apiflash together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Apiflash-based workflows tailored to your business.