DATA OPS
BigQuery export with size-based routing and dual approval for large pulls
Runs a BigQuery export and routes it by row count: small masked pulls auto-deliver to Dropbox, large pulls require a second data-owner approval in Slack first.
How it runs
The automated pipeline, trigger to output.
- TriggerExport request received via webhookHTTP webhook
- ActionRun query in BigQueryBigQuery
- LogicMask PII columns
- LogicRoute by row count vs threshold; large pulls need approvalSlack
- ActionWrite masked file to DropboxDropbox
- OutputConfirm delivery or log rejection in SlackSlack
What it does
Applies risk-based controls to exports. After masking PII, it checks the result size: small extracts under a threshold are delivered to Dropbox automatically, while large extracts that could constitute a bulk data movement are held for an additional data-owner approval in Slack before release.
When to use it
Use it when your policy treats bulk exports as higher risk than small lookups. It lets routine small pulls flow without friction while ensuring large data movements always get a human gate.
How it works
- 1A form webhook receives the export request.
- 2BigQuery runs the query and returns the result set.
- 3A masking step redacts PII columns.
- 4A logic branch compares the row count to the configured threshold.
- 5Below threshold: the masked file is written straight to Dropbox.
- 6At or above threshold: Slack requests a data-owner approval and only delivers to Dropbox on approval.
- 7A final Slack message confirms delivery or records the rejection.
Set it up
What you configure once, before turning it on.
- 1Connect BigQueryDatasets, queries, schemas.
- 2Connect DropboxFiles and folders.
- 3Connect SlackChannels, DMs, threads, mentions.
- 4Connect HTTP webhookTrigger any URL on agent actions.
- 5Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 6Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 7Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More Data Ops workflows
Snowflake column type-drift sentinel with Linear fix ticket
Snapshots the data types of every column in your tracked Snowflake schemas on a schedule, diffs against the last snapshot.
Daily BigQuery Scheduled-Query Cost Attribution to Owners
Each morning, totals the prior day's on-demand bytes-billed per scheduled query, maps each query to its owner from a label, and posts a per-owner cost leaderboard to Slack.
BigQuery dropped/renamed column sentinel with PagerDuty incident
Detects when a column is dropped or renamed in your governed BigQuery datasets and, because that breaks downstream queries hard, pages the on-call via PagerDuty and posts…
PR-time Snowflake schema contract check on dbt model changes
When a pull request changes a dbt model, it compares the model's declared output columns against the live Snowflake table it will replace and blocks the merge with a GitHub check…
Agent-triaged warehouse drift with impact analysis and runbook update
On a webhook from your warehouse audit log, an agent investigates the changed column, traces which downstream models and dashboards depend on it.
Cross-warehouse replication schema mismatch reconciler
Compares the column shape of mirrored tables between BigQuery and Snowflake and, when a replicated table has drifted out of sync between the two, opens an Asana task for the data…
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.
