Make your SaaS application actor-aware.
Understand observed human, AI-assisted, autonomous and unknown interactions so your product can respond appropriately, from sign-up to settings.
POST /reports/generate
Evidence
The app's built-in assistant created this request for a signed-in user
Your policy: Allow and record the report as AI-assisted
Your users now bring assistants and agents with them.
People sign in and then hand work to AI assistants, browser agents and automations. Your app sees the same account and the same session for all of it.
That makes it hard to design the right experience: a fast path for people, a structured path for legitimate automation, and a careful path for sensitive actions. Proof of Actor gives your product that context.
Proof of Actor adds
An assistant is acting through this account on /reports.
What SaaS teams do with actor context
Protect the human experience
Keep sign-up, onboarding and everyday flows fast for people, without blanket friction.
Give agents a structured path
Offer verified or declared agents an API or a structured response instead of a UI built for people.
Support disclosed AI assistance
Accept AI-assisted work where it fits and label it, instead of treating it as abuse.
Guard sensitive actions
Add review or a stronger check on account-changing actions when your own policy calls for it.
Understand product usage
See which features people, assistants and agents actually use, route by route.
Plan for Unknown
Decide per route what happens when the evidence is not enough, and keep that rate visible.
01 · Detect
Signals from your product and your server.
A browser collector captures interaction signals on the pages you choose, and a server integration adds request context and signatures from automated clients.
- Interaction signals where the browser collector runs.
- Signed requests from agents that publish their keys.
- In-app AI disclosures and your own assistant features.
- Request signaturevalid · sample-crawler.exampleverified
- Client declaration"research-assistant/2.1"declared
- Browser interactionpointer + keyboard eventsinferred
- No supported signalsroute not instrumentedunknown
02 · Understand
See how each workflow is really used.
Compare the actor mix on your dashboard, settings, support and sign-up flows, and drill into the evidence behind any session.
- Actor mix per route and per workflow.
- Evidence and basis for every result.
- Unknown rate by route, so you know where to add coverage.
- /dashboardUnknown 7%
- /api/v1/catalogUnknown 15%
- /support/ticketsUnknown 8%
- /signupUnknown 21%
03 · Route
The right experience for each actor.
Write rules for the routes that matter and roll them out gradually. Everything else keeps working exactly as it does today.
- Policies by route, actor class and basis.
- Observe, preview, then enforce.
- Your existing authentication and authorization stay in charge.
- /api/v1/catalogenforceAgentAllow · structured API
- /support/ticketsenforceHuman + AIAllow · label AI-assisted
- /account/*previewUnknownKeep existing checks
- /api/v1/orderspreviewAgentRequire stronger credential
Example decisions
From request to result to your decision.
A verified agent reads your catalog
Request
GET /api/v1/catalog
Result
Agentbasis: verifiedYour decision
Send it to the structured API, and require separate authorization for account changes.
A person drafts a ticket with AI
Request
POST /support/tickets
Result
Human + AIbasis: declaredYour decision
Accept it and route it to support with an AI-assisted label.
A settings change with too little evidence
Request
POST /account/password
Result
Unknownbasis: unknownYour decision
Keep the existing re-authentication flow. No actor-based decision.
Roll out without risk
Teams start in observation mode and move route by route.
- 01
Observe your key flows
Add the browser collector and server middleware to sign-up, support and settings. Nothing in your product changes.
- 02
Preview per workflow
See what a rule would have done on real sessions, for example labelling AI-assisted tickets or routing agents to your API.
- 03
Enforce route by route
Turn on one workflow at a time, with an explicit fallback for Unknown on account-changing actions.
Works with your stack
- Founding teams
Web server middleware (Node.js)
Server-side
Request-level signals for server-rendered apps and APIs.
- Founding teams
Next.js
Server-side and edge
Middleware for page and API routes.
- Founding teams
Browser script
Browser signals only
Interaction signals from browser sessions, alongside a server-side integration.
- Founding teams
Cloudflare and edge runtimes
Edge
Signals at the edge before requests reach your origin.
- Founding teams
Generic HTTP API
Any stack
Send request context to an API and receive a result with its basis.
- Founding teams
MCP server
MCP
Actor context for MCP tool calls.
- Roadmap
WordPress
Plugin
Plugin for WordPress sites.
- Roadmap
Native mobile
iOS and Android
Native iOS and Android SDKs.
Integrations are delivered hands-on with each founding team during onboarding. Using a different stack? Tell us when you apply.
Frequently asked questions
Will it slow down or block my users?
No. Proof of Actor starts in observation mode and changes nothing in your app until your team enables a policy for a specific route.
Can it tell when someone used ChatGPT in another tab?
Not from ordinary web traffic. Human + AI results come from AI use that is declared or observable in your app, such as your own assistant feature or a disclosure control.
Does it replace our login or fraud tools?
No. It adds actor context alongside them. Your authentication, authorization and fraud tooling stay in charge of their own decisions.
Which workflows should we start with?
Start with the workflows where the actor changes the right response: sign-up, support, high-value features and account settings.
What does it cost?
Selected founding developer teams can receive up to 12 months free within agreed usage limits.
Bring actor context to your SaaS app.
Join the Proof of Actor founding developer program.
Prefer to talk first? Talk to the founders