Safe Fetch
GET /v1/fetch
$0.002 USDC · Synchronous · settles on a successful fetch
One URL in, raw text body out through a hardened SSRF-guarded fetcher — final URL after redirects, HTTP status, selected headers, byte count, and timing included. Text formats only: HTML, JSON, XML, feeds, plain text, JavaScript, SVG. A POST variant accepts a JSON {"url"} body.
url- required — public HTTP/HTTPS URL, max 2048 chars
curl 'https://api.santosautomation.com/v1/fetch?url=https%3A%2F%2Fexample.com%2Ffeed.xml'
Free demo: GET /v1/fetch/demo — same response shape, 1/day per IP (quota shared across all demos).
Screenshot & PDF Render
GET /v1/screenshot
$0.01 USDC · Synchronous · settles only when render bytes are returned
A real isolated Chromium browser renders the page — JavaScript executed, so SPAs, client-rendered charts, and post-load layout are captured — and returns PNG, JPEG, or PDF bytes directly with an X-Render-Job header. Every render is a fresh anonymous visitor: no cookies, no login-protected content. A cold worker wakes on demand and may 504 the first try — retry once; timeouts are never charged.
url- required — public HTTP/HTTPS page
format- png (default) · jpeg · pdf
device- desktop 1366×900 (default) · mobile 390×844 @3x with touch
full_page- true captures the whole page height (ignored for pdf)
curl 'https://api.santosautomation.com/v1/screenshot?url=https%3A%2F%2Fexample.com&format=png&device=desktop' \
--output page.png
Quick Intelligence Audit
GET /api/audit
$0.015 USDC · Synchronous · settles on a successful audit
Fast fetch-and-parse audit of a single public page: 0–100 scores for performance, SEO, accessibility markup, and security headers, an additive website_intelligence_score across Discoverable / Understandable / Callable / Trustworthy, every individual check with pass/fail detail, and a flat issues list of plain-English fixes safe to show a user or another agent.
url- required — public HTTP/HTTPS page
curl 'https://api.santosautomation.com/api/audit?url=https%3A%2F%2Fexample.com'
Free demo: GET /api/audit/demo — same response shape, 1/day per IP (quota shared across all demos).
Agent Readiness Audit
GET /api/agent-readiness
$0.075 USDC · Synchronous · settles on a successful audit
Bounded passive assessment of whether AI agents can discover, understand, select, invoke, and — when applicable — transact with a public service. Classifies the target first so ordinary websites are not penalized for lacking OpenAPI, MCP, or machine commerce. At most eight extra public requests; never authenticates, submits forms, invokes target tools, or sends a payment to the audited site. Humans can alternatively buy a one-time $5 report by card.
url- required — public HTTP/HTTPS page
depth- quick (default and currently the only depth)
curl 'https://api.santosautomation.com/api/agent-readiness?url=https%3A%2F%2Fexample.com&depth=quick'
Structured Extraction
POST /v1/extract/structured
$0.08 USDC · Synchronous · settles only when the output validates against your schema
Send a page URL and your own JSON Schema; an LLM extracts matching fields from the page content and the result is re-validated against your schema before you are charged — non-conforming output returns 422 and costs nothing. Your schema must be a self-contained object (no $ref) under 4000 characters. Page content is truncated to 8000 characters before extraction; model output is capped at 1024 tokens. POST only.
url- required — public HTTP/HTTPS page
schema- required — self-contained JSON Schema object describing the fields to extract
curl -X POST https://api.santosautomation.com/v1/extract/structured \
-H 'Content-Type: application/json' \
-d '{
"url": "https://example.com/pricing",
"schema": {
"type": "object",
"properties": {
"product": { "type": "string" },
"price_usd": { "type": "number" }
},
"required": ["product"]
}
}'
Free demo: POST /v1/extract/structured/demo — same response shape, 1/day per IP (quota shared across all demos).
Deep Website Intelligence Audit
POST /v1/audits
$0.225 USDC · Asynchronous job · settles when the job is accepted (201) — a bounded compute reservation
A real Chromium browser runs Lighthouse mobile lab metrics, rendered axe-core accessibility checks with selectors, network and console evidence, screenshots, and passive security analysis. The 201 response returns job_id, a one-time access_token (save it — it is shown only once), status_url, and report_url. Poll status_url; fetch the versioned report when status is completed. Send an Idempotency-Key header — a retry with the same key and body returns the existing job without a second charge.
url- required — public HTTP/HTTPS page (JSON body)
devices- optional — ["mobile"] (default) and/or "desktop"
modules- optional — lighthouse · accessibility · browser-network · security-passive · agent-readiness · ai-summary
Idempotency-Key- header, strongly recommended — dedupes retries free of charge
curl -X POST https://api.santosautomation.com/v1/audits \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: my-unique-key-001' \
-d '{"url": "https://example.com"}'
# then, with the returned access_token:
curl 'https://api.santosautomation.com/v1/audits/JOB_ID?token=ACCESS_TOKEN' # status
curl 'https://api.santosautomation.com/v1/audits/JOB_ID/report?token=ACCESS_TOKEN' # completed report