Aira

Quickstart

Get your first AI consensus case running in under 5 minutes.

1. Create an Account

Register your organization and get your first API key:

curl -X POST https://api.airaproof.com/api/v1/auth/register \
  -H "Content-Type: application/json" \
  -d '{
    "org_name": "Acme Fintech",
    "email": "dev@acme.com",
    "password": "your-secure-password"
  }'
Response
{
  "org_id": "org_01J8X...",
  "user_id": "usr_01J8X...",
  "api_key": "aira_live_aBcDeFgHiJkLmNoPqRsTuVwXyZ...",
  "api_key_prefix": "aira_live_aBcDeFgH...",
  "request_id": "req_a1b2c3d4e5f6"
}

Save your API key immediately. It is shown once and cannot be retrieved again.

2. Submit Your First Case

Send case details to three AI models and get a consensus decision with a signed receipt:

curl -X POST https://api.airaproof.com/api/v1/cases \
  -H "Authorization: Bearer aira_live_aBcDeFgH..." \
  -H "Content-Type: application/json" \
  -d '{
    "details": "Should we approve a credit application for a customer with credit score 742, income €45,000/yr, and 3 years employment history?",
    "context": {
      "domain": "credit",
      "jurisdiction": "EU"
    },
    "models": ["gpt-5.4", "claude-sonnet-4-6", "gemini-3.1-flash-lite"],
    "options": {
      "human_review_threshold": 0.4
    }
  }'
Response
{
  "case_id": "prn_01J8X...",
  "status": "complete",
  "consensus": {
    "decision": "APPROVE",
    "text": "All 3 models agree: APPROVE. Key shared factors: credit score above threshold, stable income.",
    "confidence_score": 0.87,
    "disagreement_score": 0.12,
    "requires_human_review": false
  },
  "case_results": [
    {
      "model": "gpt-5.4",
      "decision": "APPROVE",
      "confidence": 0.91,
      "key_factors": ["credit score 742 above threshold", "stable income", "DTI ratio 28%"],
      "reasoning": "Based on the credit score of 742 and income of €45,000..."
    },
    {
      "model": "claude-sonnet-4-6",
      "decision": "APPROVE",
      "confidence": 0.88,
      "key_factors": ["strong repayment capacity", "credit score in good range"],
      "reasoning": "The applicant demonstrates strong repayment capacity..."
    },
    {
      "model": "gemini-3.1-flash-lite",
      "decision": "REVIEW",
      "confidence": 0.62,
      "key_factors": ["moderate risk", "positive DTI", "limited credit history"],
      "reasoning": "Credit indicators suggest moderate risk..."
    }
  ],
  "receipt": {
    "receipt_id": "rct_01J8X...",
    "payload_hash": "sha256:a1b2c3...",
    "signature": "ed25519:base64url...",
    "public_key_id": "aira-signing-key-v1",
    "timestamp": "2026-03-14T10:23:45.123Z",
    "timestamp_authority": "freetsa.org",
    "verify_url": "https://api.airaproof.com/api/v1/verify/rct_01J8X..."
  },
  "request_id": "req_01J8X..."
}

3. Verify a Receipt

Anyone can verify a receipt — no authentication required:

curl https://api.airaproof.com/api/v1/verify/rct_01J8X...

Share the verify_url with your auditor, regulator, or compliance team.

4. Use It in Your Code

Python
import httpx

client = httpx.Client(
    base_url="https://api.airaproof.com/api/v1",
    headers={"Authorization": "Bearer aira_live_xxxxx"},
)

result = client.post("/cases", json={
    "details": "Should we approve this loan?",
    "models": ["gpt-5.4", "claude-sonnet-4-6", "gemini-3.1-flash-lite"],
}).json()

if result["consensus"]["requires_human_review"]:
    queue_for_review(result)
else:
    execute_decision(result["consensus"]["decision"])

# Save the receipt for your audit trail
save_receipt(result["receipt"])
TypeScript
const result = await fetch("https://api.airaproof.com/api/v1/cases", {
  method: "POST",
  headers: {
    "Authorization": "Bearer aira_live_xxxxx",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    details: "Should we approve this loan?",
    models: ["gpt-5.4", "claude-sonnet-4-6", "gemini-3.1-flash-lite"],
  }),
}).then(r => r.json());

if (result.consensus.requires_human_review) {
  await queueForReview(result);
} else {
  await executeDecision(result.consensus.decision);
}

What's Next?

On this page