AI agent access control
Keep client work
inside the right accounts.
Peon resolves the client, loads only their selected accounts, applies the allowed provider actions, and discloses the data boundary used for each read. Unclear routing stops instead of guessing.
Acme access
Applied before the AI acts
Gmail
acme@studio.com
Notion
Acme workspace
Analytics
Acme property
GitHub
No account selected
Anything outside this client's assigned accounts and access is unavailable to the request.
Allowed actions
Choose what the AI
can do in each app.
Access modes determine which provider actions are available to the AI for one client-app connection. Restrictions are applied before provider execution.
- 01
Full
Allow the available read and write actions for a trusted client-app connection. - 02
Read-only
Allow provider actions marked read-only while changes remain unavailable to the AI. - 03
Curated
Expose only the specific provider actions you select for that client and app.
Returned data
Declare the client data
that belongs in scope.
Access answers which actions may run. A client data boundary separately describes which rows or containers belong to that client.
When no boundary is declared, Peon can return the full selected account and says that the result was unbounded. When a payload cannot be checked, Peon flags that condition instead of pretending the result is empty.
Email address, email domain, or a Gmail query.
Analytics property, Drive folder, GitHub repository, Slack channel, Notion page or database, or calendar.
Every read states whether the request was narrowed, the response was filtered, no boundary was declared, or the payload could not be checked.
Visible boundaries
Controls that show up
in the result.
Trust comes from an explainable path: which client was resolved, which app was selected, what was allowed, what boundary was applied, and what the provider returned.
- 01Client resolution
Ambiguity fails closed
If a name could refer to more than one client, Peon returns the matches and asks for a choice instead of silently selecting one. - 02Account routing
One selected account per app
Each client has at most one selected account for each app. Reassigning one client does not change another client's setup. - 03Allowed actions
Access is enforced before execution
Full, read-only, and curated modes determine which provider actions are available. Out-of-scope actions are refused before provider execution. - 04Returned data
Data boundaries stay visible
Declared mailbox, folder, property, repository, channel, page, database, or calendar boundaries are applied and disclosed in the result. - 05Repeat requests
Writes are protected from blind repeats
Every direct execution uses an idempotency key, so identical successful requests replay safely and conflicting requests are refused. - 06Credentials
Agents never choose raw connections
Provider credentials and raw connection IDs stay out of the agent response. Peon resolves the exact account from the client graph.
Separate and revocable
Each connected AI has its own OAuth-capable identity. Revoking one agent does not remove clients, app accounts, access modes, or data boundaries.
Confirmation still matters
Writes execute when requested. The AI should get your normal confirmation before sends, deletes, publishes, financial actions, or account administration.
A compact continuation trail
Peon records the tool, app, outcome, time, and provider receipt for recent work. It does not duplicate the request or response payload as a memory platform.
Start free
Bring us the workflow you need to trust.
Describe the client accounts, access modes, and data boundaries your workflow needs. We will answer against the product that actually ships.