Weekday morning chase-up for stalled signature campaigns

Every weekday morning, find the signature campaigns that have stalled, nudge the people holding them up, and post a clear status digest to Slack.

Agentic Task
SignWellGoogle SheetsSlack BotOperationsSalesDaily DigestsNotifications & Alerts
PromptCreate

Every weekday at 9am, chase up the bulk signature campaigns that have stalled in SignWell and report where each one stands. Scope this to bulk send campaigns: that is the only way to enumerate documents on a schedule, since there is no operation that lists all documents on the account.

Start by reading the existing chase log from Google Sheets with Get Values, so you know who has already been nudged and when. This log is the memory for the do-not-repeat rule, so always read it before sending any reminders.

Call SignWell List Bulk Sendings to get the campaigns on the account with their completion counts. This operation paginates using limit (default 10, max 50) and page (1-indexed), and returns no total count, so advance page until a response holds fewer than limit records. Set limit to 50 to keep the number of requests down.

For any campaign that is not fully complete, call Get Bulk Send Documents to enumerate the individual documents in that campaign. It paginates the same way, so page through it with the same rule.

For each document that is not complete, call Get Document to get recipient level detail: which recipients have signed, which have only viewed the document without signing, which have not opened it at all, and how long the document has been sitting since it was sent or since the last activity.

SignWell allows 100 requests per 60 seconds across the whole account, so pace the per-document calls and cap the work in a single run. Prioritize the campaigns with the lowest completion rates and the oldest documents, stop inspecting at roughly 60 Get Document calls, and note in the digest if any campaigns were left uninspected so the next run can pick them up.

Skip any document whose status is declined, expired, or canceled. Those need a human decision rather than a reminder, so never call Send Reminder on them. Collect them for the exceptions section of the digest instead.

For the remaining incomplete documents, use Send Reminder when the document has been idle longer than the idle threshold, which defaults to three days. Do not remind anyone who was already reminded within the last 48 hours, based on the chase log you read at the start. Only when both rules pass should you call Send Reminder for that document.

For every document you nudged, append a row to the Google Sheets tracking log with Append Values so the chase history builds up over time. Include the run date and time, the campaign name, the document name and id, the recipients who were reminded, how long the document had been idle, how many times this document has been reminded before, and the document status at the time of the nudge.

Finish with a digest posted to Slack using the Slack Bot Send a Message operation. Show each campaign as a completion rate, for example 18 of 24 complete at 75 percent, sorted worst first. Name who was reminded on this run and which campaign each person belongs to, and say how many documents were skipped because of the 48 hour quiet period. Then call out separately the recipients who need a phone call rather than another email, using your judgement: people who have had several reminders with no opens, people who keep viewing without signing, and documents idle far beyond the threshold. Finally, list the declined, expired, and canceled documents as exceptions in their own section, since those need someone to make a decision.

If every campaign is fully complete and there is nothing to chase, still post a short digest saying so, so the team knows the check ran.

Example output

Signature chase-up, Friday 9:00am Campaign completion - Contractor NDA Wave 2: 9 of 15 complete (60%) - Q3 Reseller Agreement: 18 of 24 complete (75%) - Vendor Onboarding Pack: 12 of 12 complete (100%) Reminded today (5) - Marcus Lee, Q3 Reseller Agreement, idle 6 days, never opened - Tom Alvarez, Contractor NDA Wave 2, idle 5 days, never opened - Dana Whitfield, Q3 Reseller Agreement, idle 4 days, viewed twice, not signed - Priya Raman, Contractor NDA Wave 2, idle 3 days, viewed once - Sofia Nunes, Contractor NDA Wave 2, idle 3 days, viewed once Worth a phone call (2) - Marcus Lee has had 3 reminders across 11 days and has never opened the document. Email is not landing. - Dana Whitfield has viewed the agreement twice but never signed. Something is blocking her. Exceptions, no reminder sent (2) - Helena Brandt, Q3 Reseller Agreement, declined on 12 Aug. Needs a decision. - Ray Okafor, Contractor NDA Wave 2, expired after 14 days. Needs re-sending. Skipped 3 documents reminded within the last 48 hours.

What does this prompt do?

  • Checks every bulk signature campaign each weekday morning and works out how far along each one is.
  • Finds documents that have been sitting unsigned past your idle limit and sends those signers a polite reminder.
  • Keeps a running chase history in a Google Sheet so you can see who has been nudged, when, and how often.
  • Posts a Slack digest showing each campaign as a completion rate, who got reminded, and who needs a phone call instead of another email.

What do I need to use this?

  • A SignWell login with permission to view bulk send campaigns and send reminders.
  • At least one bulk send campaign in SignWell, since this workflow tracks campaigns rather than one-off documents.
  • A Google Sheet to act as your chase log, with a tab the workflow can add rows to.
  • A Slack workspace and the channel where you want the morning digest to land.

How can I customize it?

  • Change the idle limit, three days by default, or the quiet period that stops the same person being nudged twice, 48 hours by default.
  • Move the run time or the days it runs, for example every morning including weekends, or twice a day during a big signing push.
  • Point the digest at a different Slack channel, or send it as a direct message to whoever owns the campaigns.

FAQs

Will it pester the same person every single day?
No. A reminder only goes out once a document has been idle past your limit, three days by default, and anyone already reminded in the last 48 hours is skipped. The digest tells you how many people were skipped for that reason, so you can see the quiet period working.
What happens to documents someone has declined or that have expired?
They are never reminded. Declined, expired, and canceled documents need a person to make a decision, so the workflow lists them in a separate exceptions section of the digest and leaves them alone.
Does this cover documents sent outside a bulk campaign?
No, it tracks bulk send campaigns. That is how the workflow is able to find your documents on a schedule and group them into a completion rate per campaign. One-off documents sent individually are not picked up.
How does it decide who needs a phone call?
It looks at the pattern rather than a single number. Someone who has had several reminders without ever opening the document, or who keeps viewing it without signing, gets flagged for a call, because another email is unlikely to change anything.
What if a campaign has hundreds of documents?
The workflow paces itself to stay inside SignWell's limits and works through the most stalled campaigns first. If it runs out of room in one morning it says so in the digest, and the next run picks up where it left off.

Related templates

Build a credential rotation checklist when someone leaves

When someone leaves, we check which shared passwords they used in their final months and post a ranked rotation list to your security channel.

1Password
Rippling
Slack Bot
+1
Agentic Task
Weekly Amazon S3 bucket security audit posted to Slack

Every Monday, check every S3 bucket for public exposure, missing encryption and weak backup settings, then get the risks ranked in Slack.

Amazon S3
Slack Bot
Google Sheets
Agentic Task
Log Agorapulse social conversations to HubSpot contacts

Twice every weekday, the conversations from your social inbox land on the right HubSpot contact timelines, with a Slack recap for sales.

Agorapulse
HubSpot
Slack Bot
Agentic Task
Turn procurement portal tenders into CRM deals each morning

Every weekday at 7am, sign in to the tender portals you track, filter new notices against your bid criteria, and open a deal for the ones worth chasing.

Anchor Browser
Google Sheets
HubSpot
+1
Agentic Task
Clean up HubSpot contacts from your Amazon SES suppression list

Every morning, find the addresses that hard bounced or filed a spam complaint, update the matching HubSpot contacts, and post a short Slack recap.

Amazon SES
HubSpot
Slack Bot
Agentic Task
Draft polite follow-ups for emails that never got a reply

Every weekday at 4pm, spot the threads that went quiet, stage a ready-to-send nudge in your mailbox, and get a ranked Slack recap.

Aurinko
Google Sheets
Slack Bot
Agentic Task

Stop letting signature campaigns stall in silence.

Set up the morning chase-up once and let it nudge the stragglers, log every reminder, and tell you exactly where each campaign stands.