How User Level Authentication works
User Level Authentication changes how authentication works when multiple people use the same agent. Instead of everyone using a single shared account to access integrations (like Google Drive, Slack, or HubSpot), each user connects their own individual work accounts.Builders configure
Choose which tool inputs require user level authentication using simple toggles
Users authenticate
Connect once per tool when first using the agent - credentials are saved for future use
Credentials persist
Authentication is automatically remembered and reused for all future agent runs
Defaults apply
Set preferred accounts for each integration that auto-populate in new agents
Why use User Level Authentication
Enhanced Security
Each user accesses integrations with their own credentials and permissions, reducing the security risks of shared accounts.
Privacy Protection
Users only see their own data. When an agent queries Google Drive or searches through emails, it only accesses the data that user has permission to see.
Access Control
Users can only access what they’re authorized to see in the external integration, based on their own account permissions rather than a shared account’s permissions.
Simplified Management
No need to manage shared credentials or worry about what happens when team members leave. Each user manages their own connections.
Audit Trail
Actions taken by agents are attributed to individual user accounts in external integrations, making it easier to track who did what.
Requirements for User Level Authentication
User Level Authentication works with tools that use OAuth authentication only. Supported:- Tool steps with OAuth account inputs (e.g., Google Sheets, Slack, HubSpot, Notion, Trello)
- Any integration that uses OAuth to connect user accounts
- Tools that use API key authentication
- Python code steps (even when using OAuth via the Integration helper class)
- Custom API calls with API key or bearer token authentication
Where User Level Authentication works
User Level Authentication is supported in the following contexts:Chat
Users are prompted to connect their own account when an agent requests an authenticated action
Run tab
Same experience when running an agent directly in the agent builder
Workforces
When a workforce delegates to an agent with user level authentication configured, the user is prompted to authenticate
Limitations
Setting up user level authentication
As a builder, you can configure User Level Authentication at the agent level.- Head into your Agent and click Tools.
- Head to the Tool you want to set User Level Authentication on, and find the Input for the OAuth account. From here, click the agent input setting, which is currently set to ‘Set manually’.
- Then, set this to ‘Per-user authentication’.
If you have asset-level authentication controls enabled through RBAC, users can also choose from project-level shared accounts instead of authorizing their individual accounts.
User experience in Chat
When users interact with an agent in Chat that has User Level Authentication enabled, the authentication flow is seamless and intuitive.First-time authentication
When a user runs an agent that requires User Level Authentication for the first time:- If you call an Agent that requires User Level Authentication for the first time, you will see a pop up appear when you need to connect an account.
- To do this, click the ‘Select connected account’ dropdown, and choose a shared account from here, or add your own private account.
- Then, click ‘Add account’ to continue onto your account log in, and follow the next steps to log into your account on the integration you’re connecting to.
Subsequent uses
After the first authentication:- The agent automatically uses the user’s saved credentials
- No interruption to the agent’s execution
- Users can change their default credentials in project settings if needed
Multiple tools
Authentication is required per tool, not per integration. If an agent uses two Google Drive tools, for example, you’ll be prompted to authenticate each tool separately on the first run. After initial setup, all credentials are remembered and reused automatically.Managing default authentication
Users can manage their default authentication accounts for each integration at the project level, making it easy to control which accounts are used by agents.Setting integration defaults
To set or change your default account for an integration:- Click on ‘Integrations & API Keys’ in the sidebar
- Click on the integration you want to configure
Privacy and account visibility
To protect privacy and security:- Private accounts are hidden - Your personal accounts won’t be visible to other users
- Auths are private by default - When you connect a new account, it’s automatically set as private
- Shared accounts - If your organization has shared project-level accounts, you’ll see those as options alongside your personal accounts
Frequently asked questions (FAQs)
What happens if I need to change my authentication credentials?
What happens if I need to change my authentication credentials?
If you need to change your authentication credentials, you can do so easily. During Chat, you’ll receive modal prompts that allow you to select existing credentials, add new ones, or mark a new credential as default. You can also manage your default credentials by going to Integrations & API Keys in the sidebar and selecting the integration you want to reconfigure.
Can I use both shared accounts and individual accounts in the same project?
Can I use both shared accounts and individual accounts in the same project?
What integrations support User Level Authentication?
What integrations support User Level Authentication?
User Level Authentication works with all integrations that support OAuth authentication in Relevance AI. This includes popular integrations like Google Drive, Gmail, Slack, HubSpot, Salesforce, and many others.
Is this feature only available on Enterprise plans?
Is this feature only available on Enterprise plans?
Yes, User Level Authentication is an Enterprise-only feature. If you would like access to this feature, please reach out to your sales representative.
Where can I use User Level Authentication?
Where can I use User Level Authentication?
User Level Authentication works in Chat, the Run tab (when running agents directly in the agent builder), and in Workforces (when a workforce delegates to an agent with user level authentication configured). However, it is NOT currently supported in embedded chat widgets on external websites.
Why can't I enable User Level Authentication on my tool?
Why can't I enable User Level Authentication on my tool?
User Level Authentication only works with OAuth-based integrations. If you don’t see the option to set ‘Per-user authentication’ on your agent input setting, it’s likely because:
- Your tool uses API key authentication instead of OAuth
- Your tool uses a Python code step
My integration uses API keys or Python code steps. Can I use User Level Authentication?
My integration uses API keys or Python code steps. Can I use User Level Authentication?
No. User Level Authentication only supports OAuth-based integrations. If your integration uses API key authentication, Python code steps, or custom API calls with bearer tokens, you’ll need to use a shared account instead. Only integrations that use OAuth to connect user accounts (like Google Sheets, Slack, HubSpot, Notion, etc.) are compatible with User Level Authentication.

