Now in public beta. Read the announcement

One-Time Permissions for AI Agents

Secure your AI agents with scoped, ephemeral, and human-approved access to sensitive operations. Simple SDK integration, powerful policy engine, real-time approval workflow.

Free tier available
Open source SDK
5 min setup

Security First

Everything you need to secure AI agents

Built for the era of autonomous AI agents. Give your agents exactly the permissions they need, exactly when they need them.

Scoped Permissions

Define granular scopes for each operation. Limit actions to specific resources, amounts, or patterns.

Ephemeral Tokens

Tokens expire automatically after use or timeout. No persistent credentials to manage or rotate.

Human-in-the-Loop

Require approval for sensitive operations. Get notified via Telegram, email, or webhook.

Policy Engine

Configure rules to auto-approve safe operations or require human review for risky ones.

Full Audit Trail

Every permission request, approval, and usage is logged. Export logs for compliance.

Framework Agnostic

Works with LangChain, CrewAI, AutoGen, or any custom agent. TypeScript and Python SDKs.

Simple Integration

How it works

Get started in minutes. Our SDK handles the complexity so you can focus on building.

01

Install the SDK

Add the Agent OTP SDK to your project with npm or bun.

02

Request Permission

When your agent needs to perform a sensitive operation, request a one-time permission.

03

Approve or Auto-Approve

Based on your policies, the request is auto-approved or sent for human review.

04

Use the Token

Execute the operation with the scoped, ephemeral token. It expires after use.

Developer Experience

Clean, intuitive API

Our SDK is designed to be simple and predictable. Request permissions, wait for approval, use the token. That's it.

TypeScript
Full TypeScript support with complete type definitions
Async/await with built-in timeout handling
Detailed error messages with actionable suggestions
example.ts
import { AgentOTPClient } from '@orrisai/agent-otp-sdk';

const otp = new AgentOTPClient({
  apiKey: process.env.AGENT_OTP_KEY,
});

// Request permission for a sensitive operation
const permission = await otp.requestPermission({
  action: 'gmail.send',
  resource: 'email:client@example.com',
  scope: {
    max_emails: 1,
    subject_pattern: '^Invoice.*',
  },
  context: {
    reason: 'Sending monthly invoice',
  },
  waitForApproval: true, // Blocks until approved
});

if (permission.status === 'approved') {
  // Use the one-time token
  await sendEmail({ otpToken: permission.token });
}

Pricing

Simple, transparent pricing

Start free, scale as you grow. No hidden fees, no surprises.

Free

$0/month

Perfect for hobby projects and experimentation.

  • 1 agent
  • 100 requests/month
  • Basic policies
  • Email notifications
  • Community support
Get started

Pro

$29/month

For individuals and small teams building serious applications.

  • 10 agents
  • 10,000 requests/month
  • Advanced policies
  • Telegram + webhook notifications
  • Priority support
  • Custom TTL settings
Get started

Team

$99/month

For growing teams with multiple agents and workflows.

  • Unlimited agents
  • 100,000 requests/month
  • Policy templates
  • Team management
  • SSO integration
  • Audit log export
  • SLA guarantee
Get started

Need enterprise features? Contact us for custom pricing.

Ready to secure your AI agents?

Join hundreds of developers building secure, trustworthy AI applications. Get started in minutes with our free tier.