Skip to main content
Backed byCombinator (opens in a new tab)

The auth layer
for AI agents.

Scoped credentials for apps and AI agents. No tokens to store, no OAuth flows to build, no audit pipeline to run.

gnt_7x92k
Incoming Request
A
sales-agent
agent: ai_agent
GET api.github.com/user/repos
Policy Evaluation
Identity verified
Scope check: repo:read
Rate limit: 847 / 1,000
Token refreshed (3m ago)
Authorization Result
APPROVED
Injected Headers
Authorization: Bearer ghp_••••••••k4m2
X-Alter-Grant: gnt_7x92k
Audit Log
action: token.proxy
agent: sales-agent
target: github.com
status: 200 OK
latency: 142ms
GoogleZoomSlackGitHubSalesforceHubSpotLinearNotionDropboxDiscordStripeFigmaAsanaAirtable
137 integrations
Zero-trust architecture
SOC 2 in progress

Give agents their own keys, not yours.

Without Alter

.envOPENAI_API_KEYsystem-prompt.mdSLACK_BOT_TOKENci-config.yamlSTRIPE_SECRET_KEY

Keys scattered everywhere

Pasted into prompts, configs, and .env files across every repo.

admin-key-prodused by: all 14 agents

One key does everything

Every agent borrows the same over-scoped credential.

Who refunded that charge?No results found.

No answers afterward

Nobody can say which agent did what, or on whose behalf.

With Alter

vault: 3 credentialsinjected per request

One vault

Stored once, injected per request, never exposed to your code.

billing-agent · refunds:writeneeds approval

Least privilege per agent

Each agent gets its own identity and scopes, with a human gate where you want one.

Who refunded that charge?billing-agent, for finance-ops, 14:03, approved by J. Lee

Every action on the record

A tamper-evident trail with a name attached to every call.

How it works

Alter authenticates, authorizes, and logs every request

One SDK call handles storage, refresh, policy, and audit for 137 providers. First-class LangChain, MCP, and AWS integrations.

Agent reads calendar with authorized scope
scheduling-agentGETgoogleapis.com/calendar/v3/events
EVALUATING…
END USERS
Authorize via Connect
OAuth consent
YOUR INTEGRATIONS
MCP ServersAI AgentsChatbotsApps
SDK request
Alter Vault
Connect
Vault
Policy
Audit
Token + API call
EXTERNAL SERVICES
GoogleGoogle
SlackSlack
GitHubGitHub
SalesforceSalesforce
NotionNotion
LinearLinear
OAuth + API keys
Event Log
1User authorized Google Calendar via Connect widget
2Scheduling agent requests calendar access via SDK
3Identity verified · Policy: scope=calendar.readonly · APPROVED
4Token decrypted · GET googleapis.com/calendar/v3 · 200 OK
5Logged: scheduling-agent → calendar.readonly → APPROVED

How the platform itself is secured

  • Credentials live in a dedicated secret store, encrypted at rest, with keys managed outside the application database
  • Fail-closed authorization: if a policy cannot be evaluated, the request is denied
  • Zero-trust ownership: a key confers no capability without an explicit record naming it
  • Postgres holds metadata and vault references; provider tokens and credentials live only in the vault
  • Per-key isolation, plaintext credentials never in logs and never returned to application code
Compliance & audit

Controls monitored continuously

SOC 2 in progress

Our trust center publishes the live state of our security program: monitored controls, an independent penetration test within the last 12 months, and security policy documents on request.

Visit the trust center (opens in a new tab)

Ready to secure your agents?

Book a 30-minute walkthrough with the founders.

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.