CHATBOTS
Self-Serve Snowflake Access Bot with Approver Routing
A Slack bot that lets employees request scoped Snowflake grants in chat, routes each request to the right data owner for approval, applies the grant on approval.
How it runs
The automated pipeline, trigger to output.
- TriggerEmployee runs /data-access slash command in SlackSlack
- ActionLook up data owner for requested objectPostgres
- ActionPost approve/deny request to owner in SlackSlack
- LogicBranch on owner decision (approve vs deny)
- ActionExecute scoped GRANT with expiry tag in SnowflakeSnowflake
- ActionAppend grant to Postgres audit ledgerPostgres
- OutputDM requester with confirmation and expiry dateSlack
What it does
Turns ad-hoc "can I get read access to the revenue schema?" Slack pings into a governed, self-serve flow. An employee runs a slash command, picks a database/schema/role and a duration, and the bot routes the request to that object's data owner. On approval it executes the exact `GRANT` in Snowflake and writes an immutable record to a Postgres audit ledger.
When to use it
Use it when data access is requested constantly over DM and granted by hand, with no record of who has what or why. It gives least-privilege, time-boxed grants without a ticketing system, and keeps a defensible audit trail for SOC 2 / access reviews.
How it works
- 1An employee invokes the `/data-access` slash command in Slack and fills the modal (object, role, reason, duration).
- 2The bot looks up the data owner for the requested object from a Postgres ownership map.
- 3It posts an approve/deny message to the owner with the full request context.
- 4On approval, it runs the scoped `GRANT ... TO ROLE` against Snowflake with an expiry tag.
- 5It appends the granted request to a Postgres audit ledger.
- 6It DMs the requester confirming access and the auto-expiry date.
Set it up
What you configure once, before turning it on.
- 1Connect SlackChannels, DMs, threads, mentions.
- 2Connect SnowflakeWarehouses, queries, shares.
- 3Connect PostgresAny Postgres URL — query, write, migrate.
- 4Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 5Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 6Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More Chatbots workflows
Discord Onboarding Completion to CRM Sync
The moment a member finishes Discord onboarding, captures their submitted profile answers, creates or updates a contact in HubSpot.
Discord FAQ-Gated Role Concierge
Greets each new Discord member in a private onboarding thread, walks them through required FAQ steps one at a time.
Discord FAQ Free-Text Answer Grader
When a member submits a free-text answer in their onboarding thread, an agent grades it against the canonical FAQ knowledge base, replies with targeted feedback.
Discord verify-button onboarding via web form webhook
Receives a completed external verification form by webhook, matches it to the Discord account, grants the verified role, and confirms back to the member in Discord.
Discord intro-gated role granting concierge
Watches your #introductions channel, uses AI to confirm a new member's intro is genuine and complete, then auto-assigns the verified Member role and welcomes them.
Daily Discord Digest of Repeated WAF False-Positive Reports
Each morning, scans logged Discord WAF reports in Postgres, groups them by the Cloudflare rule that keeps firing.
Run it inside a business
This workflow drops into a full company template. Import the org, and this is one of the playbooks its agents run.

Run this workflow in your colony.
14-day trial. No DevOps. No Sales call. Provisioned in under a minute.
