apyhub
Back
DATA EXTRACTION · SEO

Extract Article Text API

What it does

The Extract Article Text API is an article extractor that turns a news story or blog post into clean text. Send an article URL and get back the body copy and title, with the navigation, ads, sidebars and other page boilerplate removed.

It is one POST endpoint that takes a single url field. The response includes text for the cleaned article body, title for the headline, length for the size of the extracted text, final_url for the address after any redirects, and content_type for the fetched resource. Store final_url rather than the URL you sent, since shortened and tracking links often redirect somewhere else.

Common uses include news article scraping and aggregation, research and media monitoring, building datasets from published content, and feeding clean article text into AI models, summarizers and RAG pipelines without wasting tokens on menus and footers.

If you need every piece of visible text on a page, including navigation and footers, use Extract Text from Website. If you already have the page HTML and want the readable content from it, use Extract Readable Content from HTML. If you want the article analyzed as well as extracted, use Extract and Analyze Content from Web Page.

You can try it right here in the playground. Start for free with 5 API calls a day, no card required, and test it on your own article URLs before you commit.

The API is also available through ApyHub MCP, so AI agents can call it directly to read an article.

POST
Fetch a URL and return clean article text with metadata
https://api.eu.apyhub.com/dosvak/extract-article-text

QUICKSTART

GUIDE

Quickstart

Send the article URL to extract its text, title, and metadata.

curl -X POST "https://api.eu.apyhub.com/dosvak/extract-article-text" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://apyhub.com"}'

What you'll get back

Returns a JSON object with these top-level fields: url (string), text (string), title (string), length (integer), final_url (string), and content_type (string).

{
  "url": "https://techcrunch.com/2026/07/22/article",
  "text": "Article text...",
  "title": "Article title",
  "length": 1234,
  "final_url": "https://techcrunch.com/2026/07/22/article",
  "content_type": "text/html"
}
TRY ITLIVE · 10 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body*

About this endpoint

What it does

Fetches the article at the provided URL and returns extracted clean text plus metadata about the fetched page.

Request Body

ParameterTypeMandatoryDescription
urlStringYesThe URL to fetch and extract article text from.

Response

Returns a JSON object with url, text, title, length, final_url, and content_type fields. url, text, title, final_url, and content_type are strings, and length is an integer.

ParameterTypeMandatoryDescription
urlStringNoThe input URL associated with the extraction result.
textStringNoThe cleaned article text.
titleStringNoThe article title.
lengthIntegerNoThe length of the extracted text.
final_urlStringNoThe final URL after any redirects.
content_typeStringNoThe content type of the fetched resource.

Body

Name
Type
Description
bodyREQUIRED
object
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.