Bestseller
Webpage Screenshot Browser Rendering Content Capture
Convert URL to Snapshot
Capture high-quality webpage screenshots with optional CDN hosting via Cloudflare R2
Data & API Features
Capture full-page or viewport screenshots from any public URL;
Optional CDN hosting on Cloudflare R2 with secure HTTPS URLs;
Customizable viewport size, scale factor, and user agent;
Supports desktop and mobile rendering modes;
Best-effort capture using Cloudflare browser rendering;
Automatic request parameter logging for easier debugging;
Full TLS support and Apple ATS compliant;

Annual Subscription
$99$199
Try it for free!
Sign In Sign in to get a trial key and test all APIs.
Secure payment by Stripe
API Document
HTTP Protocol:HTTPS
HTTP Method:POST
HTTP Endpoint:https://api.gugudata.io/v1/websitetools/url2snapshot?appkey={{appkey}}
Response Type:application/json; charset=utf-8
DEMO Endpoint:https://api.gugudata.io/v1/websitetools/url2snapshot/demo
Live Demo:Try Interactive Demo
Full API Docs:developers.gugudata.io
API Request Parameters
| Name | Type | Is Required | Default Value | Remark |
|---|---|---|---|---|
| appkey | string | true | YOUR_APPKEY | Obtained after payment |
| url | string | true | N/A | The webpage URL to capture |
| responseFormat | string | false | base64 | Return format: base64 (default) or url for CDN image link |
| fullPage | boolean | false | true | Whether to capture the entire page |
| width | integer | false | 1920 | Viewport width in pixels |
| height | integer | false | 1080 | Viewport height in pixels |
| deviceScaleFactor | integer | false | 1 | Device scale factor for HiDPI rendering (1-4) |
| userAgent | string | false | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 | Custom user agent string for rendering |
| isMobile | boolean | false | false | Whether to emulate a mobile device |
API Response Parameters
| Name | Type | Remark |
|---|---|---|
| dataStatus | object | Response status information |
| dataStatus.statusCode | integer | HTTP status code |
| dataStatus.status | string | Response status |
| dataStatus.statusDescription | string | Status description |
| dataStatus.responseDateTime | string | Response timestamp |
| dataStatus.dataTotalCount | integer | Data count |
| dataStatus.requestParameter | string | Logged request parameters |
| data | object | Snapshot result data |
| data.image | string | Base64 string or CDN URL of the screenshot |
| data.content | string | HTML content returned by Cloudflare snapshot |
API Response Status Codes
| Status Code | Explanation of Status Code | Remarks |
|---|---|---|
| 200 | API responding normally | For business status codes, see below under API Custom Status Codes. |
| 400 | Parameter error | |
| 402 | APPKEY error | Please check if the APPKEY provided is the one obtained from the developer center. |
| 403 | Account overdue | Please pay attention to the E-mail reminders regarding order expiration. |
| 429 | Request rate limited | Requests cannot exceed 5 times per second. The CDN layer intelligently determines based on the frequency of IP requests. General high-frequency requests do not trigger this status code. |
| 500 | API response error |



