Authentication Settings
Authentication Settings lets administrators configure how users sign in to the Platform. You can enable Single Sign-On (SSO) to authenticate users through your organization’s identity provider, and Multi-Factor Authentication (MFA) to add a second layer of verification for email/password sign-ins.Only account owners and admins can configure Authentication Settings.
How SSO and MFA Work Together
The Platform supports two authentication paths, and MFA scope adjusts automatically based on which path is active:Access Authentication Settings
- Log in to your account and select Settings on the top navigation bar.
- In the left menu, go to Security & Control > Authentication Settings.
- Single Sign-On (SSO) Configuration
- Multi-Factor Authentication (MFA).
Single Sign-On (SSO)
SSO allows users to access their Platform accounts using credentials managed by an external IdP. Once authenticated with the IdP, users can access the Platform without a separate login. Key benefits:- Secure Access - Reduces password fatigue and the risk of phishing or weak passwords.
- Simplified User Management - Centrally grant or revoke access across all users.
- Improved User Experience - Eliminates repeated logins within the same session.
- Centralized Access Control - Enforce and monitor security policies across all applications from one place.
How SSO Works
- User attempts to access their account.
- The Service Provider (SP) redirects the user to the IDP login page.
- User authenticates with the IDP.
- IDP issues an authentication token.
- SP validates the token and grants access.
- User accesses the account without re-authenticating for the rest of the session.
SSO Status
The SSO Status toggle at the top of the SSO Configuration section controls whether SSO is active for your organization.Enable SSO
- On the Single Sign-On page, select Enable SSO.
- Select a Sign-on protocol and SSO provider.
- Enter the configuration parameters for your selected protocol and provider (see Configuration Parameters).
- Add at least one SSO-excluded user (see SSO-Excluded Users).
- Select Save.
Disable SSO
Disabling SSO collapses the SSO Protocol, Identity Provider, and SSO-Excluded Users sections, and reverts all users to email/password authentication. The MFA section updates automatically to reflect organization-wide scope. Steps:- Go to Security & Control > Authentication Settings.
- Under SSO Status, toggle off SSO Enabled (it will show SSO Disabled).
- In the confirmation dialog, select Yes to confirm.
Previously configured SSO parameters are retained and visible if you re-enable SSO.
SSO-Excluded Users
When SSO is enabled, all users must sign in through the configured IdP by default. Use this section to designate specific users who can bypass SSO and sign in via email/password instead - useful when the SSO provider is unavailable, misconfigured, or the certificate has expired.The account owner is excluded by default. It is strongly recommended to exclude at least one additional admin user as a fallback.
Add an Excluded User
- Enter a valid email address in the Add User Email field.
- Select Add User. The user appears as a chip in the Excluded Users list.
- Select Save.
Configuration Parameters
SAML
WS-Federation
OpenID Connect
When multiple certificates are added, the system uses the most recent valid one. If it’s invalid, it automatically falls back to other available certificates.
Multi-Factor Authentication (MFA)
MFA adds a second layer of verification during sign-in for users who authenticate via email/password. The Platform supports the following MFA methods: Email Verification, Authenticator App (TOTP), and SMS.Enable MFA
- Go to Security & Control > Authentication Settings.
- Under MFA Status, toggle MFA Required.
- Under Allowed MFA Methods, select the methods to enable - Email Verification, Authenticator App, or SMS.
- Select Save.
Disable MFA
- Under MFA Status, toggle off MFA Required (it will show MFA Disabled).
- Select Save.
MFA for Users (First Login)
When MFA is enabled and a user signs in for the first time:- The user enters their email address and password.
- The Platform prompts the user to set up an MFA method.
- On subsequent logins, the user is prompted to enter their MFA verification code.
- On successful verification, access is granted.
SSO Protocol Reference
SAML 2.0
Security Assertion Markup Language (SAML) is a protocol for web-based SSO that uses secure tokens instead of passwords. It allows IDPs and SPs to operate separately. When a user logs into a SAML-enabled app, the service provider requests authorization from the IDP, which authenticates the user and grants access to the application.How SAML works
SAML SSO works by transferring the user’s identity from one place (the IDP) to another (the SP) through an exchange of digitally signed XML documents. When a user logs into a system that acts as an IDP and tries to access his Platform account, the following happens:- The user accesses the remote app on the IDP portal using the sign-on endpoint URL, and the application loads.
- The application identifies the user’s origin (by application subdomain, user IP address, or similar) and redirects the user back to the IDP, asking for authentication. This is the authentication request.
- The user either has an existing active browser session with the IDP or establishes one by logging into the IDP.
- The IDP builds the authentication response in an XML document containing the user’s username or email address, signs it using an X.509 certificate, and posts this information to the SP.
- The SP, which knows the IDP and has a certificate fingerprint, retrieves the authentication response and validates it using the certificate fingerprint.
- The user’s identity is established, and the user is provided with the Platform account access.
Okta
- Go to Single Sign-On → Enable SSO → select SAML and Okta.
- In the Okta Developer Portal, go to Applications → Create App Integration → select SAML 2.0 → select Next.
- Enter an App Name under General Settings → select Next.
- Under Configure SAML, paste values from the Platform’s SSO page:
- ACS URL for SP-initiated SAML flow → Single Sign-On URL
- ACS URL for IDP-initiated SAML flow → Audience URI (SP Entity ID)
- Select Next → Finish.
- On the Sign On tab, select View Setup Instructions and copy:
- Identity Provider Single Sign-On URL → paste into Okta Single Sign-On URL on the Platform
- Identity Provider Issuer → paste into Identity Provider Issuer on the Platform
- Go to Sign On → SAML Signing Certificates → select Download certificate under Actions.
- Open the certificate in a text editor and copy the data between
BEGIN CERTIFICATEandEND CERTIFICATE. - Paste the value into the Certificate field on the Platform’s SSO page. To add a second certificate, select + Add New.
- Select Save.
OneLogin
- Go to Single Sign-On → Enable SSO → select SAML and OneLogin.
- In the OneLogin Developer Portal, go to Applications → Add Apps, search for your Platform app, and save it.
- From SSO → Enable SAML 2.0, copy:
- OneLogin SAML 2.0 Endpoint (HTTP) → paste into SAML 2.0 Endpoint on the Platform
- OneLogin Issuer URL → paste into Issuer URL on the Platform
- Select View Details on the X.509 Certificate field → copy the certificate data (between
BEGIN CERTIFICATEandEND CERTIFICATE). - Paste into the X.509 Certificate field on the Platform’s SSO page. To add more, select + Add New.
- Copy ACS URL for SP-initiated SAML flow and ACS URL for IDP-initiated SAML flow from the Platform and paste them into the corresponding fields in OneLogin.
- Select Save in both the Platform and OneLogin.
Other SAML Providers
- Go to Single Sign-On → Enable SSO → select SAML and Other.
- Fetch the SSO configuration parameters from your IDP’s developer portal.
- Paste the values into the relevant fields on the Platform’s SSO page.
- Copy ACS URL for SP-initiated SAML flow and ACS URL for IDP-initiated SAML flow from the Platform and paste them into your IDP app settings.
- Select Save.
WS-Federation
WS-Federation enables SSO by sharing signed security tokens across different domains. After the IDP authenticates the user, it issues a token that the relying party validates before granting access.Windows Azure
- Go to Single Sign-On → Enable SSO → select WS-Federation and Windows Azure.
- On your AD FS server, open AD FS Management → go to ADFS → Service → Endpoints → Metadata to locate the Federation Metadata URL.
- Copy the IdP URL from the metadata and paste it into Azure AD Sign-On Endpoint URL on the Platform.
- Paste the Azure Federation Metadata URL into Azure AD Federation Metadata Document on the Platform.
- Select Save.
Other WS-Federation Providers
- Go to Single Sign-On → Enable SSO → select WS-Federation and Other.
- Copy the SSO endpoint URL from your IDP and paste it into AD Sign-On Endpoint URL.
- Copy the WS-Federation metadata document URL from your IDP and paste it into AD Federation Metadata Document URL.
- Select Save.
OpenID Connect
OpenID Connect (OIDC) is an authentication layer built on OAuth 2.0. The Platform supports Google as the OIDC provider.- Go to Single Sign-On → Enable SSO → select OpenID Connect and Sign in with Google.
- Select Save.
Authorization Profiles
Authorization (Auth) Profiles define how the Platform authenticates with external web services. Configure profiles once and reuse them across API nodes, AI nodes, and other integrations. Key capabilities:- Define auth methods such as OAuth tokens, passwords, and custom parameters
- Enforce consistent access control across multiple integrations
- Test connections before putting them into production
- Reuse profiles to reduce configuration effort
Access Authorization Profiles
- Go to Autonomous Agents → Settings.
- Select Security & Control → Authorization Profile.
Supported Auth Types
Add an Auth Profile
- On the Authorization Profile page, select Create Authorization Profile (for your first profile) or Add New Auth.
- In the New Authorization Mechanism dialog, select the Authorization Type.
- Enter the Identity Provider Name (required).
- Fill in the required fields (see Field Reference below).
- Optionally select + Add Additional Field or + Add Authorization Field.
- Configure Token Request Headers. For field descriptions, refer to the Token Request Headers.
- Configure Mutual TLS (mTLS). For field descriptions, refer to the Mutual TLS Configuration.
- Select Save New Auth.
Field Reference
If the Refresh Token URL or refresh token expires, the auth profile will fail wherever it is used. The admin receives an email notification to reconfigure.
Add Additional Fields
Use additional fields to collect supplemental authorization data from end users alongside standard credentials - for example, a PIN code or device ID.- Select + Add Additional Field in the New Authorization Mechanism window.
- Enter a Field Key (name, for example:
Pin code) and Field Value (for example:2344567). - Select Done.
Add Authorization Fields
Authorization fields define how token data passes in API requests.- Select + Add Authorization Field in the New Authorization Mechanism window.
- Fill in the fields and select Done.
Token Request Headers
Attach custom HTTP headers to every token endpoint request for this profile. Use this when your authorization server requires additional metadata - such as a tenant ID or correlation ID - alongside the standard OAuth parameters. Select + Add request header to add a row with a Field Name and Value. Up to 20 headers are defined per profile. Headers are sent in the order listed, after the platform’s standard headers (Content-Type, Authorization, etc.), which can’t be overridden. Values support{{context.*}} variable placeholders (for example, {{context.clientId}}) resolved at request time. Unresolved variables are replaced with an empty string and logged as a warning; the token request still proceeds.
Mutual TLS (mTLS)
mTLS allows the platform to present a client certificate during the TLS handshake when connecting to enterprise systems that require it. The certificate can be presented at the token endpoint, for downstream API requests, or both. When mTLS is enabled, configure the following fields. Apply mTLS To - Choose where the client certificate is presented:- Client Certificate (PEM) - Upload your client certificate file (.pem, .crt, .cer). If the file includes the full chain (leaf, intermediates, and root), no separate CA certificate is needed. After upload, the platform displays the Subject CN, Issuer CN, validity dates, and a status badge - OK, Expiring Soon (≤ 30 days), or Expired - for each certificate in the file.
- Client Private Key (PEM) - Upload the private key corresponding to the client certificate (.pem, .key). The platform validates that the key matches the leaf certificate’s public key.
- Private Key Passphrase - Required only if the private key is encrypted.
- CA Certificate / Chain (PEM) - Required only if your certificate chain is in a separate file from the client certificate (.pem, .crt, .cer).
- Certificate Alias - Enter the name (up to 100 characters) to identify this certificate. Doesn’t affect authentication behavior.
Test an Auth Profile
Select Test next to a configured profile to verify it establishes a connection with the external service. If the test fails, edit the profile with the correct values and retest.Manage Auth Profiles
Edit: Select the ellipsis (⋯) menu → Edit → update fields in the Update Authorization Mechanism window → select Update New Auth.Authorization Type and Name cannot be changed after the profile is created. All other fields are editable.
Encryption Key Management
The Platform encrypts all account data. You can use the Platform’s built-in key management or integrate with your organization’s external Key Management System (KMS) using Bring Your Own Key (BYOK).Encryption is configured at the account level. All apps within an account share the same encryption key.
Platform-Managed Encryption
The Platform automatically encrypts all data using built-in keys - no configuration required. Keys rotate every 90 days.Bring Your Own Key (BYOK)
Use keys stored in your own KMS to control encryption and decryption. The Platform communicates with your external KMS for all cryptographic operations. If your KMS is unavailable, the Platform falls back to default encryption. Supported providers: AWS KMS, Azure Key VaultConfigure BYOK
- Go to Settings → Key Management.
- Select Configure BYOK.
- Select your cloud provider and enter the required configuration details.
Azure Key Vault
Required service principal permissions:Key Vault Crypto Service Encryption UserMicrosoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/actionMicrosoft.KeyVault/vaults/keys/wrap/actionMicrosoft.KeyVault/vaults/keys/unwrap/actionMicrosoft.KeyVault/vaults/keys/read
AWS KMS
Required IAM permissions:API Scopes
API Scopes replace unrestricted management API keys with permission-limited, scoped keys. Create API apps with specific scopes so each integration only accesses the endpoints it needs. Key rules:- API keys are restricted to assigned scopes; requests to other scopes are automatically rejected.
- Multiple API keys can exist per app.
- An API key can’t be shared across multiple apps.
- API keys can’t be modified after creation - only deleted.
- Each key can only be copied once (copy-once policy).
Access API Scopes
- Go to Autonomous Agents → Settings.
- Select Security & Control → API Scopes.
Supported Scopes
Create an API App
- On the API Scopes page, select Create an API App.
- Select Untitled App and enter an app name.
- Select the required scopes from the list.
- Select Next.
Create an API Key
This step completes the app setup. At least one API key is required.- Select Create API Key.
- Enter a key name and select Generate Key.
- Select Copy and Close to copy the key.
The API key is shown only once. Save it in a secure location. If lost, you must revoke it and generate a new one - this may disrupt any services currently using the key.
- Select Done.
Manage Apps and Keys
Rename or update scopes: Hover over the app → select Edit → update the name or select/deselect scopes → select Save. Delete an API key: In the app’s API Keys tab, hover over the key → select Delete → confirm.Deleting a key that is actively in use will immediately break any services relying on it. Generate a replacement key before deleting if the key is in production use.
Custom Scripts
Admins can import, deploy, and manage custom scripts directly from Settings → Manage Custom Scripts. Scripts run in isolated containers and can be invoked via the API node endpoint or embedded in the Function node of a tool flow.Access Custom Scripts
- Go to Autonomous Agents → Settings.
- Select Manage Custom Scripts in the left menu.
Import and Deploy a Script
Select + Import or + Import New, then complete the four-step wizard.Step 1: General Details
Select Validate after uploading. Resolve any errors before proceeding.
Project structure requirements:
- Include
main.py(Python) ormain.js(JavaScript) at the archive root - only functions defined in this file are exposed via API. - Include
requirements.txt(Python) orpackage.json(JavaScript) at the root if your script has external dependencies. - Use relative imports when referencing files within the project.
- Access environment variables using
os.getenv('<key>')in Python orprocess.env.<key>in JavaScript.
Download the sample project from the wizard to verify your file matches the required structure. Structure differs by language, so use the correct sample for your chosen language.
Step 2: Runtime Settings
Built-in environment variables (always available):
UPLOADS_DIR- Read-only access to files uploaded via Public APIs.WORKSPACE_DIR- Read-write directory for the script’s file operations.
Step 3: Resource Allocation
Scaling parameters:
Average Compute Utilization is disabled when Min and Max replicas are equal.
Hardware profiles:
Step 4: Review and Deploy
- Review all sections - General Details, Runtime Settings, and Resource Allocation. Select any section to go back and edit.
- Accept the Terms and Conditions.
- Optionally select Save as Draft to deploy later.
- Select Deploy.
Script Statuses
Hover over a Deployment Failed status to see the error reason.
Actions
You cannot delete a deployed script. Undeploy it first, then delete.
Script Detail Pages
Each script entry has four tabs:API Keys for Scripts
- Go to the script’s API Keys tab.
- Select Create a New API Key.
- Enter a name and select Generate Key.
- Select Copy and Close.
Secret keys are shown only once. Store the key securely. If lost, delete the key and generate a new one.
Use a Script via the API Node
- In the API node configuration, select Define Request.
- On the script’s Endpoint tab, copy the cURL code.
- Paste it into the Edit Request dialog.
- Select an Auth Profile if the endpoint requires authentication (or select None).
- Add headers (for example:
Content-Type: application/json) and body parameters as needed. - Select Test to validate the request, then Save.