Supraforge REST API

Programmatic access to scans, findings, and autonomous repairs. Agency plan required. Generate keys in Account → API keys.

Authentication

Send your key as a bearer token on every request:

curl https://supraforge.one/api/public/v1/sites \
  -H "Authorization: Bearer sf_live_XXXXXXXXXXXXXXXXXXXXXXXX"

Base URL

https://supraforge.one/api/public/v1

All responses are JSON. CORS is enabled. Rate limits follow your plan caps.

Endpoints

GET/sites

List every site in your account.

curl https://supraforge.one/api/public/v1/sites -H "Authorization: Bearer sf_live_..."
POST/sites

Add one or many sites. Each new site automatically enters hourly auto-pilot.

curl -X POST https://supraforge.one/api/public/v1/sites \
  -H "Authorization: Bearer sf_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "sites": [
    { "url": "client1.com", "name": "Client One" },
    { "url": "client2.com" }
  ] }'
POST/sites/:siteId/scan

Trigger a full SEO scan immediately. Returns the scan summary.

curl -X POST https://supraforge.one/api/public/v1/sites/SITE_ID/scan \
  -H "Authorization: Bearer sf_live_..."
GET/sites/:siteId/findings

List open findings. Use ?status=fixed or ?limit=200.

curl "https://supraforge.one/api/public/v1/sites/SITE_ID/findings?limit=50" \
  -H "Authorization: Bearer sf_live_..."
POST/sites/:siteId/repair-all

Bulk-apply AI fixes to all eligible open findings (max 100 per call). Generates missing AI fixes first unless generateMissing: false.

curl -X POST https://supraforge.one/api/public/v1/sites/SITE_ID/repair-all \
  -H "Authorization: Bearer sf_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "max": 50 }'
GET/sites/:siteId/reports

List the last 24 monthly reports for a site.

curl https://supraforge.one/api/public/v1/sites/SITE_ID/reports \
  -H "Authorization: Bearer sf_live_..."

Errors

All errors return { "error": "..." } with appropriate HTTP status:

  • 401 — missing, malformed, or revoked key
  • 402 — plan limit reached
  • 403 — Agency plan required
  • 404 — site not found or not yours
  • 500 — upstream failure