API
One endpoint.
Any URL.
Conversion intelligence.
POST a URL, get structured JSON back — percentile benchmarks and ranked fixes.
curl -X POST \ https://api.weavn.app/v1/scan \ -H "Authorization: Bearer weavn_live_••••" \ -H "Content-Type: application/json" \ -d '{"url": "https://your-site.com"}'
↓ 200 OK · 87s
{ "scan_id": "sc_a8d3f2c1", "score": 61, "verdict": "Fair", "findings_summary": 23 }
POST any web page and get conversion intelligence back as JSON — a 0–100 score, ranked findings with on-page evidence, fixes with rewritten copy, and percentile benchmarks for the vertical. Drop it into an e-commerce app, a CRM feature, a site builder, or an AI agent — the same shape on every call, so you build against it once.
WHAT YOU GET
What comes back — and why it means something.
What it checks
307 checks across 27 conversion categories — hero, trust, CTA, social proof, and more — run against the exact page you submit.
What a finding is
Each issue comes back as a structured finding: what's wrong, the on-page evidence behind it, a ranked priority, and a rewritten fix you can paste in.
Why percentile, not a raw score
Not an average. A percentile.
Your score is positioned against a live corpus of real scans in the same vertical — so '63rd percentile' says something a generic audit number can't.
QUICKSTART
From API key to first call.
Start with a key and a no-code test, then make one call and build from there.
Test a scan in the playground
Run a real scan in the browser — no code required.
Make your first call
POST a URL with your key. The curl, Node, and Python above are complete and copy-pasteable.
Build your integration
Wire the structured response into your app, agent, or dashboard.
You don't have to hand-write any of this. The scan API is a standard REST endpoint — any HTTP client that sends a Bearer token and a JSON body works, and AI coding tools like Cursor and Claude can build against it directly.
One POST request. 307 checks fire in sequence across 27 categories. Structured JSON returns.
curl -X POST \ https://api.weavn.app/v1/scan \ -H "Authorization: Bearer weavn_live_••••" \ -H "Content-Type: application/json" \ -d '{"url": "https://your-site.com"}'
Build against this schema once. Every URL returns identical structure.
REQUEST PARAMETERS · POST /api/v1/scan
RESPONSE SCHEMA
The response never changes shape.
scan_meta.cost_usd is the amount billed to your account for this scan — not Weavn's internal compute cost.
Every finding in every scan returns this exact shape.
CHECK CATEGORIES · 27 GROUPS · 307 CHECKS
Each strengths[] entry is { check_id, label, observation } — the check_id category prefix maps to a group above (e.g. HERO_001, TRUST_013, CTA_016).
ERROR CONTRACT
All errors return the same envelope so your handler never needs to branch on response shape — only on error.code.
When something goes wrong, the response tells you exactly what failed and whether to retry. Most issues are one of three things: a bad or unreachable URL, a missing or invalid API key, or a site that blocks automated scanning.
Retry 429 and 5xx with backoff. Do not retry 400/401/402/422 — the error is structural, not transient.
WEBHOOK PAYLOAD
Every async and batch scan delivers a POST to your registered endpoint when complete. Three delivery attempts: immediate, +5 min, +30 min. Verify with the X-Weavn-Signature header (HMAC-SHA256 of body, keyed with your webhook secret).
BUILT FOR AGENTS AND AUTOMATION
Deterministic output. Every call.
An agent can only act on output it can parse identically every time. The same URL always returns the same schema — scores, findings, severity, and copy rewrites — whether it runs at 3am in a batch or inline in a user flow.
AGENT LOOP PATTERN
POST /api/v1/scan/batch
Up to 10 URLs in a single request. All scan in parallel. Returns immediately with a batch_id.
status: pending
The engine runs 307 checks per URL. Parallel execution — a 10-URL batch completes in roughly the same wall time as one.
event: scan.completed
Single structured payload delivered to your endpoint. Three delivery attempts with exponential backoff.
WHAT YOU CAN BUILD
Six integrations. One endpoint.
Diagnose any e-commerce store
A merchant enters their store URL; your app scans it and shows the conversion score with the highest-impact fixes — embedded in your app or onboarding flow.
POST /api/v1/scan · store URL
Show a live conversion score in your site builder
Embed a live conversion score for any page in Webflow, Framer, or a custom CMS. Re-scan on publish; surface the delta.
POST /api/v1/scan · on publish / deploy hook
Audit every new lead's website automatically
When a lead record is created, auto-scan their website. Attach the score and top findings to the deal before the first call.
triggered from your CRM webhook
Generate white-label reports for agency clients
Batch-scan client sites on a schedule. Feed findings into your own branded report template. Deliver to clients without exposing the underlying engine.
POST /api/v1/scan/batch
Feed conversion data straight into an AI agent
Feed scores and structured findings directly into an LLM agent. The JSON schema is stable — the agent parses it the same way every run.
structured JSON → agent context
Bulk-audit a prospect list and rank by score
Upload a CSV of target domains. Batch-scan in parallel. Filter by score threshold to prioritize outreach on sites with the highest lift potential.
POST /api/v1/scan/batch → filter by score
API PLANS · RATE DECREASES WITH VOLUME
PLAYGROUND
25 free
then $0.30/scan
Developers evaluating the API before building. No commitment required.
GET API KEY →DEV
$59
/mo · 250 scans
Solo developers integrating conversion intelligence into their first product.
START DEV →BUILDER
$179
/mo · 1,000 scans
Teams building audit pipelines or integrating Weavn into client workflows.
START BUILDER →SCALE
$449
/mo · 3,000 scans · best value
High-volume integrations and teams that need dedicated infrastructure and rate limits.
START SCALE →ENTERPRISE
Custom
from $0.18/scan · SLA
Organizations requiring custom volume, SLA guarantees, and dedicated support.
TALK TO US →PLATFORM CAPABILITIES
CACHE POLICY
Cache policy
Identical URL rescanned within 24h returns cached result at zero cost.
Scan the same URL multiple times in your pipeline for free.
cache_hit: true · cost_usd: 0.00
ASYNC MODE
Async mode
POST with async: true. Result delivered to your endpoint when ready.
Don't block your process waiting 90 seconds — fire and forget.
async: true · webhook_url: your-endpoint
BATCH ENDPOINT
Batch endpoint
POST /api/v1/scan/batch — parallel execution, single webhook response.
Audit a full site's key pages in one request.
POST /api/v1/scan/batch · up to 10 URLs
RESPONSE TIME
Response time
p50: 87s · p95: 142s · measured across 30-day rolling window.
p95 is 142s — plan timeouts accordingly.
p50: 87s · p95: 142s
TECHNICAL QUESTIONS
How does authentication work?
Every request requires a Bearer token in the Authorization header. Keys start with weavn_live_ and are scoped to your account and plan. Get your key from the developer portal. Do not expose keys in client-side code — requests must originate server-side.
Authorization: Bearer weavn_live_••••
Sync or async — which should I use?
Sync holds the connection and returns the full response when the scan completes (~90s). Use it for single scans where you can wait. Async returns immediately with a scan_id and POSTs the result to your webhook_url when ready — use it for batch processing or to avoid timeouts.
async: false (sync) · async: true + webhook_url
How does caching work?
Identical URLs rescanned within 24 hours return the cached result at zero cost. Cache is invalidated automatically when page content changes significantly — detected via fingerprint comparison.
cache_hit: true · cost_usd: 0.00
What's in the batch endpoint?
POST up to 10 URLs in one request to /api/v1/scan/batch. All URLs scan in parallel. Results are delivered to your webhook_url as a single structured payload when all scans complete. Each URL in the batch consumes one scan credit.
POST /api/v1/scan/batch · max 10 URLs
What if a site blocks the scanner?
Weavn uses Browserless Pro with stealth mode and a real Chrome user agent. Most sites scan cleanly. Cloudflare Enterprise with aggressive bot detection occasionally blocks — the API returns a structured error with error.code: "BOT_BLOCKED" and blocked: true.
error.code: BOT_BLOCKED · blocked: true
Is there an uptime SLA?
Enterprise plans include a formal SLA. All other plans target 99.5% uptime. Status and incident history available at status.weavn.app. Planned maintenance is announced 48 hours in advance via dashboard notification.
target_uptime: 99.5% · SLA: enterprise_only
Want to understand what fires under the hood? See the engine →
Ready to build?
25 free scans. No subscription. Start in minutes.
Same engine on every plan. Build against the schema once.
Need results without code? Go to the dashboard →