DATA OPS
Auto-detect PII columns from a Postgres data catalog before BigQuery export
Looks up which BigQuery columns are classified as PII in a Postgres governance catalog, masks exactly those columns, and delivers the result to Dropbox.
How it runs
The automated pipeline, trigger to output.
- TriggerExport request received via webhookHTTP webhook
- ActionRun export query in BigQueryBigQuery
- ActionLook up column PII classifications in PostgresPostgres
- LogicMask columns flagged sensitive by catalog
- ActionUpload masked file to DropboxDropbox
- OutputWrite audit record to PostgresPostgres
What it does
Instead of hardcoding which fields are sensitive, this workflow reads your column-level classification from a Postgres governance catalog. It pulls the export from BigQuery, cross-references every returned column against the catalog, and masks only the columns marked sensitive. The cleaned file is delivered to Dropbox with an audit log row written back to Postgres.
When to use it
Use it when your organization maintains a central data catalog of PII classifications and you want exports to enforce that catalog automatically, so masking stays correct even when table schemas change.
How it works
- 1A form webhook receives the export request with target table and filters.
- 2BigQuery runs the query and returns rows plus the column list.
- 3Postgres is queried for the PII classification of each returned column.
- 4A masking step redacts the columns the catalog flags as sensitive.
- 5The masked file is uploaded to Dropbox.
- 6An audit record (requester, columns masked, row count, timestamp) is inserted into Postgres for compliance.
Set it up
What you configure once, before turning it on.
- 1Connect BigQueryDatasets, queries, schemas.
- 2Connect PostgresAny Postgres URL — query, write, migrate.
- 3Connect DropboxFiles and folders.
- 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
BigQuery Per-Team Budget Breach Alert to PagerDuty
Tracks month-to-date BigQuery scheduled-query spend per team and, when a team crosses its monthly budget, pages the team's on-call in PagerDuty and snapshots the spend breakdown…
dbt orphan model detector with Linear cleanup tickets
Scans your dbt manifest for models that no other model, exposure, or BI tool consumes.
Weekly BigQuery Cost Trend Sheet and Exec Digest
Compiles week-over-week BigQuery scheduled-query cost by owner and dataset into a Google Sheet with trend columns.
Backfill Missing Owner Labels on BigQuery Scheduled Queries
Finds scheduled queries with no owner label, infers the likely owner from creator metadata and target-table lineage, proposes a label.
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.
dbt source freshness watcher with severity-routed alerts
Checks Snowflake loaded-at timestamps against each dbt source's freshness SLA, then routes warnings to Slack and hard breaches to a PagerDuty incident so stale data never…
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.
