Audit API
Run a website audit from your own code. One endpoint, one header, JSON in and JSON out. It runs the same engine as the web tool, with the same rule: every value is measured against the live site, and anything that could not be measured comes back null rather than as a guess.
Authentication
Create a key in your dashboard and send it as a bearer token. Keys are shown once at creation; only a hash is stored, so a lost key must be revoked and replaced.
Authorization: Bearer rw_live_...
Run an audit
curl -X POST https://audit.roamwork.in/api/v1/audit \
-H "Authorization: Bearer rw_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "example.com"}'Response
{
"success": true,
"creditsRemaining": 749,
"audit": {
"domain": "example.com",
"resolved_url": "https://example.com/",
"reachable": true,
"signals_passed": 12,
"signals_total": 17,
"signals": [ { "name": "...", "status": true, "detail": "..." } ],
"pagespeed": {
"mobile": {
"available": true,
"scores": { "performance": 71, "accessibility": 88,
"bestPractices": 96, "seo": 92 }
}
}
}
}When a measurement could not be taken — PageSpeed timing out, for instance — pagespeed.mobile.available is false and carries the reason. No estimated score is substituted.
Errors
| Status | Meaning |
|---|---|
| 400 | No url in the body, or the JSON was malformed. |
| 401 | Key missing, unrecognised, or revoked. |
| 402 | Out of credits. Distinct from 429 on purpose — this one is fixed by buying, not by waiting. |
| 429 | Too many requests on this key. Retry after the window in the header. |
| 502 | Our side failed. Your credit is returned automatically — creditsRefunded confirms it. |
What a call costs
One credit per call. Credits do not expire and there is no subscription, so a quiet month costs nothing.
| Pack | Price | Calls | Per call |
|---|---|---|---|
| API Trial | ₹1.00 | 100 | ₹0.01 |
| API Studio | ₹1.00 | 750 | ₹0.00 |
| API Agency | ₹1.00 | 3,000 | ₹0.00 |
Notes
- A URL you audit is your data. Nothing you send is stored as a lead of ours or added to any pipeline.
- An unreachable site is a real result, not an error — the response reports it as unreachable, and the call is charged.
- Revoking a key takes effect immediately on the next request.
