Skip to content

Roles and Permissions

Agent Studio uses your existing Alation roles to enforce access controls across agents, custom tools, and flows. The core philosophy is simple: you always have full control over resources you create, while restrictions only apply to actions on other people’s resources.

Alation roles are grouped into four tiers for Agent Studio permissions:

TierRolesSummary
GlobalServer AdminFull control over all resources, including other users’
AdminCatalog AdminCan see all resources, edit others’ flows
StandardComposer, Steward, Source AdminFull control over own resources, can publish agents as tools
RestrictedViewer, ExplorerFull control over own resources, cannot publish agents as tools

Every agent has a published status that controls who can see it:

  • Published agents are visible to all roles.
  • Draft agents are only visible to the owner and admin-tier roles (Server Admin, Catalog Admin).

When you create a new agent, it starts in draft status. This means other non-admin users cannot see or interact with it until it is published.

ActionServer AdminCatalog AdminStandard rolesViewer / Explorer
Create agentYesYesYesYes
Edit own agentYesYesYesYes
Edit others’ agentYesNoNoNo
Delete own agentYesYesYesYes
Delete others’ agentYesNoNoNo
Set own agent published / draftYesYesYesYes
Set others’ agent published / draftYesNoNoNo
Publish / unpublish own agent as toolYesYesYesNo
Publish / unpublish others’ agent as toolYesNoNoNo
Clone others’ agentYesYesYesYes
See others’ draft agentsYesYesNoNo
See published agentsYesYesYesYes

When a non-admin user lists agents, they see only published agents plus their own drafts.

When an agent is published as a tool (for use in MCP or as a sub-agent), the tool inherits the parent agent’s visibility:

  • If the parent agent is published, the tool appears for all users.
  • If the parent agent is draft, the tool only appears for the owner and admin-tier roles.

To change an agent’s published status, send a PATCH request:

Terminal window
curl -X PATCH 'https://<your-tenant>.alationcloud.com/ai/api/v1/config/agent/<agent-id>' \
-H 'Content-Type: application/json' \
-H 'x-csrftoken: <your-csrf-token>' \
-H 'Cookie: sessionid=<your-session-id>; csrftoken=<your-csrf-token>' \
-d '{"published_status": "published"}'

To unpublish (set back to draft), use {"published_status": "draft"}.

Who can change published status:

  • Any role can set their own agent to published or draft.
  • Only Server Admin can change other users’ agents’ published status.

Finding your agent ID:

The agent ID is visible in the URL when viewing an agent in the Agent Studio UI:

https://<tenant>.alationcloud.com/app/studio/agents/a/<agent-id>

You can also list all your agents via the API:

Terminal window
GET /ai/api/v1/config/agent

Custom tools have simpler access controls than agents because they have no visibility filtering — all custom tools are visible to all authenticated users.

ActionServer AdminCatalog AdminStandard rolesViewer / Explorer
Create toolYesYesYesYes
Edit own toolYesYesYesYes
Edit others’ toolYesNoNoNo
Delete own toolYesYesYesYes
Delete others’ toolYesNoNoNo
See all toolsYesYesYesYes

Flows have two unique access control behaviors compared to agents:

  1. Catalog Admin can edit others’ flows (unlike agents, where they cannot).
  2. Viewer and Explorer cannot trigger others’ flows (but can trigger their own).
ActionServer AdminCatalog AdminStandard rolesViewer / Explorer
Create flowYesYesYesYes
Edit own flowYesYesYesYes
Edit others’ flowYesYesNoNo
Delete own flowYesYesYesYes
Delete others’ flowYesNoNoNo
See all flowsYesYesYesYes
Trigger own flowYesYesYesYes
Trigger others’ flowYesYesYesNo

Access controls are based on ownership, which is determined by the user that created the resource. Ownership does not change when a user’s role changes.

This means:

  • If a Composer creates an agent and is later downgraded to Viewer, they can still see, edit, and delete that agent.
  • The only thing that changes is their ability to publish as a tool — Viewer and Explorer cannot publish their agents as MCP tools.

Role changes take effect immediately on the next request. There is no need to log out and log back in.

When connecting via MCP or using OAuth authentication, the same role-based access controls apply. Your role is determined by how you authenticate:

  • User sessions — your Alation role is used directly.
  • Machine-to-machine (M2M) OAuth apps — the role assigned to the OAuth application when it was created is used.

MCP tool visibility follows the same rules as the API: draft agent-as-tools are only visible to the owner and admin-tier roles.

Agent Studio uses standard HTTP status codes for access control errors:

Status codeMeaning
404 Not FoundThe resource is invisible to you (e.g., another user’s draft agent). The existence of the resource is not revealed.
403 ForbiddenYou can see the resource but do not have permission to perform the requested action.