Chase stalled Ironclad contract signatures every morning

By General Input

Every weekday morning, find contracts stuck waiting on signatures, nudge only the people still holding things up, and post one clear summary to Slack.

Integrations

  • Ironclad
  • Slack

Type

Agentic Task

Categories

  • Operations

Every weekday at 9am, chase the contracts that are stuck waiting on signatures in Ironclad.

Start by calling List Workflows in Ironclad to find every workflow currently sitting in the signature step. Page through the full list rather than reading only the first page. Ironclad list endpoints use a zero-indexed page parameter and a pageSize that defaults to 20 and maxes out at 100, so request pageSize 100 and keep incrementing page until a page comes back shorter than the page size.

For each workflow in the signature step, call Get Sign Status to read the sign step state and call List Signers to get the individual signers. Use the two together to sort every signer into one of three buckets: already signed, viewed the packet but has not signed, and never opened it at all. That distinction matters, because someone who has opened the document and gone quiet usually needs a different nudge from someone whose email may never have arrived.

Work out how long each packet has been outstanding in business days, skipping weekends. For any packet outstanding more than three business days, send a reminder with Remind Signer, but only to the signers who are still outstanding. Never remind anyone who has already signed.

Before sending, enforce the reminder cap: no signer gets reminded more than twice in any one week. Call List Workflow Comments on the workflow and read back the nudge records this workflow has previously written there. If a signer already has two recorded nudges in the last seven days, skip them, and note in the summary that they have hit the cap rather than silently dropping them.

After each round of reminders on a contract, record what you did with Create Workflow Comment on that workflow, naming each signer who was chased along with the date and time. This is the audit trail, so it should be specific enough that a reviewer can later see exactly who was contacted and when, and it is also what the reminder cap reads back on future runs.

Finally, post a single message to Slack with Send a Message summarizing every stalled packet. Sort by days outstanding, longest first. For each contract show the counterparty, how many business days it has been outstanding, exactly who is blocking it, and whether each blocker has viewed the document or never opened it. Call out anything outstanding more than fourteen days as an escalation for the legal lead. Send one consolidated message rather than one message per contract, and if nothing is stalled, say so briefly instead of sending an empty report.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentWin back LiveChat visitors whose chats went unansweredChat quality review board for LiveChat support leadsWin back no-show and cancelled appointments every morningLive Loop returns analytics with product-level drill-downNewsletter pre-flight and approval board for Mailjet sendsTurn a prospect spreadsheet into personalized sequence enrollmentsMailjet email delivery lookup console for support teamsCatch feature flags that never got switched on in productionKajabi customer support console for member access fixes