Get started in 2 minutes
SiteNexis audits any public domain across twelve intelligence dimensions. The fastest way to start is the dashboard — no API setup required.
Sign up at sitenexis.vercel.app/signup. Free plan includes 1 audit per month.
Type any public domain into the audit input — e.g. stripe.com or yoursite.com.
Within 3–8 minutes, a full machine trust report lands in your dashboard.
Authentication
The REST API uses Bearer token authentication. API access is available on Agency and Enterprise plans. Get your key from Dashboard → Settings → API Keys.
# Add your API key to every request
curl https://sitenexis.vercel.app/api/audit/start \
-H "Authorization: Bearer snx_live_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"domain": "example.com"}'Running an Audit
Audits are asynchronous. POST to start, receive a job ID, then poll or stream progress via SSE.
1. Start an audit
curl -X POST https://sitenexis.vercel.app/api/audit/start \
-H "Authorization: Bearer snx_live_..." \
-H "Content-Type: application/json" \
-d '{
"domain": "example.com",
"options": {
"maxPages": 100,
"includeLayer4": true
}
}'
# Response
{
"auditId": "aud_8kXmN3pQ...",
"status": "queued",
"estimatedDuration": "3-8 minutes"
}2. Stream real-time progress
const source = new EventSource(
'https://sitenexis.vercel.app/api/audit/aud_8kXmN3pQ.../stream',
{ headers: { Authorization: 'Bearer snx_live_...' } }
)
source.onmessage = (event) => {
const data = JSON.parse(event.data)
// { agent: 'entity-agent', event: 'progress', percent: 42 }
console.log(data)
}
source.addEventListener('complete', () => {
source.close()
// Fetch full results
})3. Fetch the report
curl https://sitenexis.vercel.app/api/audit/aud_8kXmN3pQ... \
-H "Authorization: Bearer snx_live_..."
# Returns the full AuditReport including all twelve scores,
# issue lists, entity graph, and per-module breakdowns.Score Reference
Every score is 0–100. Every deduction maps to a named Issue with a description and recommendation. All scores are fully reproducible — the same content always produces the same score.
API Reference
All endpoints are REST and return JSON. Base URL: https://sitenexis.vercel.app
/api/audit/startStart a new domain audit
/api/audit/:idFetch complete audit results
/api/audit/:id/streamSSE real-time audit progress
/api/audit/:id/retrievalRetrieval Simulation results
/api/audit/:id/machine-trustMachine Trust score + signals
/api/audit/:id/temporalTemporal Authority analysis
/api/audit/:id/surfacesRecommendation Surface Map
/api/auditsPaginated audit history
/api/quick-auditSingle-page scan (no auth, rate limited)
/api/healthService health check
Webhooks
Register a webhook URL in Dashboard → Settings → Webhooks. SiteNexis will POST a signed payload to your endpoint when an audit completes or fails.
Payload schema
{
"event": "audit.complete",
"auditId": "aud_8kXmN3pQ...",
"domain": "example.com",
"timestamp": "2025-05-29T12:00:00Z",
"scores": {
"aiVisibility": 74,
"machineTrust": 61,
"retrievalQuality": 88,
"machineTrustIntelligence": 71
}
}Verifying signatures
import crypto from 'crypto'
function verifyWebhook(payload, signature, secret) {
const expected = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex')
return `sha256=${expected}` === signature
}
// In your route handler:
const isValid = verifyWebhook(
rawBody,
req.headers['x-sitenexis-signature'],
process.env.SITENEXIS_WEBHOOK_SECRET
)