Skip to main content

Advanced Integration: Build a Custom Outreach Monitoring Dashboard with Google Sheets

For advanced users and agencies who want to build a custom external dashboard using the GetSales API, Make/Zapier/n8n, and Google Sheets. This is NOT about the built-in Account Health or Smart Limits features — for those, see the Account Health article.

Written by Nadia Martynova
Updated over a week ago

Looking for built-in monitoring? GetSales already tracks your outreach health inside the app. You can view sender limits, connection rates, and withdrawal queue status directly on each sender's LinkedIn tab. See Account Health & Smart Limits and Sender Profiles for details.

This article is for advanced users, agencies, or teams managing multiple senders who want to build a custom external dashboard that consolidates all sender data in one place using the GetSales API and third-party automation tools.

What this guide covers

This guide walks you through building a self-updating Google Sheets dashboard that pulls "Send Connection Request" task counts from the GetSales API. By connecting the API to Google Sheets via an automation platform (Make, Zapier, or n8n), you can visualize all your senders' outreach status in one place and spot when campaigns are running low on leads before they stop.

This integration is useful when you:

  • Manage a large number of sender profiles and want a single overview

  • Need to share outreach health data with a team or client without giving them GetSales access

  • Want automated alerts or conditional formatting that go beyond the built-in UI

Watch the video tutorial:

Prerequisites

  • A connector account on Make, Zapier, or n8n

  • Google Sheets with two tabs: Dashboard (UUID, Name, Tasks, Last Update) and Senders (UUID, Name)

  • GetSales API key — generate one in your GetSales account via Settings → API keys. See the API Quick Start Guide if you haven't set this up before.

💡 You can import this pre-built scenario directly into your Make account using the following link: https://eu1.make.com/public/shared-scenario/Cv0CLnatI9M/integration-http

Step 1: Fetching the Data

  1. HTTP Module (Make a request):

    To get the real-time task counts, we need to send a specific request to the GetSales API.

  • Method: POST

  • Headers:

    • Content-Type: application/json

    • Authorization: Bearer [YOUR_API_TOKEN]

  • Body type: Raw

  • Content type: JSON (application/json)

  • Request content: Paste the following filter configuration

    { "filter": { "type": "linkedin_send_connection_request", "automation": "auto", "status": "in_progress" }, "group_field": "sender_profile_uuid" }

  • Parse Response: Set to Yes.

2. Tools Module (Set Variable):

  • Create a variable named toArray.

  • Value: ##{{toArray(1.Data)}} (This converts the API object into a list).

Step 2: Processing Each Record

Iterator Module: - Map the toArray variable here. This allows the flow to process each UUID one by one.

Step 3: Searching & Updating Google Sheets

  1. Google Sheets (Search Rows):

  • Filter: Column A (UUID) = ##{{trim(key)}}.

  • Note: Always use the trim() function to avoid errors with hidden spaces.

2. Router. Add a Router after Search to handle two scenarios:

Scenario A: Update Existing Row

  • Filter: Row number Exists.

  • Module: Update a Row.

  • Row number: Map from Search Rows.

  • Tasks: Map Value from the Iterator.

  • Last Update: Use ##{{formatDate(now; "DD.MM.YYYY HH:mm")}}.

Scenario B: Add New Row

  • Filter: Row number Does not exist.

  • Module: Add a Row.

  • UUID: Map Key from the Iterator.

  • Tasks: Map Value from the Iterator.

Step 4: Dashboard Aesthetics (Google Sheets)

  1. Set up your reference data: List your Sender UUIDs and names in the 'Senders' sheet. To quickly gather all profile IDs for your team, use the following API request - List Sender Profiles

  2. Auto-Fill Names: Use XLOOKUP or ARRAYFORMULA in the Dashboard tab to pull the sender profile names from the Senders tab

  3. Conditional Formatting:

  • Red: Less than 20 (Critical).

  • Yellow: Less than 50 (Warning).

4. Sorting:

The dashboard updates automatically every time the Make scenario runs (for example every 59 minutes)

Well done, you're all set!

Did this answer your question?