← Back to directory

SEO and Keyword Data API: On-page SEO audit of a URL

https://keywords.duoleads.com/v1/on-page

Overview

On-page SEO audit of a URL. POST /v1/on-page, no API key, $0.012 per call in USDC on Base via x402 v2. Docs: https://keywords.duoleads.com/docs

Protocol x402 (POST)
Price $0.01
Payment Asset USD Coin
Payment Network Base
Category tools/seo
Provider SEO and Keyword Data API
Source bazaar
Indexed 2026-11-09 18:08:02

Health

Status healthy
Latency (p50) —
Uptime (30d) —
Reliability Score —
Last Checked Never
Last Healthy Never
Consecutive Failures 0

x402 Payment Validation

Payment Requirements —
Asset Verified —
Facilitator —

Input Schema

{ "body": { "url": "https://www.example.com/" }, "bodyType": "json", "method": "POST", "type": "http" }

Output Schema

{ "example": { "canonical": "https://www.example.com/", "checks": { "has_render_blocking_resources": false, "is_https": true, "no_description": false, "no_h1_tag": false, "no_image_alt": true, "title_too_long": false }, "counts": { "externalLinks": 13, "images": 19, "internalLinks": 141, "scripts": 4, "stylesheets": 0, "words": 550 }, "description": "The Example blog covers product news, engineering notes and guides.", "fetchedAt": "2026-11-02T03:43:12Z", "headings": { "h1": [ "Blog" ], "h2": [ "Getting started", "Release notes" ] }, "onpageScore": 97.07, "request_id": "01KEXAMPLE0000000000000000", "resourceType": "html", "see_also": { "endpoint": "https://keywords.duoleads.com/v1/pagespeed", "params": [ "url" ], "reason": "Want Core Web Vitals from a real browser run? Call pagespeed for the same url." }, "server": "nginx", "sizes": { "html": 482969, "transfer": 0 }, "source": "page crawl", "status": "ok", "statusCode": 200, "timing": { "connection": 6, "domComplete": 141, "download": 122, "timeToInteractive": 141, "total": 141, "waiting": 0 }, "title": "Example Domain Blog - Insights and Updates", "units": "statusCode = HTTP status of the page; onpageScore = 0-100; sizes = bytes; timing = milliseconds; checks = true when the issue or property is present; title / description / headings = the page's own text (untrusted).", "url": "https://www.example.com/" }, "type": "json" }