Complete Audit Trails
Every decision has an ID linking to policy version, input hash, provider response, and resulting action
Turn automated judgments into auditable, defensible decisions with complete policy governance
npm install @vettly/sdkbun add @vettly/sdkyarn add @vettly/sdkimport { VettlyClient } from '@vettly/sdk'
const vettly = new VettlyClient({ apiKey: 'your-api-key' })
// Every decision returns a unique ID and audit trail
const decision = await vettly.check({
content: userPost.body,
policyId: 'community-safe',
context: {
userId: user.id,
sessionId: session.id
}
})
// decision.id = "dec_abc123..." - use for appeals, audits, legal discovery
console.log(decision.action) // 'allow' | 'warn' | 'flag' | 'block'Every judgment produces a complete audit record:
Learn about Decision Records →
Define explicit rules in version-controlled YAML:
rules:
- category: harassment
threshold: 0.4
action: flag
- category: hate_speech
threshold: 0.3
action: blockLearn about Policy Versioning →
Built-in due process for contested decisions:
| Capability | Vettly | Classification APIs |
|---|---|---|
| Decision IDs | ✅ Every judgment | ❌ No tracking |
| Policy Versioning | ✅ Version-controlled | ❌ Not available |
| Audit Trails | ✅ Complete history | ❌ Build your own |
| Appeals Workflow | ✅ Built-in | ❌ Build your own |
| Evidence Preservation | ✅ GDPR-compliant | ❌ Build your own |
| Compliance Reports | ✅ Export ready | ❌ Build your own |
| Provider Abstraction | ✅ Same policy, any provider | ❌ Vendor lock-in |
When a decision becomes a lawsuit, you need proof of your process.
DSA, GDPR, and industry-specific requirements all need documentation.
Users contesting decisions deserve a fair process with complete evidence.
Found an issue with the docs? Report it on GitHub.