Weekly Wrike timelog to Google Sheets billing tracker

By General Input

Every Monday at 7am ET, last week's tracked hours from Wrike land in your billing spreadsheet with a Slack heads-up to finance.

Integrations

  • Wrike
  • Google Sheets
  • Slack

Type

Deterministic Code

Categories

  • Finance
  • Operations

Build a deterministic weekly ETL workflow that copies last week's Wrike time entries into our billing tracker spreadsheet and posts a one-line confirmation in a finance Slack channel. No agent reasoning, no LLM in the loop, just a fixed pipeline.

Trigger: cron, every Monday at 7:00am US Eastern. On each run, compute the previous Monday through Sunday tracking window (the seven days ending the day before the run) and use that as the date filter for everything downstream.

Step 1: call Wrike List Timelogs filtered to that previous Monday-through-Sunday window. This is the source of truth for the rows we'll append.

Step 2: call Wrike List Contacts once to build an in-memory map from user ID to user name. We'll use this to turn each timelog's user ID into a human-readable name on the row.

Step 3: call Wrike List Folders once to build an in-memory map from folder/project ID to project name. We'll use this to turn each timelog's project reference into a readable project name. If a timelog references a project ID that isn't in the map (e.g. the project was deleted), fall back to writing the raw ID so no row is dropped.

Step 4: transform the timelogs into rows. Each row should contain, in this order: date, user name (from the contacts map), project name (from the folders map), task ID, hours logged, billable category, and the timelog comment.

Step 5: call Google Sheets Append Values once with the full batch of rows, targeting a designated billing-tracker spreadsheet and tab that the user configures at setup. Use a single append call, not one per row. Append after the last row of the existing table so prior weeks are never overwritten.

Step 6: after the append succeeds, call Slack Send a Message to post a one-line confirmation in a designated finance channel. The message should state how many rows were appended and the total hours logged for the week (e.g. "Weekly billing sync: appended 84 rows, 312.5 hours total for May 19 to May 25"). Include the date range in the message so finance can confirm coverage at a glance.

Configuration the workflow should expose at setup: the Google Sheets spreadsheet ID and tab name to append to, the Slack channel ID for the confirmation message, and the time zone for both the schedule and the tracking window (default America/New_York).

This is strictly deterministic. Do not use any agent or LLM reasoning steps. The whole flow is: list timelogs, build two ID-to-name lookup maps, assemble rows, append in one batch, send one Slack confirmation.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentLocal listing health board for every location you manageWin back LiveChat visitors whose chats went unansweredLet support send one-off Loops emails without an engineerStop cold emails to anyone with a live deal in PipedriveiMessage campaign console with pre-flight checks and delivery boardChat quality review board for LiveChat support leadsLinkedIn Ads budget pacing dashboard for every client accountFront desk appointment confirmation board for the next 3 daysGive your team Looker numbers without buying more seats