$0.01
per call · USD Coin on Base
Fetch a public article or PDF and return clean Markdown plus title, byline, siteName, excerpt and wordCount. HTML is extracted with Firefox reader-mode rules; PDFs return their text layer. Requires ?url=<public http(s) URL>. Errors: 400 missing_url|bad_url, 403 blocked_private (private and internal hosts refused, every redirect hop re-checked), 413 too_large above 8 MB, 422 no_text_layer for scanned PDFs or not_extractable for app shells, 504 fetch_timeout. To FIND urls, use /search.
Endpoint
GET https://x402.donnyautomation.com/markdown2
Calls / 30d
2
Unique payers / 30d
Aug 30
Last called
exact
Payment scheme
Call this service
import { wrapFetchWithPayment } from "@x402/fetch";
import { privateKeyToAccount } from "viem/accounts";
const account = privateKeyToAccount(process.env.PRIVATE_KEY);
const fetchWithPay = wrapFetchWithPayment(fetch, account);
const res = await fetchWithPay("https://x402.donnyautomation.com/markdown", {
method: "GET",
});
const data = await res.json();curl -X GET \
"https://x402.donnyautomation.com/markdown?url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FMarkdown" \
-H "X-PAYMENT: <signed x402 payment>"Example response
{
"byline": null,
"excerpt": "Markdown is a lightweight markup language…",
"finalUrl": "https://en.wikipedia.org/wiki/Markdown",
"format": "article",
"markdown": "# Markdown\n\nMarkdown is a lightweight markup language…",
"siteName": "Wikipedia",
"title": "Markdown",
"truncated": false,
"ts": "2026-08-01T00:00:00.000Z",
"url": "https://en.wikipedia.org/wiki/Markdown",
"wordCount": 3204
}Payment details
0x2740651e046c59ab2a6510401140643292d3a96fUSD Coin · 0x833589fcd6edb6e08f4c7c32d4f71b54bda02913Is this your API?
Pin it to the top of Search & Web and the homepage with a featured placement.
More from DEX Data & Agent Utilities & similar services
DEX Data & Agent Utilities · Base Liquidity
x402.donnyautomation.com
Per-venue USD liquidity and TVL for a pair on Base across BaseSwap, SushiSwap and Uniswap v3. Returns totalTvlUsd, venueCount, deepestVenue and venues[] with each venue share and reserves. Requires ?pair=SYM/SYM (e.g. WETH/USDC). Errors: 400 bad_pair (malformed, or a ticker unknown on this chain), 404 no_pools, 502 upstream_read_failed. Raw pool numbers are /reserves; a one-word verdict is /risk; price is /price. Chain-pinned; bare /liquidity = BSC.
DEX Data & Agent Utilities · Treasury
x402.donnyautomation.com
US Treasury par yield curve, every constant maturity from 1 month to 30 years for a published business day. Returns curve[] with tenor, months and percent, spreads (2s10s, 3m10y, 5s30s) and an explicit inversion flag - the real question is whether the curve is inverted, not what fourteen numbers are. A tenor Treasury did not publish is null, never zero. Pass ?latest=1 OR ?date=YYYY-MM-DD, not both. Errors: 400 conflicting_params|bad_latest|bad_date, 404 no_curve with the available range.
DEX Data & Agent Utilities · V4hooks
x402.donnyautomation.com
Uniswap v4 hook capability scan on Base mainnet. Decodes all 14 permission bits from the hook address per v4-core Hooks.sol, flags swap custody, fee-taking and EIP-1967 upgradeability, and verifies source by Basescan/Sourcify/Blockscout consensus. Returns custodyClass PASSIVE|FLOW_CONTROL|FEE_TAKING|SWAP_CUSTODY|OPAQUE, flags[], riskFlags[] and verificationState. Requires ?address=0x + 40 hex. Errors: 400 invalid_address, 502 analysis_failed. Capability analysis - it never outputs SAFE.