Overview
nOps reads Snowflake usage and billing data — warehouse credit consumption, query history, and organization-level spend — from Snowflake’sACCOUNT_USAGE and ORGANIZATION_USAGE system views to show cost and performance in Inform. Snowflake uses RSA key-pair authentication: you provide only your account identifier, and nOps generates a key pair and gives you the exact SQL commands to run.
You can connect multiple Snowflake accounts, each with its own generated key pair.
Prerequisites
ACCOUNTADMINprivileges in Snowflake- Access to your Snowflake organization admin account (required for
ORGANIZATION_USAGEviews) - Ability to create databases, roles, warehouses, and service users
- nOps organization administrator access
Only admins and owners can connect, view instructions, or disconnect. Members see Admin Only on connectable cards.
Connect in nOps
Where to open Snowflake
- To connect for the first time — go to Settings → Integrations and click the Snowflake card.
- To manage existing connections — open the same card or use Settings → Account Status → Connected apps and click the Snowflake chip.
Connect steps
- Click the Snowflake card.
- Enter your account identifier — just the identifier, not the full URL (for example
ngb14322.us-east-1fromngb14322.us-east-1.snowflakecomputing.com). - Click Generate key pair. nOps creates a 2048-bit RSA key pair for this connection and shows setup instructions.
- Copy the generated SQL and run it in a Snowflake worksheet using
ACCOUNTADMIN.
Default configuration
nOps uses the following defaults for every new Snowflake integration — you only provide the account identifier:Run the setup SQL in Snowflake
After you generate the key pair, nOps shows SQL split into four steps. Run them in order asACCOUNTADMIN (steps 1–2) and then as the nops role (steps 3–4):
- Initial setup — creates the
nopsrole, thenopswarehouse, thenopsdatabase, and grantsIMPORTED PRIVILEGESon theSNOWFLAKEdatabase so the role can read usage views. - Create the service user — creates a
SERVICE-type user, attaches the nOps-generated RSA public key withALTER USER ... SET RSA_PUBLIC_KEY=..., and grants thenopsrole to both the service user and your current user. - Create views — creates
query_history,warehouse_metering_history, andusage_in_currency_dailyviews in thenopsdatabase that wrap the underlyingSNOWFLAKE.ACCOUNT_USAGEandSNOWFLAKE.ORGANIZATION_USAGEtables, then grantsSELECTto thenopsrole. - Verify — runs a test query as the
nopsrole to confirm the setup works.
Network configuration (optional)
If your Snowflake account restricts access with a network policy, add the nOps IP to your allowlist.SET ALLOWED_IP_LIST replaces the entire list, so include your existing IPs alongside the nOps address:
Manage your connections
Administrators can view instructions or remove individual Snowflake integrations from the Snowflake modal. Removing an integration deletes the stored RSA private key from AWS Secrets Manager and stops nOps from connecting to that account. nOps does not perform a live connectivity check when you connect — verify the SQL ran successfully in Snowflake to confirm access.Troubleshooting
- Invalid account identifier — enter only the identifier (for example
ngb14322.us-east-1), not the fullhttps://...snowflakecomputing.comURL. RSA_PUBLIC_KEYerrors — make sure you copied the full SQL block from step 2 without truncation; the key is a single long base64 string.- Permission errors while running the SQL — confirm you’re using
ACCOUNTADMINfor steps 1–2, and that you’re logged into the organization admin account. - No data after setup — confirm the views in step 3 were created successfully and that the
nopsrole hasSELECTon them. - Duplicate or inconsistent data across accounts — you likely connected more than one account in the same organization; keep only the integration created from the org admin account.