appkey (string, required): 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, required): Target webpage URL.
prompt (string, required): Natural-language instruction that describes the structured data to extract from the webpage.
Response Fields:
dataStatus (object, required): Response metadata returned by the current v1 contract.
dataStatus.requestParameter (string, required): Normalized request parameters echoed by the service. Sensitive credentials are omitted when available.
dataStatus.statusCode (integer, required): Application-level status code returned by the current v1 contract. Successful demo responses currently return 200.
dataStatus.status (string, required): Application-level status enum. Successful demo responses currently return SUCCESS.
dataStatus.statusDescription (string, required): Application-level status message returned by the current v1 contract.
dataStatus.responseDateTime (string, required): Response timestamp returned by the current service contract.
dataStatus.dataTotalCount (integer, required): Total number of records that match the request.
data (object, required): Primary response payload returned by the endpoint.
HTTP Status Codes:
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.
Business Status Codes:
200 Normal return: Structured JSON data successfully extracted from the webpage
400 Parameter error: Missing or invalid parameters (url and prompt are both required, url must be valid HTTP/HTTPS)
429 Request frequency limited: Cannot exceed 100 requests per second
403 Account in arrears: Payment required to continue using the service
402 APPKEY error: Please check whether the APPKEY passed is obtained from the developer center
500 API response error: Internal server error during JSON extraction
503 Service unavailable: External AI service temporarily unavailable
Key Features:
AI-powered structured data extraction from any webpage.
Custom prompt-based extraction for flexible data schemas.
Returns clean, structured JSON ready for programmatic use.
Supports any publicly accessible HTTP/HTTPS webpage.
Handles JavaScript-rendered pages via headless browser.
Full API support for HTTPS (TLS v1.0 / v1.1 / v1.2 / v1.3).
Fully compatible with Apple ATS.
Nationwide multi-node CDN deployment.
Ultra-fast response, API interface load balancing built with multiple servers.
{"url":"https://www.gugudata.io","prompt":"Extract the title and main content."}
Request Code Samples
Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl--location--globoff'https://api.gugudata.io/v1/websitetools/url2json?appkey=sk-******' \
--header'Content-Type: application/json' \
--data'{
"url": "https://www.gugudata.io",
"prompt": "Extract the title and main content."
}'