Integrations
Snowflake freshness
Set SNOWFLAKE_ACCOUNT, SNOWFLAKE_TOKEN (programmatic access token), and SNOWFLAKE_MONITORED_TABLES. The daily freshness cron and GET /api/freshness check LAST_ALTERED via the SQL API.
Steps
1. Create a PAT
In Snowflake, create a programmatic access token for a least-privilege role that can read INFORMATION_SCHEMA.
2. Env vars
SNOWFLAKE_ACCOUNT, SNOWFLAKE_TOKEN (or SNOWFLAKE_PAT), optional SNOWFLAKE_WAREHOUSE / SNOWFLAKE_ROLE.
3. Tables
SNOWFLAKE_MONITORED_TABLES=DATABASE.SCHEMA.TABLE:hours (comma-separated). Same calm alert grouping as BigQuery.
4. Run with BigQuery
Configure both warehouses — one sweep merges results into Watchdog.
Verify
- GET /api/freshness returns Snowflake tables when env is set
- Stale LAST_ALTERED opens a calm alert
- No Snowflake table rows are queried