Why it matters
Copilot Studio agents typically have access to Microsoft Graph, Dataverse, and an organization’s custom HTTP endpoints. Without governance, those agents inherit the human’s full permission set. Inviolet narrows that to the declared purpose for each turn.1. Add Inviolet as a custom connector
In the Power Apps maker portal: Custom connectors → New custom connector → Create from blank.- General: Host =
gateway.inviolet.ai, Base URL =/proxy/copilot - Security: API Key, location = Header, parameter name =
Authorization, prefix =Bearer - Definition: import the OpenAPI spec at
https://gateway.inviolet.ai/openapi.json
2. Call Inviolet from a topic
In a Copilot Studio topic, add a Call an action → Connector action node. Pick the Inviolet connector you registered, then callPOST /v1/intent/evaluate:
outcome variable. If outcome == "allowed", proceed
to the actual data-fetching connector. If denied or
pending_approval, return a Copilot message explaining the next step.
3. Verify
Trigger the topic from a test conversation. The decision feed at app.inviolet.ai/decision-feed shows the intent event tagged withsource = copilot_studio.
Read next
- Claude for Work
- ChatGPT Enterprise
- Define your purpose policies — turning observed Copilot calls into enforced policy