API Docs/Content & LLM
POST

Article Extractor API

Free Public API

Extract clean article text, author, publish date, reading time, and distraction-free content.

Try in Live Web Tool
POSThttps://api.headless-lender.com/api/v1/article
Public: No Key Needed•Highest Free Quota: 1,000 Req/Mo + 10h Browsers (No Card Required)

Overview & Architecture

Powered by Mozilla Readability and heuristic content scoring algorithms, Article Extractor strips ads, cookie banners, sidebars, and popups to return the pure reading text, excerpt, byline, and estimated reading time.

Distraction-free article reader mode
Automated byline, author, and date detection
Estimated reading time and word count
Strips paywalls, ads, and newsletter modals
Playwright Execution & Valkey Caching Pipeline

Because this endpoint utilizes full headless Chromium rendering, dynamic JavaScript and single-page apps (SPAs) are executed completely before conversion:

1. Cold Scrape (Cache MISS)~800ms – 2.5s

Chromium initializes, fetches the URL, executes client JavaScript, resolves DOM mutations, and generates output.

2. Repeat Request (Cache HIT)~5ms – 15ms

Returned instantly from Valkey/Redis cache with header X-Lender-Cache: HIT (15-minute TTL).

Code Integration Examples

Instant Public Endpoint: Zero configuration, no API key needed. Want our highest free quota? Get 1,000 free requests/month + 10 hours of cloud browsers with a free key (No credit card required).
curl -X POST https://api.headless-lender.com/api/v1/article \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://blog.cloudflare.com"
  }'

Headers & Authentication Standard

1. Public Access (No Key)

No Authorization header required. Simply send a JSON POST request. Perfect for quick prototypes, small scripts, and low-volume scraping.

Content-Type: application/json

2. Free API Key (Highest Free Quota)

1,000 Req/Mo Free

Sign up in 10s with no credit card required. Unlocks 1,000 free monthly requests, 600 browser minutes (10 hours), 120 req/min burst limits, and cache-bypass controls.

Authorization: Bearer hl_live_your_api_key_here
Access ModeMonthly QuotaCloud Browser TimeBurst LimitCredit CardAction
Public AnonymousDaily IP Allowance5-min trial sandbox10 req/minNoneInstant (No Setup)
Free Account (Highest Quota)1,000 Req / Month600 Mins (10 Hours)120 req/minZero ($0 forever)Claim Free Key →

Request Body Parameters

FieldTypeRequiredDefaultDescription
urlstringrequired—Article or blog URL to analyze.
waitUntil'domcontentloaded' | 'load' | 'networkidle'optional'domcontentloaded'Wait condition before parsing.

Response Schema & Example

200 OK — application/jsonDuration: ~800ms (Cold) / ~8ms (Cached)
{
  "url": "https://blog.cloudflare.com",
  "title": "How Cloudflare delivers 50 million requests per second",
  "byline": "Cloudflare Engineering Team",
  "excerpt": "A deep dive into the edge architecture powering millions of concurrent HTTP requests...",
  "siteName": "The Cloudflare Blog",
  "textContent": "Every day, our network handles...",
  "readingTimeMinutes": 6,
  "wordCount": 1420,
  "isArticle": true,
  "durationMs": 310
}