Weekday Census sync health digest for your data ops channel

By General Input

Every weekday morning, we walk your Census syncs, spot the ones failing or degrading, and post a triaged digest into Slack.

Integrations

  • Census
  • Slack Bot

Type

Agentic Task

Categories

  • Operations

Every weekday at 8:30am, post a Census reverse-ETL health digest into our #data-ops Slack channel so the team spots broken syncs before they cause problems downstream.

Trigger: cron, weekdays (Monday through Friday) at 8:30am local time.

Use Census List Syncs to pull every sync in the workspace, paginating until you have collected all of them. Skip any sync that is currently paused so the digest only covers work that should be running. For every active sync, call Census List Sync Runs to fetch the most recent runs (the last three to five is enough to see the trend).

Inspect the run bodies directly. Census does not surface run-level failures as HTTP errors: a failed run comes back with status "failed" plus error_code, error_message, and error_detail inside the run object. Read those fields, along with the run's record counts (records_processed, records_updated, rejected/failed records) and the elapsed runtime.

Group syncs into three buckets: (1) failed since the last digest, meaning the most recent run has status "failed"; (2) degraded, meaning rejected-record counts are climbing run over run or the latest run's runtime is a large jump over the previous average; (3) healthy, meaning recent runs succeeded cleanly. Order the digest with failed first, degraded second, healthy last, because failed syncs are the biggest concerns.

Write a short narrative that leads with the biggest concerns. For each failed sync, include the sync name, a link back to its Census UI URL (https://app.getcensus.com/syncs/<sync_id>, or https://app-eu.getcensus.com/syncs/<sync_id> for EU-hosted workspaces), and quote the top error_message verbatim inside a code block so on-call engineers can search for it. For each degraded sync, name the specific signal in numbers ("rejected records climbed from 12 to 240" or "last run took 47 minutes vs a 12-minute average"). Collapse the healthy bucket to a one-line count so the digest stays scannable.

Send the digest to the #data-ops channel using Slack Bot Send a Message. If nothing has failed and nothing is degraded, still post a one-line "all clear" so the team knows the check ran and the workflow is alive.

Related prompts

Explore more prompts
A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasonLiveChat coverage board for planning next week's shiftsPhone routing control panel for LiveKit voice agentsLinkedIn Ads budget pacing dashboard for every client accountGive your team Looker numbers without buying more seatsPause marketing emails to escalated customers, then restore them