Ultimate Screenshot avatar
Ultimate Screenshot

Pricing

$4.99/month + usage

Go to Store
Ultimate Screenshot

Ultimate Screenshot

Developed by

dz_omar

dz_omar

Maintained by Community

πŸš€ Capture ANY website as HD screenshots, videos, or PDFs! πŸ“Έ 100+ device presets (iPhone, Android, tablets). Perfect for web scraping, monitoring, testing & marketing. Export as PNG/JPEG/PDF/MP4/GIF. Fast, reliable, proxy-ready. Try FREE now!

5.0 (5)

Pricing

$4.99/month + usage

14

Total users

57

Monthly users

18

Runs succeeded

>99%

Last modified

4 days ago

You can access the Ultimate Screenshot programmatically from your own applications by using the Apify API. You can also choose the language preference from below. To use the Apify API, you’ll need an Apify account and your API token, found in Integrations settings in Apify Console.

{
"openapi": "3.0.1",
"info": {
"version": "0.2",
"x-build-id": "BgpenG2YRCfbJfRAj"
},
"servers": [
{
"url": "https://api.apify.com/v2"
}
],
"paths": {
"/acts/dz_omar~ultimate-screenshot/run-sync-get-dataset-items": {
"post": {
"operationId": "run-sync-get-dataset-items-dz_omar-ultimate-screenshot",
"x-openai-isConsequential": false,
"summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
"tags": [
"Run Actor"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/inputSchema"
}
}
}
},
"parameters": [
{
"name": "token",
"in": "query",
"required": true,
"schema": {
"type": "string"
},
"description": "Enter your Apify token here"
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/acts/dz_omar~ultimate-screenshot/runs": {
"post": {
"operationId": "runs-sync-dz_omar-ultimate-screenshot",
"x-openai-isConsequential": false,
"summary": "Executes an Actor and returns information about the initiated run in response.",
"tags": [
"Run Actor"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/inputSchema"
}
}
}
},
"parameters": [
{
"name": "token",
"in": "query",
"required": true,
"schema": {
"type": "string"
},
"description": "Enter your Apify token here"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/runsResponseSchema"
}
}
}
}
}
}
},
"/acts/dz_omar~ultimate-screenshot/run-sync": {
"post": {
"operationId": "run-sync-dz_omar-ultimate-screenshot",
"x-openai-isConsequential": false,
"summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
"tags": [
"Run Actor"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/inputSchema"
}
}
}
},
"parameters": [
{
"name": "token",
"in": "query",
"required": true,
"schema": {
"type": "string"
},
"description": "Enter your Apify token here"
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
}
},
"components": {
"schemas": {
"inputSchema": {
"type": "object",
"required": [
"linkUrls"
],
"properties": {
"fullPage": {
"title": "πŸ–ΌοΈ Full Page Screenshot",
"type": "boolean",
"description": "Capture the entire page length (great for full-page screenshots or when combined with MP4/GIF output). When enabled with video formats, creates a scrolling capture effect.",
"default": false
},
"enableSSL": {
"title": "πŸ”’ SSL Certificate Validation",
"type": "boolean",
"description": "Enable strict SSL certificate checking for secure connections. Disable only if you encounter certificate errors with trusted sites.",
"default": false
},
"linkUrls": {
"title": "🌐 Target URLs",
"type": "array",
"description": "List of web pages to capture (supports multiple URLs). Example: [\"https://example.com\", \"https://another-site.com\"]",
"default": [
"https://apify.com",
"http://ipwho.is/"
],
"items": {
"type": "string"
}
},
"outputFormat": {
"title": "πŸ’Ύ Output Format",
"enum": [
"jpeg",
"png",
"pdf",
"gif",
"mp4"
],
"type": "string",
"description": "Select your preferred output file format. Choose MP4/GIF for screen recordings, PDF for documents, or PNG/JPEG for static images.",
"default": "jpeg"
},
"waitUntil": {
"title": "⏱️ Page Load Condition",
"enum": [
"load",
"domcontentloaded",
"networkidle0",
"networkidle2"
],
"type": "string",
"description": "Determine when the page is considered fully loaded before capturing. 'networkidle0' waits until no network requests remain.",
"default": "networkidle0"
},
"timeouT": {
"title": "⏳ Page Load Timeout",
"minimum": 1,
"maximum": 300,
"type": "integer",
"description": "Maximum wait time (in seconds) for the page to load before timing out. Increase for slower websites.",
"default": 15
},
"maxRetries": {
"title": "πŸ”„ Maximum Retries",
"minimum": 0,
"maximum": 10,
"type": "integer",
"description": "Number of automatic retry attempts if a page fails to load.",
"default": 3
},
"delayBeforeScreenshot": {
"title": "⏸️ Pre-Capture Delay",
"minimum": 0,
"maximum": 10000,
"type": "integer",
"description": "Pause (in milliseconds) after page loads before capturing. Useful for waiting on animations or lazy-loaded content.",
"default": 1500
},
"infiniteScroll": {
"title": "∞ Infinite Scroll Capture",
"type": "boolean",
"description": "Continue scrolling indefinitely for infinite-scroll pages. Disable to stop after timefullPagE duration.",
"default": false
},
"timefullPagE": {
"title": "πŸ•’ Max Scroll Duration",
"minimum": 1,
"maximum": 300,
"type": "integer",
"description": "Maximum time (seconds) to spend capturing full-page content (ignored if infiniteScroll=true).",
"default": 10
},
"frameCounT": {
"title": "πŸ“· Total Frames",
"minimum": 1,
"maximum": 1000,
"type": "integer",
"description": "Number of frames to capture for video/GIF output. More frames = longer video/smoother animation.",
"default": 15
},
"frameIntervaL": {
"title": "⏱️ Frame Interval",
"type": "integer",
"description": "Milliseconds between each frame capture. Lower values = smoother video but larger files.",
"default": 10
},
"frame": {
"title": "🎞️ Frames Per Second (FPS)",
"minimum": 1,
"maximum": 120,
"type": "integer",
"description": "Playback frame rate for video/GIF output. Standard values: 24 (cinematic), 30 (smooth), 60 (ultra-smooth).",
"default": 10
},
"scrollSteP": {
"title": "πŸ–±οΈ Scroll Step Size",
"minimum": 10,
"maximum": 1000,
"type": "integer",
"description": "Pixels to scroll between frames (smaller values = smoother scrolling capture). Only applies when Full Page Screenshot is enabled.",
"default": 300
},
"printBackground": {
"title": "🎨 Print Backgrounds",
"type": "boolean",
"description": "Include background colors and images in PDF output. Disable for cleaner text-only documents.",
"default": true
},
"formaT": {
"title": "πŸ“ Paper Size",
"enum": [
"A4",
"LETTER",
"LEGAL",
"TABLOID",
"LEDGER",
"A0",
"A1",
"A2",
"A3",
"A5",
"A6"
],
"type": "string",
"description": "Select standard paper size for PDF output. Choose A4 for international, Letter for US standards.",
"default": "A4"
},
"toP": {
"title": "⬆️ Top Margin",
"minimum": 0,
"maximum": 100,
"type": "integer",
"description": "PDF top margin in millimeters. Set to 0 for edge-to-edge printing.",
"default": 0
},
"righT": {
"title": "➑️ Right Margin",
"minimum": 0,
"maximum": 100,
"type": "integer",
"description": "PDF right margin in millimeters.",
"default": 0
},
"bottoM": {
"title": "⬇️ Bottom Margin",
"minimum": 0,
"maximum": 100,
"type": "integer",
"description": "PDF bottom margin in millimeters.",
"default": 0
},
"lefT": {
"title": "⬅️ Left Margin",
"minimum": 0,
"maximum": 100,
"type": "integer",
"description": "PDF left margin in millimeters.",
"default": 0
},
"device": {
"title": "πŸ“± Device Preset",
"enum": [
"Blackberry PlayBook",
"Blackberry PlayBook landscape",
"BlackBerry Z30",
"BlackBerry Z30 landscape",
"Galaxy Note 3",
"Galaxy Note 3 landscape",
"Galaxy Note II",
"Galaxy Note II landscape",
"Galaxy S III",
"Galaxy S III landscape",
"Galaxy S5",
"Galaxy S5 landscape",
"Galaxy S8",
"Galaxy S8 landscape",
"Galaxy S9+",
"Galaxy S9+ landscape",
"Galaxy Tab S4",
"Galaxy Tab S4 landscape",
"iPad",
"iPad landscape",
"iPad (gen 6)",
"iPad (gen 6) landscape",
"iPad (gen 7)",
"iPad (gen 7) landscape",
"iPad Mini",
"iPad Mini landscape",
"iPad Pro",
"iPad Pro landscape",
"iPad Pro 11",
"iPad Pro 11 landscape",
"iPhone 4",
"iPhone 4 landscape",
"iPhone 5",
"iPhone 5 landscape",
"iPhone 6",
"iPhone 6 landscape",
"iPhone 6 Plus",
"iPhone 6 Plus landscape",
"iPhone 7",
"iPhone 7 landscape",
"iPhone 7 Plus",
"iPhone 7 Plus landscape",
"iPhone 8",
"iPhone 8 landscape",
"iPhone 8 Plus",
"iPhone 8 Plus landscape",
"iPhone SE",
"iPhone SE landscape",
"iPhone X",
"iPhone X landscape",
"iPhone XR",
"iPhone XR landscape",
"iPhone 11",
"iPhone 11 landscape",
"iPhone 11 Pro",
"iPhone 11 Pro landscape",
"iPhone 11 Pro Max",
"iPhone 11 Pro Max landscape",
"iPhone 12",
"iPhone 12 landscape",
"iPhone 12 Pro",
"iPhone 12 Pro landscape",
"iPhone 12 Pro Max",
"iPhone 12 Pro Max landscape",
"iPhone 12 Mini",
"iPhone 12 Mini landscape",
"iPhone 13",
"iPhone 13 landscape",
"iPhone 13 Pro",
"iPhone 13 Pro landscape",
"iPhone 13 Pro Max",
"iPhone 13 Pro Max landscape",
"iPhone 13 Mini",
"iPhone 13 Mini landscape",
"iPhone 14",
"iPhone 14 landscape",
"iPhone 14 Plus",
"iPhone 14 Plus landscape",
"iPhone 14 Pro",
"iPhone 14 Pro landscape",
"iPhone 14 Pro Max",
"iPhone 14 Pro Max landscape",
"iPhone 15",
"iPhone 15 landscape",
"iPhone 15 Plus",
"iPhone 15 Plus landscape",
"iPhone 15 Pro",
"iPhone 15 Pro landscape",
"iPhone 15 Pro Max",
"iPhone 15 Pro Max landscape",
"JioPhone 2",
"JioPhone 2 landscape",
"Kindle Fire HDX",
"Kindle Fire HDX landscape",
"LG Optimus L70",
"LG Optimus L70 landscape",
"Microsoft Lumia 550",
"Microsoft Lumia 950",
"Microsoft Lumia 950 landscape",
"Nexus 10",
"Nexus 10 landscape",
"Nexus 4",
"Nexus 4 landscape",
"Nexus 5",
"Nexus 5 landscape",
"Nexus 5X",
"Nexus 5X landscape",
"Nexus 6",
"Nexus 6 landscape",
"Nexus 6P",
"Nexus 6P landscape",
"Nexus 7",
"Nexus 7 landscape",
"Nokia Lumia 520",
"Nokia Lumia 520 landscape",
"Nokia N9",
"Nokia N9 landscape",
"Pixel 2",
"Pixel 2 landscape",
"Pixel 2 XL",
"Pixel 2 XL landscape",
"Pixel 3",
"Pixel 3 landscape",
"Pixel 4",
"Pixel 4 landscape",
"Pixel 4a (5G)",
"Pixel 4a (5G) landscape",
"Pixel 5",
"Pixel 5 landscape",
"Moto G4",
"Moto G4 landscape"
],
"type": "string",
"description": "Emulate popular mobile devices or browsers. Select 'None' to use custom width/height below."
},
"window_Width": {
"title": "πŸ“ Custom Width",
"minimum": 100,
"maximum": 5000,
"type": "integer",
"description": "Browser width in pixels (default 1920). Used when no Device Preset is selected.",
"default": 1920
},
"window_Height": {
"title": "πŸ“ Custom Height",
"minimum": 100,
"maximum": 5000,
"type": "integer",
"description": "Browser height in pixels (default 1080). Used when no Device Preset is selected.",
"default": 1080
},
"scrollToBottom": {
"title": "πŸ‘‡ Auto-Scroll to Bottom",
"type": "boolean",
"description": "Automatically scroll to page bottom before capture. Useful for pages with lazy-loaded content.",
"default": false
},
"delayAfterScrolling": {
"title": "⏸️ Post-Scroll Delay",
"minimum": 0,
"maximum": 10000,
"type": "integer",
"description": "Milliseconds to wait after scrolling before capture. Allows content to settle.",
"default": 300
},
"cookies": {
"title": "πŸͺ Custom Cookies",
"type": "array",
"description": "Add cookies to maintain logged-in sessions or bypass paywalls. Format: [{\"name\":\"cookie1\",\"value\":\"value1\",\"domain\":\"example.com\"}]",
"default": []
},
"proxyConfig": {
"title": "πŸ”— Proxy Configuration",
"type": "object",
"description": "Configure proxies to avoid blocks, bypass geo-restrictions, or simulate different locations.",
"default": {
"useApifyProxy": false
}
}
}
},
"runsResponseSchema": {
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"actId": {
"type": "string"
},
"userId": {
"type": "string"
},
"startedAt": {
"type": "string",
"format": "date-time",
"example": "2025-01-08T00:00:00.000Z"
},
"finishedAt": {
"type": "string",
"format": "date-time",
"example": "2025-01-08T00:00:00.000Z"
},
"status": {
"type": "string",
"example": "READY"
},
"meta": {
"type": "object",
"properties": {
"origin": {
"type": "string",
"example": "API"
},
"userAgent": {
"type": "string"
}
}
},
"stats": {
"type": "object",
"properties": {
"inputBodyLen": {
"type": "integer",
"example": 2000
},
"rebootCount": {
"type": "integer",
"example": 0
},
"restartCount": {
"type": "integer",
"example": 0
},
"resurrectCount": {
"type": "integer",
"example": 0
},
"computeUnits": {
"type": "integer",
"example": 0
}
}
},
"options": {
"type": "object",
"properties": {
"build": {
"type": "string",
"example": "latest"
},
"timeoutSecs": {
"type": "integer",
"example": 300
},
"memoryMbytes": {
"type": "integer",
"example": 1024
},
"diskMbytes": {
"type": "integer",
"example": 2048
}
}
},
"buildId": {
"type": "string"
},
"defaultKeyValueStoreId": {
"type": "string"
},
"defaultDatasetId": {
"type": "string"
},
"defaultRequestQueueId": {
"type": "string"
},
"buildNumber": {
"type": "string",
"example": "1.0.0"
},
"containerUrl": {
"type": "string"
},
"usage": {
"type": "object",
"properties": {
"ACTOR_COMPUTE_UNITS": {
"type": "integer",
"example": 0
},
"DATASET_READS": {
"type": "integer",
"example": 0
},
"DATASET_WRITES": {
"type": "integer",
"example": 0
},
"KEY_VALUE_STORE_READS": {
"type": "integer",
"example": 0
},
"KEY_VALUE_STORE_WRITES": {
"type": "integer",
"example": 1
},
"KEY_VALUE_STORE_LISTS": {
"type": "integer",
"example": 0
},
"REQUEST_QUEUE_READS": {
"type": "integer",
"example": 0
},
"REQUEST_QUEUE_WRITES": {
"type": "integer",
"example": 0
},
"DATA_TRANSFER_INTERNAL_GBYTES": {
"type": "integer",
"example": 0
},
"DATA_TRANSFER_EXTERNAL_GBYTES": {
"type": "integer",
"example": 0
},
"PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
"type": "integer",
"example": 0
},
"PROXY_SERPS": {
"type": "integer",
"example": 0
}
}
},
"usageTotalUsd": {
"type": "number",
"example": 0.00005
},
"usageUsd": {
"type": "object",
"properties": {
"ACTOR_COMPUTE_UNITS": {
"type": "integer",
"example": 0
},
"DATASET_READS": {
"type": "integer",
"example": 0
},
"DATASET_WRITES": {
"type": "integer",
"example": 0
},
"KEY_VALUE_STORE_READS": {
"type": "integer",
"example": 0
},
"KEY_VALUE_STORE_WRITES": {
"type": "number",
"example": 0.00005
},
"KEY_VALUE_STORE_LISTS": {
"type": "integer",
"example": 0
},
"REQUEST_QUEUE_READS": {
"type": "integer",
"example": 0
},
"REQUEST_QUEUE_WRITES": {
"type": "integer",
"example": 0
},
"DATA_TRANSFER_INTERNAL_GBYTES": {
"type": "integer",
"example": 0
},
"DATA_TRANSFER_EXTERNAL_GBYTES": {
"type": "integer",
"example": 0
},
"PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
"type": "integer",
"example": 0
},
"PROXY_SERPS": {
"type": "integer",
"example": 0
}
}
}
}
}
}
}
}
}
}

Website Screenshot Tool - Mobile & Desktop Capture OpenAPI definition

OpenAPI is a standard for designing and describing RESTful APIs, allowing developers to define API structure, endpoints, and data formats in a machine-readable way. It simplifies API development, integration, and documentation.

OpenAPI is effective when used with AI agents and GPTs by standardizing how these systems interact with various APIs, for reliable integrations and efficient communication.

By defining machine-readable API specifications, OpenAPI allows AI models like GPTs to understand and use varied data sources, improving accuracy. This accelerates development, reduces errors, and provides context-aware responses, making OpenAPI a core component for AI applications.

You can download the OpenAPI definitions for Ultimate Screenshot from the options below:

If you’d like to learn more about how OpenAPI powers GPTs, read our blog post.

You can also check out our other API clients: