Article summary (AI)
POST https://tools.yukai.uk/api/v1/article/summary
Extract an article and summarize it with AI. The same extraction as /api/v1/article, then an AI summary (Llama 3.3 70B) grounded in the article text only. The body is returned only with includeContent=true. Or send your own text (POST) to summarize it without a URL. Non-articles are refused (422 not_an_article) before the model runs; paywall teasers are never summarized. summaryGenerated: true and header x-summary-generated: true mark answers that contain a summary.
Cost
Credits: 54 ($0.0054) per successful call. Failed calls are free. Source price: web-page-summarizer/page-summarized.
Input
Send a JSON body (POST) or the same fields as a query string (GET).
No field is required.
| Field | Type | Default | Description |
|---|---|---|---|
url | string | Article URL (or send text). A bare domain is accepted; private and local addresses are refused. | |
format | string | "markdown" | Body format: markdown, text (plain text) or both. |
maxChars | integer | 200000 | Cut the body at this many characters (truncated tells you). Counts (words, tokens) always describe the whole article. |
includeLinks | boolean | false | Also return the absolute links inside the article body (up to 500). |
allowNonArticle | boolean | false | Return home pages, listings, product pages and paywall teasers too (with isArticle: false and pageType) instead of 422 not_an_article. Bot checks, login walls, consent pages and empty pages are always refused. |
render | string | "auto" | auto (default): plain HTTP first, a real Chrome browser only when the site blocks plain requests or needs JavaScript. never: HTTP only. always: browser only. |
timeoutMs | integer | 20000 | Page-load timeout in milliseconds. |
summary | string | "paragraph" | Summary shape: tldr (one sentence), paragraph or bullets (up to 7). |
maxWords | integer | Approximate summary length. Default: 30 (tldr), 100 (paragraph), 120 (bullets). | |
language | string | Write the summary in this language (e.g. English, Spanish, Traditional Chinese). Default: the article's language. | |
focus | string | What the summary should focus on (e.g. numbers and dates). | |
includeContent | boolean | false | Also return the article body (markdown / text, per format). |
text | string | Your own text to summarize instead of a URL (200 to 100,000 characters; send it in a POST body). Then url is not needed. | |
title | string | Optional title for text. |
Examples
Replace tt_live_XXXX with your key from the pricing page.
curl
curl -i -X POST "https://tools.yukai.uk/api/v1/article/summary" \
-H "Authorization: Bearer tt_live_XXXX" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.theguardian.com/us-news/2026/sep/30/trump-state-department-human-rights-fund"}'JavaScript (fetch)
const res = await fetch("https://tools.yukai.uk/api/v1/article/summary", {
method: "POST",
headers: { "Authorization": "Bearer tt_live_XXXX", "Content-Type": "application/json" },
body: JSON.stringify({"url":"https://www.theguardian.com/us-news/2026/sep/30/trump-state-department-human-rights-fund"}),
});
console.log(res.status, res.headers.get("x-credits-charged"), res.headers.get("x-credits-balance"));
console.log(await res.json());Python (requests)
import requests
r = requests.post(
"https://tools.yukai.uk/api/v1/article/summary",
headers={"Authorization": "Bearer tt_live_XXXX"},
json={"url": "https://www.theguardian.com/us-news/2026/sep/30/trump-state-department-human-rights-fund"},
timeout=120,
)
print(r.status_code, r.headers.get("x-credits-charged"), r.headers.get("x-credits-balance"))
print(r.json())
Response
JSON with "success": true and the result fields; on failure {"success": false, "error": {"code", "message", "retryable"}} and no credits are used. Every answer carries x-credits-charged (credits used) and x-credits-balance (balance after the call); check the balance any time with GET https://tools.yukai.uk/v1/billing/balance.
Full field list and response schema: OpenAPI spec article-summary (its servers entry is the marketplace gateway; call https://tools.yukai.uk with your key).