API features
Static webpage capture
Save a public webpage as an HTML document for later use.
Downloadable HTML output
Receive an HTTPS file URL that applications can download or store.
Readable page content
Preserve supported text and static page structure in the captured document.
Public URL input
Submit a complete HTTP or HTTPS webpage URL.
Content processing
Use captured HTML as input for review, parsing, migration, or indexing.
Archive workflows
Add webpage records to research, compliance, and content-monitoring workflows.
API Document
HTTP Protocol:HTTPS
HTTP Method:POST
HTTP Endpoint:https://api.gugudata.io/v1/websitetools/url2html
Response Type:application/json; charset=utf-8
DEMO Endpoint:https://api.gugudata.io/v1/websitetools/url2html/demo
Live Demo:Try Interactive Demo
Postman Collection:Run in Postman
API Request Parameters
| Name | Type | Is Required | Default Value | Remark |
|---|---|---|---|---|
| appkey | string | true | YOUR_APPKEY | API key used to authenticate the request. |
| url | string | true | YOUR_VALUE | Complete public HTTP or HTTPS webpage URL to capture. |
API Response Parameters
| Name | Type | Remark |
|---|---|---|
| DataStatus.StatusCode | integer | Application-level status code. |
| DataStatus.StatusDescription | string | Human-readable application status message. |
| DataStatus.ResponseDateTime | string | Time at which the response was generated. |
| DataStatus.DataTotalCount | integer | Number of matching or returned records for this request. |
| Data | string | HTTPS URL of the generated static HTML file. |
API Response Status Codes
| 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 request frequency and retry with backoff. If a trial allowance is exhausted, check Trial Keys for remaining requests and subscribe to continue. |
| 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. |
Remote MCP
Use this API through GuGuData Remote MCP
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"
}
}
}Code Snippets
Frequently asked questions
What does the URL-to-HTML API create?
It captures a public webpage as a downloadable static HTML document. Use the result for later parsing, content review, indexing, or other workflows that need an HTML file.
Does the API return HTML inline or a file URL?
The documented Data value is an HTTPS URL for the generated static HTML file. Download the file before passing its contents into a parser or storing it in your own archive.
Does one request create a complete offline copy of a website?
No. The input is one webpage URL. The documented response does not promise a recursive website mirror with every linked page and asset bundled for offline use.
Will interactive features continue to work in the saved file?
Do not assume so. The result is static HTML, and interactive behavior may depend on external scripts, APIs, authentication, or resources that are not part of the downloaded document.
Can I provide a raw HTML string instead of a URL?
This endpoint takes a complete public HTTP or HTTPS webpage URL. It does not document a raw-HTML input field, so choose a different operation when you already have the HTML.
What does the 5 requests per second limit mean?
It is a request-rate limit, not a concurrency allowance. Keep your request rate at or below 5 per second. If the service returns a rate-limit response, reduce the frequency and retry with backoff.
Is total paid usage limited?
There is no total request cap during an active paid subscription and no usage-based overage charge.
How does the free trial work?
Each account can receive a limited trial key. Requests are shared across APIs in the same category. Check Trial Keys for the exact allowance and remaining requests.
How do renewal and cancellation work?
The plan renews annually until canceled. Manage or cancel the renewal from Dashboard → Orders & Billing. Access continues through the paid period after cancellation. See the Terms of Service for the current refund policy. If the billing portal is unavailable, contact support.
Service terms
Read our service terms and privacy policy before subscribing.




