On-Page & Lighthouse
Content Parsing
Extract and analyze page content — text, structure, and readability scores.
POST
$0.03/call/v1/seo/onpage/contentUsage
const res = await fetch('https://api.yepapi.com/v1/seo/onpage/content', {
method: 'POST',
headers: {
'x-api-key': 'YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"url": "https://vercel.com/blog/next-15"
}),
});
const { data } = await res.json();
console.log(data);curl -X POST https://api.yepapi.com/v1/seo/onpage/content \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://vercel.com/blog/next-15"}'Request Body
| Parameter | Type | Required | Description | Default |
|---|---|---|---|---|
url | string | Yes | Full URL to parse | — |
Response
{
"ok": true,
"data": {
"content": [
{
"url": "https://vercel.com/blog/next-15",
"title": "Introducing Next.js 15",
"description": "Next.js 15 brings...",
"wordCount": 3200,
"automatedReadabilityIndex": 12.5,
"colemanLiauIndex": 11.8,
"fleschReadingEase": 52.3
}
]
}
}Response Fields
| Field | Type | Description |
|---|---|---|
ok | boolean | Whether the request succeeded |
data.content | array | List of parsed content items |
data.content[].url | string | The URL that was parsed |
data.content[].title | string | Page title extracted from the document |
data.content[].description | string | Meta description of the page |
data.content[].wordCount | number | Total word count of the page content |
data.content[].automatedReadabilityIndex | number | Automated Readability Index score (grade level needed to understand) |
data.content[].colemanLiauIndex | number | Coleman-Liau readability index (grade level estimate) |
data.content[].fleschReadingEase | number | Flesch Reading Ease score (higher = easier to read, 0-100) |
Under the Hood
Extracts clean text content and computes readability metrics.