
Webpage to Image Rendering
Render a webpage as an image with configurable viewport settings
Capture a webpage screenshot and return its image URL
This Webpage Screenshot Capture feature is available through the documented endpoint and can be used in application, automation, or data workflows.
Use this integration capability when exposing results to production applications, internal tools, or customer-facing workflows.
This Webpage Screenshot Capture feature is available through the documented endpoint and can be used in application, automation, or data workflows.
Use this capability when your Webpage Screenshot Capture workflow needs the supported option without custom handling in your own application.
This Webpage Screenshot Capture feature is available through the documented endpoint and can be used in application, automation, or data workflows.
This Webpage Screenshot Capture feature is available through the documented endpoint and can be used in application, automation, or data workflows.
This Webpage Screenshot Capture feature is available through the documented endpoint and can be used in application, automation, or data workflows.

HTTP Protocol:HTTPS
HTTP Method:POST
HTTP Endpoint:https://api.gugudata.io/v1/websitetools/url2snapshot
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
| Name | Type | Is Required | Default Value | Remark |
|---|---|---|---|---|
| appkey | string | true | YOUR_APPKEY | Application key used for request authentication. Supply the value as a query parameter, form field, or multipart field according to the request content type. |
| url | string | true | Target webpage URL. | |
| responseFormat | string | false | base64 | Requested output format for the generated response. |
| fullPage | boolean | false | true | Whether the capture should include the full page height instead of the visible viewport only. |
| width | integer | false | 1920 | Output width in pixels. |
| height | integer | false | 1080 | Output height in pixels. |
| deviceScaleFactor | integer | false | 1 | Device scale factor used during page rendering. |
| 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 | Optional user agent string used for page rendering. |
| isMobile | boolean | false | false | Whether the renderer should emulate a mobile device viewport. |
| Name | Type | Remark |
|---|---|---|
| dataStatus | object | Response metadata returned by the current v1 contract. |
| dataStatus.requestParameter | string | Normalized request parameters echoed by the service. Sensitive credentials are omitted when available. |
| dataStatus.statusCode | integer | Application-level status code returned by the current v1 contract. Successful demo responses currently return `200`. |
| dataStatus.status | string | Application-level status enum. Successful demo responses currently return `SUCCESS`. |
| dataStatus.statusDescription | string | Application-level status message returned by the current v1 contract. |
| dataStatus.responseDateTime | string | Response timestamp returned by the current service contract. |
| dataStatus.dataTotalCount | integer | Total number of records that match the request. |
| data | object | Primary response payload returned by the endpoint. |
| data.image | string | Base64 string or CDN URL of the screenshot |
| data.content | string | HTML content returned by Cloudflare snapshot |
| Status Code | Explanation of Status Code | Remarks |
|---|---|---|
| 200 | Request processed successfully. | Some endpoints expose a separate application-level status field in the response body, such as `dataStatus.statusCode`. |
| 400 | Invalid request parameters or request format. | Check required fields, data types, and request body format. |
| 401 | Missing or unknown application key. | Provide a valid `appkey` with the request. |
| 403 | The application key is recognized but access is not allowed. | The key may be expired, inactive, or not permitted for the requested API. |
| 429 | Request rate or trial usage limit exceeded. | Reduce concurrency or retry after the limit window resets. |
| 500 | Internal service error. | Retry later or contact support if the error persists. |
| 503 | Upstream service unavailable. | Retry later; the requested upstream dependency is temporarily unavailable. |
Connect your AI client once, authorize in the browser, and the client can use the GuGuData API tools available to your account. You do not need to paste an appkey into the MCP client.
https://mcp.gugudata.io/mcp{
"mcpServers": {
"gugudata": {
"url": "https://mcp.gugudata.io/mcp",
"transportType": "streamable-http"
}
}
}
Render a webpage as an image with configurable viewport settings

Convert a webpage into clean Markdown for content pipelines

Capture a webpage as static HTML for archiving or processing

Convert HTML or a public webpage into a downloadable PDF