Attest tools · url_markdown

Read a page as Markdown

a task needs the readable text of one web page instead of its HTML: an article, a documentation page, a changelog or a product page, returned as Markdown with its headings, lists, tables and code blocks intact, plus t…

1 credit per successful callPOST /api/v1/read

Bearer key · JSON

POST /api/v1/read

curl -s -X POST https://getattest.com.au/api/v1/read \
  -H "authorization: Bearer $ATTEST_API_KEY" \
  -H "content-type: application/json" \
  -d '{}'

Send the key as a bearer token in the authorization header. One key and one credit balance cover every service, including Attest Capture. A failed call is refunded automatically. No key yet? POST /api/v1/keys issues one with 25 free credits and no signup — see the key guide.

For agents

Use when

Use this when a task needs the readable text of one web page instead of its HTML: an article, a documentation page, a changelog or a product page, returned as Markdown with its headings, lists, tables and code blocks intact, plus the page's title, byline, language and links.

Not documented yet: a captured example response. This page only shows what the module publishes about itself, so the missing parts are absent rather than guessed at.

4 fields

Input

Scroll the table horizontally to see all fields.

Field / Type / Required / What it does
FieldTypeRequiredWhat it does
urlstringRequiredThe public http(s) page to read.
include_linksbooleanOptionalReturn the page's links as a list. On by default.
include_imagesbooleanOptionalReturn the page's images as a list. Off by default.
max_charsintegerOptionalCap on the Markdown returned.

HTTP 200

Response

Every successful response also carries call_id (your receipt for the charge), credits_charged and credits_remaining.

Scroll the table horizontally to see all fields.

Field / What it holds
FieldWhat it holds
markdownThe readable article as Markdown, with headings, lists, tables and code blocks intact.
titleThe page title.
bylineThe byline, when the page marks one.
site_nameThe site name, when the page declares one.
published_atThe publication date, when the page declares one.
langThe page language.
word_countWords in the whole article, even when the Markdown was cut.
truncatedWhether max_chars or the extraction budget cut the Markdown.
extracted_byWhich extractor produced the article.
linksThe page's links, when include_links is on.
imagesThe page's images, when include_images is on.
final_urlThe URL after redirects.
http_statusThe status the page returned.

Machine-readable failures

Errors

Errors return JSON such as {"error":"invalid_api_key"}. A failed call is refunded automatically.

Scroll the table horizontally to see all fields.

Code / Status / Meaning
CodeStatusMeaning
url_required400No url was sent.
invalid_url400url is not a URL this service can read.
private_address_not_allowed400The URL resolves to a private or reserved address.
unsupported_content_type400The URL did not return HTML.
response_too_large400The page is larger than the read cap.
page_too_complex422The page is past the extraction budget.
page_too_slow422The extraction did not finish inside the budget.
fetch_timeout502The page did not answer in time. Not charged.
fetch_failed502The page could not be read. Not charged.

On every service

Scroll the table horizontally to see all fields.

Code / Status / Meaning
CodeStatusMeaning
invalid_api_key401The authorization header is missing or the key is unknown.
insufficient_credits402The balance is below this call's cost. The response carries credits_required and credits_remaining.
rate_limit_exceeded429Free keys share 10 calls a minute across every service. The response carries limit and window_seconds.
services_unavailable503The credit store could not be reached. Retry once after 30 seconds.

Where the answer comes from

Source and scope

The page's own HTML, fetched once at the time of the call and converted to Markdown in this process. Wording, figures and dates in the Markdown are the page's, not Attest's.

Attest reports what it read, with the source it read it from. It is general information, not advice, and not a legal record.

All Attest tools · Service list as JSON · OpenAPI

Same key as every Attest tool

One key. One balance. 1 credit a call.

Issue a free key, then use it here, on Attest Capture and on every other tool in the box.

Get a free key