Skip to main content
Connect your Snowflake data warehouse to Roe AI to query transaction data, customer information, and other structured data during agent investigations.

Use Cases

  • AML/Fraud Investigation: Query transaction history and customer data during investigations
  • Data Analysis: Enable agents to explore and analyze data using natural language queries
  • Context Enrichment: Provide agents with access to your data warehouse for comprehensive analysis

Prerequisites

Before connecting Snowflake to Roe AI, ensure you have:
  1. A Snowflake account with appropriate permissions
  2. A Programmatic Access Token (PAT) for authentication
  3. Access to a warehouse, database, and schema

Generate a Programmatic Access Token

Roe AI uses Programmatic Access Tokens (PAT) for secure authentication. PATs bypass MFA and are the recommended way to authenticate programmatically.
1

Open Snowsight

Log in to your Snowflake account using Snowsight
2

Navigate to Profile

Click on your user menu (top-right) → My Profile
3

Go to Authentication

Select the Authentication tab
4

Generate Token

Under Programmatic access tokens, click Generate new token
5

Save Token

Copy the token immediately—it’s only shown once!
Store your PAT securely. Roe AI encrypts and stores credentials in AWS Secrets Manager.

Configure the Connection

Provide the following information to connect Snowflake:

Authentication (Sensitive)

FieldRequiredDescription
AccountYesSnowflake account identifier (e.g., xy12345.us-east-1)
UsernameYesYour Snowflake username
TokenYesProgrammatic Access Token (PAT)

Configuration

FieldRequiredDescription
WarehouseYesSnowflake warehouse (compute resource) to use for queries
DatabaseYesDefault database to use for queries
SchemaYesSchema (namespace) within the database. PUBLIC is a common default
RoleNoSnowflake role for access control
The schema hierarchy in Snowflake is: Account → Database → Schema → TableFor example, PROD_DB.PUBLIC.CUSTOMERS means:
  • Database: PROD_DB
  • Schema: PUBLIC
  • Table: CUSTOMERS

Test the Connection

Click Test Connection to verify that Roe AI can successfully connect to your Snowflake instance. The test will:
  1. Authenticate using your PAT
  2. Verify access to the specified warehouse, database, and schema
  3. Run a simple query to confirm connectivity

Using Snowflake as a Context Source

Once connected, you can use your Snowflake connection as a context source in agentic workflows like AML Investigation or Fraud Investigation.

Context Source Configuration

When configuring an agent to use Snowflake:
{
  "connection_type": "snowflake",
  "name": "Transaction History",
  "connection_id": "your-connection-uuid",
  "table": "TRANSACTIONS",
  "description": "Customer transaction data for the last 12 months"
}
FieldDescription
nameFriendly name for this data source
connection_idUUID of your Snowflake connection
tableTable to query (agent generates SELECT queries with filters)
descriptionHelps the agent understand what data is available

Agent Capabilities

When Snowflake is configured as a context source, agents can:
  • Discover schema: Automatically understand table structure
  • Generate SQL: Create appropriate queries based on natural language
  • Filter data: Apply relevant filters (e.g., customer ID, date ranges)
  • Handle errors: Recover from query issues gracefully

Security Best Practices

Use PATs

Programmatic Access Tokens are more secure than passwords and can be revoked independently

Limit Permissions

Create a dedicated role with read-only access to only the required tables

Use Separate Warehouse

Use a dedicated warehouse for Roe AI to manage resource usage

Monitor Usage

Review Snowflake query history to audit agent data access

Troubleshooting

Verify your account identifier, username, and PAT are correct. PATs expire and may need to be regenerated.
Ensure the warehouse name is correct and your user has USAGE permission on the warehouse.
Verify the database and schema exist and your user has appropriate permissions to access them.
Queries have a 30-second timeout. If your queries are timing out, consider optimizing table indexes or filtering to smaller datasets.