
LLM-ready Article Content Extraction API
Extract clean, LLM-ready article content and metadata
Extract ordered image candidates from an article
Collect the hero image and images from the readable article area instead of unrelated page furniture.
Resolve relative and lazy-loaded sources against the final page URL for easier downstream use.
Select the strongest available image candidate from responsive srcset declarations.
Preserve meaningful article order while removing repeated final image URLs.
Receive alternative text and declared width or height values when the page provides them.
Build image audits, media inventories, content previews, accessibility checks, and editorial pipelines.

HTTP Protocol:HTTPS
HTTP Method:POST
HTTP Endpoint:https://api.gugudata.io/v1/websitetools/fetchcontentimages
Response Type:application/json; charset=utf-8
DEMO Endpoint:https://api.gugudata.io/v1/websitetools/fetchcontentimages/demo
Live Demo:Try Interactive Demo
Full API Docs:developers.gugudata.io
| Name | Type | Is Required | Default Value | Remark |
|---|---|---|---|---|
| appkey | string | true | YOUR_APPKEY | Obtained after payment |
| url | string | true | https://gugudata.github.io/gugudata-io/guides/extract-images-from-article-url-api-seo-guide/ | Complete public HTTP or HTTPS article URL, up to 2048 characters |
| Name | Type | Remark |
|---|---|---|
| url | string | Final page URL after redirects |
| images | array<object> | Ordered, deduplicated article image candidates |
| images.src | string | Selected image source value |
| images.absoluteUrl | string | Final absolute HTTP or HTTPS image URL |
| images.alt | string | Image alternative text, or an empty string |
| images.width | string | null | HTML width attribute when available |
| images.height | string | null | HTML height attribute when available |
| 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. |
| 422 | The target response cannot be processed as a readable article. | Use an HTML article page with readable body content and a valid redirect chain. |
| 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. |
| 502 | The target website could not be reached successfully. | Retry later or verify that the target website is available. |
| 503 | The extraction service is temporarily unavailable. | Retry later or contact support if the error persists. |
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"
}
}
}
Extract clean, LLM-ready article content and metadata

Extract structured, readable content from a webpage or raw HTML

Extract hyperlinks and destinations from a webpage

Extract webpage fields with a prompt.