Weekly Nooks sequence health snapshot to Google Sheets

Every Monday morning, log each Nooks sequence's enrollments, weekly call volume, and meetings booked to a Google Sheet so RevOps can track performance over time.

Deterministic Code
NooksGoogle SheetsSalesOperationsAI ReportsData Sync

Build a code workflow that captures a weekly Nooks sequence health snapshot and appends it to a Google Sheet so RevOps can track performance over time.

Trigger: cron, every Monday at 9:00am America/New_York.

Inputs the user should configure: the target Google Sheets spreadsheet ID, the tab name (default: "Sequence Health"), and the rolling window in days (default: 7).

Step 1. Call Nooks List Sequences, paginating through every page by following links.next verbatim until it is null. Do not construct cursors yourself. Collect the full set of sequences with id, name, and ownerId.

Step 2. For each sequence, call Nooks List Sequence States filtered by that sequence id, paginating via links.next. Aggregate counts by status: active, paused, and finished. Also count how many enrollments moved to finished within the last 7 days (use the state's finishedAt or updatedAt timestamp compared to now minus the configured window).

Step 3. Call Nooks List Calls once with filter[time][gte] set to now minus the configured window (ISO 8601 with timezone). Page through links.next until null and collect every call in the window. Then, for each sequence, count the calls whose sequence reference matches that sequence id (call volume in the last 7 days) and count the calls whose disposition indicates a booked meeting (meetings booked in the last 7 days). If the catalog exposes a separate meetings/disposition filter, prefer that; otherwise filter in-memory off the call list.

Step 4. For each sequence, build one row with these columns in this exact order: ISO week (e.g. 2026-W23), sequence name, sequence ID, owner (resolve ownerId to a display name via the user reference if available, else fall back to the ownerId), active enrollments, finished this week, paused, calls last 7d, meetings booked last 7d. Use plain text and integers. No em dashes anywhere in headers or values.

Step 5. Call Google Sheets Append Values once per run with the configured spreadsheet ID and the configured tab as the range (e.g. 'Sequence Health'!A:I). Use valueInputOption USER_ENTERED so the ISO week renders cleanly. Send all sequence rows in a single Append Values call rather than one call per row.

Behavior notes: the pipeline is fully deterministic, no LLM judgment. Skip archived or disabled sequences if the List Sequences response exposes a status field marking them as such. If a sequence has zero enrollments and zero calls in the window, still write a row with zeros so the trend line stays complete. Honor Nooks rate limit headers (X-RateLimit-Remaining, Retry-After on 429) with backoff.

Output: one appended row per sequence to the configured Google Sheet tab on each Monday run.

Additional information

What does this prompt do?
  • Pulls every sales sequence in your Nooks workspace once a week
  • Counts how many prospects are active, paused, and finished in each one
  • Adds the calls placed and meetings booked over the last seven days
  • Appends one fresh row per sequence to your tracking sheet so you keep a full history week over week
What do I need to use this?
  • A Nooks workspace with API access
  • A Google account that can edit the destination spreadsheet
  • A Google Sheet with a tab where the rows should land (a tab called Sequence Health works well)
How can I customize it?
  • Pick the day and time the snapshot runs. Mondays at 9am Eastern is the default.
  • Point the workflow at any spreadsheet and tab you control.
  • Change the rolling window from seven days to whatever cadence your team reports on.

Frequently asked questions

Will this overwrite my existing rows?
No. It appends new rows each week, so you keep a full historical trend in the same tab.
Can I track only a subset of sequences?
Yes. You can filter by sequence owner, name, or status before the rows are written, so noisy or archived sequences stay out of the report.
What happens when a new sequence is launched mid-week?
It shows up automatically the next time the snapshot runs. No setup needed for each new sequence.
Do I need a paid Google Workspace plan?
No. Any Google account with edit access to the destination spreadsheet works.
How do I share the report with the rest of the team?
Share the Google Sheet itself. Since every week appends to the same tab, anyone with access can build pivot tables, charts, or dashboards on top of it.

Stop rebuilding your sequence performance report by hand.

Connect Nooks and Google Sheets once. Geni runs the snapshot every Monday at 9am ET so RevOps starts the week with fresh numbers.