Skip to main content

Base URL

https://api.qwedai.com/v1
Or for local development:
http://localhost:8000

Authentication

All requests require an API key:
curl -H "X-API-Key: qwed_your_key" https://api.qwedai.com/v1/health

Core endpoints

MethodEndpointDescription
GET/healthHealth check (no auth required)
POST/verify/natural_languageNatural language verification
POST/verify/mathMath expression/equation verification
POST/verify/logicLogic constraint verification
POST/verify/codeCode security analysis
POST/verify/sqlSQL validation against schema
POST/verify/factFact checking against context
POST/verify/consensusMulti-engine consensus verification
POST/verify/imageImage claim verification
POST/verify/statsStatistical claim verification
POST/verify/processReasoning trace verification
POST/verify/ragRAG retrieval mismatch detection
POST/verify/batchBatch verification
GET/verify/batch/{job_id}Get batch job status
POST/agents/registerRegister an AI agent
POST/agents/{id}/verifyAgent verification request
POST/agents/{id}/tools/{tool}Agent tool call approval
GET/agents/{id}/activityAgent activity audit log
GET/metricsSystem metrics
GET/metrics/{org_id}Per-tenant metrics
GET/metrics/prometheusPrometheus scrape format
GET/logsTenant verification logs
POST/auth/signupCreate account and organization
POST/auth/signinSign in
GET/auth/meCurrent user info
POST/auth/api-keysCreate API key
GET/auth/api-keysList API keys
DELETE/auth/api-keys/{id}Revoke API key
GET/audit/logsAudit logs
GET/audit/exportExport audit logs as CSV

Request format

Most verification endpoints accept JSON with a query or domain-specific fields:
{
  "query": "What is 15% of 200?",
  "provider": "openai"
}
Some endpoints (image, stats) use multipart form data instead of JSON.

Response format

Responses vary by engine. A typical natural language verification response:
{
  "status": "VERIFIED",
  "user_query": "What is 15% of 200?",
  "translation": {
    "expression": "0.15 * 200",
    "claimed_answer": 30.0,
    "reasoning": "15% as decimal is 0.15, multiply by 200",
    "confidence": 0.95
  },
  "verification": {
    "calculated_value": 30.0,
    "is_correct": true,
    "diff": 0.0
  },
  "final_answer": 30.0,
  "latency_ms": 245.3
}
See All endpoints for engine-specific response schemas.

Status Codes

CodeMeaning
200Success
400Bad request
401Unauthorized
429Rate limited
500Server error

Rate Limits

PlanRequests/minRequests/day
Free601,000
Pro60050,000
EnterpriseUnlimitedUnlimited

Detailed reference