Quickstart
From zero to your first fraud score in under 5 minutes.
Step 1 — Get an API key
Go to kairoscheck.net/pricing and choose a plan. After checkout, your API key is shown on the confirmation page. Copy it immediately — it is displayed only once.
Your key looks like: kc_live_a1b2c3d4e5f6... (56 characters total).
Free tier: Start with 50 checks/month at no cost — no credit card required. Read the Pricing FAQ for details.
Step 2 — Make your first request
Send a POST to /api/check with your Bearer token and the entity to score:
curl -X POST https://kairoscheck.net/api/check \
-H "Authorization: Bearer kc_live_YOUR_KEY_HERE" \
-H "Content-Type: application/json" \
-d '{"domain": "suspicious-shop.io"}'
Step 3 — Read the response
{
"score": 72,
"verdict": "block",
"signals": [
"Domain registered 3 days ago",
"No SSL certificate",
"Matches known phishing pattern"
],
"dominant_threat": "phishing",
"type": "domain",
"query": "suspicious-shop.io",
"timestamp": "2026-05-10T12:00:00.000Z",
"ref": "a1b2c3d4"
}
| Field | Type | Description |
|---|---|---|
score | integer 0–100 | Risk score. 0 = clean, 100 = certain fraud. |
verdict | string | allow / review / block |
signals | string[] | Human-readable reasons for the score. |
dominant_threat | string | null | Primary threat category detected. |
ref | string | Unique reference for audit trail lookup. |
Step 4 — Act on the verdict
const { verdict } = await check({ domain: userSubmittedDomain });
if (verdict === 'block') {
return res.status(422).json({ error: 'Domain flagged as fraudulent.' });
}
if (verdict === 'review') {
await queue.add('manual-review', { domain, ref });
}
// verdict === 'allow' → proceed normally
Next: read the full /api/check reference for all input types, error codes, and quota headers.