Quick Start

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.

01
Create an account

Sign up at sitenexis.vercel.app/signup. Free plan includes 1 audit per month.

02
Enter a domain

Type any public domain into the audit input — e.g. stripe.com or yoursite.com.

03
Read your report

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.

bash
# 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"}'
Security note: Never expose your API key client-side. Store it in environment variables only.

Running an Audit

Audits are asynchronous. POST to start, receive a job ID, then poll or stream progress via SSE.

1. Start an audit

bash
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

javascript
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

bash
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.

AI Visibility Score0–100
Machine Readability × 0.15 + Entity Confidence × 0.20 + Retrieval Readiness × 0.20 + Citation Probability × 0.20 + Semantic Trust × 0.15 + Schema Completeness × 0.10
Tier 2
Excellent90–100
Good70–89
Needs Work50–69
Critical0–49
Machine Trust Score0–100
Entity Credibility × 0.30 + Schema Trust Alignment × 0.20 + External Validation × 0.25 + Contradiction Absence × 0.15 + Trust Degradation Resistance × 0.10
Tier 3
Retrieval Quality Score0–100
Chunk Stability Index × 25 + Answer Formation Probability × 25 + Summarisation Loss Score × 25 + Citation Eligibility Score × 25
Tier 3
Machine Trust Intelligence0–100
Retrieval Quality × 0.20 + Machine Trust × 0.25 + Authority Velocity × 0.15 + Recommendation Surface × 0.20 + Entity Authenticity × 0.20
Tier 4

API Reference

All endpoints are REST and return JSON. Base URL: https://sitenexis.vercel.app

POST
/api/audit/start

Start a new domain audit

GET
/api/audit/:id

Fetch complete audit results

GET
/api/audit/:id/stream

SSE real-time audit progress

GET
/api/audit/:id/retrieval

Retrieval Simulation results

GET
/api/audit/:id/machine-trust

Machine Trust score + signals

GET
/api/audit/:id/temporal

Temporal Authority analysis

GET
/api/audit/:id/surfaces

Recommendation Surface Map

GET
/api/audits

Paginated audit history

POST
/api/quick-audit

Single-page scan (no auth, rate limited)

Public
GET
/api/health

Service health check

Public

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

json
{
  "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

javascript
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
)

Ready to run your first audit?

Free plan. No credit card. Results in minutes.

Start for free