Developer docs

One decision call before every important action.

Use Permra to evaluate scope, request approval when needed, issue a constrained grant, and preserve evidence.

TypeScript evaluate.ts
const decision = await permra.evaluate(({
  agent: "finops-agent",
  action: "transfers.create",
  context: { amount: 25000 },
});

if (decision.requiresApproval) {
  await decision.requestApproval();
}
Decision: require_approvalPolicy finops.transfer.v3
Quickstart

Put Permra before a tool call.

Model the agent, action, resource, and context. Permra returns a structured decision your application can enforce.

01

Create a policy domain

Separate policy ownership by product, tenant, business unit, or environment.

02

Describe the action

Send the acting agent, represented user, operation, resource, and contextual facts.

03

Enforce the decision

Continue on allow, create an approval on ask, and stop cleanly on deny.

This is an example of the documentation experience. SDK packages and endpoint details will be published with the developer docs.

Developer docs

Design the first policy with our team.

Start with one agent, one consequential action, and one clear policy.