API Documentation

Run website audits, monitor AI visibility, and pull prioritized fixes programmatically. Call the REST API directly, or let Claude and other AI assistants call it for you through the Website Auditor MCP server. Built for IT departments at small-to-medium businesses and solo entrepreneurs.

Get an API key with 5 automated audits per day through the admin portal ($10/month after a 7-day free trial). Endpoints marked Pro require an active subscription — everything else works with any valid key.

Admin Portal →

Use It From Your AI Assistant (MCP)

Every capability below is also exposed through the official Website Auditor MCP server. Connect it to Claude Desktop, Claude Code, or any MCP-capable client and your assistant can run audits, track what changed, benchmark against peers, and generate fixes conversationally.

The MCP server is a thin client over this REST API: it authenticates with the same wa_ API key you create in the admin portal, and enforcement happens server-side. Anything the MCP can do, you can also do directly with curl — same endpoints, same entitlements.

MCP Tools → REST Endpoints

MCP Tool Backed By
get_ai_visibility, run_auditGET /api/audit
compare_competitorsGET /api/audit (one audit per competitor)
get_changesGET /api/ai-visibility-history
track_site / untrack_sitePOST / DELETE /api/tracked-domains
list_tracked_sitesGET /api/tracked-domains
get_monitoring_statusGET /api/monitoring-status
get_benchmarkGET /api/benchmark
get_recommendationsGET /api/recommendations
generate_schemaGET /api/schema
get_reportGET /api/report

Auditing tools work with any valid API key. Monitoring, history, benchmarks, recommendations, schema, and report tools require a Website Auditor Pro subscription — exactly like the Pro endpoints they call.

Authentication

All API requests require an API key in the X-API-Key header. Keys start with wa_.

Getting Your API Key

  1. Visit /admin_portal and sign in with Google
  2. Create a new API key — the plaintext key is shown once, copy it immediately
  3. Send the key in the X-API-Key header on every request
  4. Revoke or rotate keys any time from the portal

Example Request

curl "https://api.website-auditor.io/api/audit?businessUrl=example.com&businessName=Example+Inc&businessCity=Seattle" \ -H "X-API-Key: wa_your_api_key_here"

Rate Limits

5 audits per API key per day. The daily limit applies to /api/audit only — the read endpoints (subscription, history, benchmark, recommendations, schema, report, monitoring) don't consume it, and scheduled weekly re-audits of tracked domains run on a separate server-side budget. Rate limit headers are included in /api/audit responses:

X-RateLimit-Limit: 5 X-RateLimit-Remaining: 3 X-RateLimit-Reset: 2026-03-31T23:59:59.999Z

Endpoints

Click an endpoint to expand it. Endpoints marked Pro require an active Website Auditor Pro subscription — free keys receive a 403. Everything else works with any valid API key.

GET
/api/audit
Trigger a website audit and return the results

Request

Headers:

X-API-Key: wa_your_api_key_here

Query Parameters:

Parameter Type Description
businessUrl string Website URL to audit required
e.g. example.com or https://example.com
businessName string Name of the business required
e.g. Example Inc
businessCity string City for local search analysis required
e.g. Seattle, WA

Example URL:

GET /api/audit?businessUrl=example.com&businessName=Example+Inc&businessCity=Seattle

Responses

200 OK — Audit completed:

{ "success": true, "request_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "timestamp": "2026-03-31T12:00:00.000Z", "duration_ms": 15230, "audit": { "format": "html_report", "report_url": "https://website-auditor.io/report/abc123", "status": "completed", "note": "The audit completed successfully. The full HTML report is available at the report_url." } }

400 Validation Error:

{ "success": false, "error": "Validation failed", "details": [ "businessUrl is required. Provide the website URL to audit.", "businessCity is required. Provide the city for local search analysis." ] }

401 Invalid API Key:

{ "success": false, "error": "Invalid API key. Check that your key is correct." }

429 Rate Limited:

{ "success": false, "error": "Rate limit exceeded. You can make 5 requests per day.", "rate_limit": { "limit": 5, "remaining": 0, "resets_at": "2026-03-31T23:59:59.999Z" } }

502 Upstream Error:

{ "success": false, "request_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "error": "The audit service returned an error. Please try again later.", "upstream_status": 500 }

HTTP Status Codes

The API uses standard HTTP status codes to indicate the result of your request.

200 OK
Audit completed successfully
400 Bad Request
Missing or invalid query parameters
401 Unauthorized
Missing or invalid API key
403 Forbidden
Endpoint requires an active Pro subscription
404 Not Found
No audit on record yet for the requested domain
409 Conflict
Tracked-domain cap reached (5 domains per account)
429 Too Many Requests
Audit rate limit exceeded (5 audits per key per day)
502 Bad Gateway
Upstream audit service error; try again later

Admin Portal

Visit /admin_portal to manage your API keys. Sign in with Google.

Portal Features

  • Create keys — plaintext shown once at creation, copy immediately
  • View keys — creation date and last-used timestamp for each key
  • Revoke keys — instantly disable a key that should no longer work
  • Rotate keys — revokes the old key and generates a new one
  • Usage stats — requests today and total requests per key