Find smart-contract vulnerabilities before you deploy.
A single POST request runs an audit-grade security pipeline with LLM-reasoned triage. Solidity today, more EVM languages on the roadmap. Hosted. From $48.9 a month, or $9.9 per one-off scan.
curl -X POST "https://smartscan-api.p.rapidapi.com/api/v1/scan" \
-H "Content-Type: application/json" \
-H "X-RapidAPI-Key: YOUR_API_KEY" \
-d '{
"source_code": "pragma solidity ^0.8.0; contract Vault { ... }"
}'Why SmartScan
Industry-grade static analysis plus LLM reasoning, behind a single HTTP request. No pipelines, no glue code.
LLM triages raw findings into fixable issues — you get actionable vulnerabilities, not AST dumps.
Free 1/month entry-tier. Starter $48.9 for 100 on a fast lightweight model. Pro $134.9 for 300 on an advanced reasoning model. Business $399 for 1000 on the same. Or pay $9.9 per one-off scan.
How it works
POST /api/v1/scan with source_code
Multi-layer static analysis runs in an isolated sandbox
LLM reads findings + source, writes the report
You get structured JSON (risk_score, vulnerabilities[], gas_optimizations[])
Example response
Structured JSON with actionable findings
{
"scan_id": "sc_7f3a9b2c",
"risk_score": 72,
"vulnerabilities": [
{
"id": "VULN-001",
"severity": "high",
"title": "Reentrancy in withdraw()",
"description": "State update after external call allows reentrancy.",
"line": 42,
"recommendation": "Use checks-effects-interactions pattern."
},
{
"id": "VULN-002",
"severity": "medium",
"title": "Unchecked return value",
"description": "transfer() return value not checked.",
"line": 58,
"recommendation": "Use SafeERC20 or check return value."
}
],
"gas_optimizations": [
{
"id": "GAS-001",
"title": "Use calldata instead of memory",
"line": 23,
"estimated_savings": "~200 gas per call"
}
],
"model_tier": "advanced_reasoning",
"scanned_at": "2026-04-17T12:34:56Z"
}Use cases
- name: SmartScan Security Check
run: |
RESULT=$(curl -s -X POST \
"https://smartscan-api.p.rapidapi.com/api/v1/scan" \
-H "X-RapidAPI-Key: ${{ secrets.RAPIDAPI_KEY }}" \
-d '{"source_code": "$(cat contracts/*.sol)"}')
SCORE=$(echo $RESULT | jq '.risk_score')
if [ "$SCORE" -gt 70 ]; then exit 1; fitask("prescan", "Scan before deploy")
.setAction(async () => {
const src = fs.readFileSync("./contracts/MyContract.sol");
const res = await fetch("https://smartscan-api.p.rapidapi.com/api/v1/scan", {
method: "POST",
headers: { "X-RapidAPI-Key": process.env.RAPIDAPI_KEY },
body: JSON.stringify({ source_code: src.toString() })
});
const { risk_score } = await res.json();
if (risk_score > 70) throw new Error("Risk too high");
});async function validateSubmission(contractCode: string) {
const res = await fetch("/api/scan", {
method: "POST",
body: JSON.stringify({ source_code: contractCode })
});
const { risk_score, vulnerabilities } = await res.json();
if (risk_score > 50 || vulnerabilities.some(v => v.severity === "critical")) {
return { approved: false, reason: "Security threshold not met" };
}
return { approved: true };
}Pricing
Billing, keys, quotas managed by RapidAPI
- 1 scan/mo
- Entry-tier model
- 1 req/min
- Community support
- 100 scans/mo
- Fast lightweight model
- 5 req/min
- Email support
- 300 scans/mo
- Advanced reasoning model
- 15 req/min
- Email support
- 1,000 scans/mo
- Advanced reasoning model
- 30 req/min
- Priority support
- Advanced reasoning model
- No subscription required
Model tier = report quality — higher tiers use stronger models, not just more quota.
Also available on
Same pricing across every marketplace. Pick the one you already use.
How we compare
| DIY static-analysis CLI | Public scanner demos | "Audit bot" side-projects | SmartScan | |
|---|---|---|---|---|
| Form factor | Local CLI, self-host | Browser form, 1-shot | Discord/Telegram bot | Hosted HTTPS API |
| Integration | Manual glue code | None | Copy/paste per scan | One POST, JSON out |
| LLM-triaged findings | No | Rare | Varies | Yes, every scan |
| Gas optimization tips | No | No | No | Yes |
| SLA / support | Community | None | Maintainer goodwill | Email + priority on paid tiers |
| Starts at | Free, hours of setup | Free, not scriptable | Free, unreliable | Free try / then $48.9/mo or $9.9 per scan |