Scan API
Check any domain's AI agent readiness score programmatically. No authentication required. Free and rate-limited.
This API is in beta. Response format may change. Pin to the current shape if you depend on specific fields.
POST /api/scan
Scans a domain and returns a NOD Score (0–100) with per-category breakdowns across 75 checks in 7 categories. Results for leaderboard domains are returned instantly from cache. Other domains trigger a live scan (up to 60 seconds).
Request Body
Example Request
curl -X POST https://opennod.ai/api/scan \
-H "Content-Type: application/json" \
-d '{"url": "stripe.com"}'Example Response
{
"url": "https://stripe.com",
"nod_score": 42.5,
"label": "Visible",
"scanned_at": "2026-03-28T18:00:00.000Z",
"scan_duration_seconds": 8.2,
"cached": true,
"categories": {
"structured_data": {
"name": "Structured Data & Schema",
"weight": "25%",
"normalized_score": 65.2,
"weighted_contribution": 16.3,
"checks": [
{
"name": "json_ld_present",
"score": 2,
"max_score": 2,
"details": "Found and valid"
}
]
}
}
}Response Fields
Rate Limits
The API is free but rate-limited to protect infrastructure costs.
Rate limit state is returned in response headers:
X-RateLimit-Limit: 5
X-RateLimit-Remaining: 3
X-RateLimit-Reset: 1711648800Need higher limits? Pro monitoring subscribers will get elevated API access. Contact us →
Error Handling
All errors return JSON with an error field.
Error Response Example
{
"error": "Rate limit exceeded. Free scans are limited to 5 per hour. Need more? Contact us about our Pro plan."
}Machine-readable spec: /.well-known/openapi.json