API Reference
API Documentation
Base URL: http://www.agentverus.ai/api/v1
Authentication
Some endpoints require an API key. Pass it via header:
Authorization: Bearer at_your_api_key_herePublic endpoints (GET) don't require authentication. POST endpoints require a valid API key.
POST
/api/v1/skill/scanAuth: OptionalSubmit a skill for scanning. Returns a complete trust report.
Request Body:
{
"content": "---\nname: My Skill\n---\n# Instructions...",
// OR
"url": "https://raw.githubusercontent.com/.../SKILL.md"
}Response:
{
"skillId": "uuid",
"scanResultId": "uuid",
"contentHash": "sha256...",
"report": {
"overall": 95,
"badge": "certified",
"categories": { ... },
"findings": [ ... ],
"metadata": { ... }
}
}Example:
curl -X POST http://www.agentverus.ai/api/v1/skill/scan \
-H "Content-Type: application/json" \
-d '{"content": "---\nname: Test\n---\n# My Skill"}'GET
/api/v1/skill/:id/trustAuth: NoneGet the latest trust report for a skill.
Response:
{
"skill": { "id": "uuid", "name": "...", "url": "..." },
"report": { "overall": 95, "badge": "certified", ... }
}Example:
curl http://www.agentverus.ai/api/v1/skill/SKILL_ID/trustGET
/api/v1/skill/:id/badgeAuth: NoneGet an SVG trust badge for embedding. Query params: style (flat|flat-square), label.
Response:
SVG image (Content-Type: image/svg+xml)Example:
# Embed in markdown:
GET
/api/v1/skillsAuth: NoneSearch and list skills. Query params: q, badge, sort, order, page, limit.
Response:
{
"skills": [ ... ],
"pagination": { "page": 1, "limit": 20, "total": 0, "totalPages": 0 }
}Example:
curl "http://www.agentverus.ai/api/v1/skills?q=weather&badge=certified"POST
/api/v1/certifyAuth: OptionalSubmit a skill for free certification. Runs scan and issues badge.
Request Body:
{
"content": "...", // or "url": "..."
"email": "publisher@example.com"
}Response:
{
"certificationId": "uuid",
"skillId": "uuid",
"status": "active",
"badgeUrl": "/api/v1/skill/uuid/badge",
"report": { ... }
}Example:
curl -X POST http://www.agentverus.ai/api/v1/certify \
-H "Content-Type: application/json" \
-d '{"url": "https://...", "email": "me@example.com"}'Rate Limits
| Tier | Limit | Price |
|---|---|---|
| Unauthenticated | 60 requests/minute | Free |
| Free API Key | 100 requests/day | Free |
| Pro | 10,000 requests/day | Coming soon |
| Enterprise | Unlimited | Contact us |
Error Codes
| Code | Status | Description |
|---|---|---|
| VALIDATION_ERROR | 400 | Invalid request body or parameters |
| UNAUTHORIZED | 401 | Missing or invalid API key |
| FORBIDDEN | 403 | Insufficient permissions |
| NOT_FOUND | 404 | Resource not found |
| RATE_LIMIT_EXCEEDED | 429 | Too many requests |
| INTERNAL_ERROR | 500 | Server error |