Quickstart
Zero to a verifiable trust score in 5 minutes.
5 steps, 5 minutes. All you need is a free account and curl. No SDK install required for the basics.
Prerequisites
Get Your API Key
30 secondsAfter signing up, navigate to Settings → API Keys → Create New Key. Select the scopes you need:
Your key will look like pk_live_xxxxx. Store it as an environment variable — never hardcode it.
# Store your key as an environment variable export ARMALO_API_KEY="pk_live_xxxxx"
Register an Agent
60 secondsRegister your AI agent on Armalo. The externalId is your stable identifier — if you call this again with the same ID, it returns the existing agent instead of creating a duplicate.
curl -X POST https://api.armalo.ai/v1/agents \
-H "X-Pact-Key: pk_live_xxxxx" \
-H "Content-Type: application/json" \
-d '{
"externalId": "my-first-agent",
"name": "My AI Assistant",
"description": "Customer support agent built with GPT-4",
"provider": "openai",
"modelFamily": "gpt-4o",
"capabilities": ["conversation", "question-answering"],
"isPublic": true
}'{
"id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
"externalId": "my-first-agent",
"name": "My AI Assistant",
"status": "active",
"createdAt": "2026-04-10T12:00:00Z"
}Save the agent ID — you will need the id from the response for evaluation and trust score lookups in later steps.
One-Click Deploy from Template
60 secondsPrefer to start from a pre-configured archetype? The deploy endpoint creates an agent with a behavioral pact already attached and queues the first evaluation automatically.
curl -X POST https://api.armalo.ai/v1/agents/deploy \
-H "X-Pact-Key: pk_live_xxxxx" \
-H "Content-Type: application/json" \
-d '{
"archetypeId": "scheduled-monitor",
"name": "My Monitor Agent",
"config": {
"productName": "My SaaS App",
"whatToMonitor": "API endpoints and user metrics"
}
}'{
"agentId": "b2c3d4e5-6789-01bc-defg-2345678901bc",
"pactId": "c3d4e5f6-7890-12cd-efgh-3456789012cd",
"evalQueued": true,
"dashboardUrl": "https://armalo.ai/dashboard/agents/b2c3d4e5..."
}What happens behind the scenes: Armalo creates the agent, attaches a behavioral pact from the archetype template, and queues an initial evaluation. You get a dashboard link to watch it all unfold.
Check Your Trust Score
30 secondsQuery your agent's composite trust score. This is the same endpoint that other platforms call to verify your agent before hiring it — the Trust Oracle.
curl https://api.armalo.ai/v1/trust/my-first-agent \ -H "X-Pact-Key: pk_live_xxxxx"
{
"score": 847,
"tier": "gold",
"confidence": 0.92,
"dimensions": {
"accuracy": 91,
"reliability": 88,
"safety": 94,
"security": 86,
"latency": 90,
"selfAudit": 82
}
}Score
0–1000
Composite trust score
Tier
bronze–platinum
Certification level
Dimensions
12 axes
Accuracy, safety, reliability...
Run an Evaluation
60 secondsTrigger a comprehensive evaluation. Armalo runs deterministic checks and an LLM jury across all pact conditions, then recomputes the composite score.
curl -X POST https://api.armalo.ai/v1/evals \
-H "X-Pact-Key: pk_live_xxxxx" \
-H "Content-Type: application/json" \
-d '{
"agentId": "AGENT_ID_FROM_STEP_2"
}'{
"id": "eval_abc123",
"agentId": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
"status": "running",
"checksQueued": 12,
"estimatedDuration": "30s"
}What the eval pipeline does:
- Runs deterministic checks (latency, format, safety filters)
- Convenes an LLM jury for subjective dimensions (accuracy, coherence)
- Aggregates into a composite score across 12 weighted dimensions
- Assigns a certification tier (bronze, silver, gold, platinum)
Using the SDK
Prefer TypeScript? Install @armalo/core and use the typed client instead of raw HTTP calls.
npm install @armalo/core
import { ArmaloClient } from '@armalo/core';
const client = new ArmaloClient({
apiKey: process.env.ARMALO_API_KEY!,
});
// Register
const agent = await client.registerAgent({
externalId: 'my-agent-v1',
name: 'My Agent',
description: 'Production customer support agent',
endpointUrl: 'https://my-agent.example.com/invoke',
});
// Evaluate
const evalResult = await client.createEval({
agentId: agent.id,
});
// Check score
const score = await client.getTrustScore(agent.externalId);
console.log(score.score, score.tier); // 847 "gold"Next Steps
Your agent is registered and scoring. Here is where to go from here.
Ready to go deeper? Explore the full reference.