A complete add · load · remove lifecycle for Key Date reminders — with the metadata, output variables, and unit codes the out-of-the-box Create Reminder action is missing.
3 Visual Workflow actions12 offset codes (incl. Months)Built on Alterspective FoundryBranded designer + info popover
3
Workflow actions
Add, Load, Remove — one complete lifecycle
12
Offset codes
10 platform-native + 2 Months convenience
7
Output fields
Every reminder field bindable to a workflow variable
8
Outlets
Across the 3 actions — clean routing on every path
v7.10.0
Verified on
Sharedo Visual Workflow + Modeller
What are Sharedo reminders?
Notifications that fire relative to a Key Date
A Sharedo reminder is a scheduled notification attached to a task — most commonly a Key Date on a matter (limitation date, completion date, hearing date). When the reminder fires, Sharedo notifies the responsible parties so they don’t miss the milestone.
Each reminder stores: the parent taskId, an absolute reminderDateTime, an offset + offsetMetric pair (e.g. 2 working days before), an isDismissed flag, and a processTags array (the Type field in the OOB editor).
Capability
Out-of-the-box
Alterspective
Create a reminder
Yes
Yes
Set processTags (the “Type” field)
—
CSV + variable, deduped
Output the new reminder id
—
Bind to a workflow variable
Output the human-readable pill label
—
Matches OOB pill format
Calendar Days Before / After (CD / CDA)
— missing from dropdown
Yes
Months Before / After (approximation)
—
offset × 30 at runtime
Read a reminder back into a workflow
— no Load action exists
Load Reminder
Surgically remove one reminder by id
— only delete-all-by-tag
Remove Reminder from Key Date
The lifecycle
Three actions, one complete loop
A workflow that creates a reminder usually wants to read its state later and clean it up when no longer relevant. The three actions fit together so the same workflow that creates a reminder is the one that retires it — no orphans, no stale state, audit trail clean.
The actions in detail
What each one does
Add Reminder to Key Date
AltAddReminderToKeyDate
Creates a reminder on a Key Date with full metadata. Pick offset + metric (12 codes — all platform-native plus Months convenience) or a specific date variable. Optional process tags as literal CSV and/or a runtime variable, deduped at send time.
12 offset codes: Minutes / Hours / Days / Working Days / Calendar Days / Months — Before and After
Output: new reminder id — capture for later Load or Remove
Output: pill label — matches OOB UI format (2 hours after - sla-warning)
createdfailed
Load Reminder
AltLoadReminder
Reads a reminder back into the workflow by id. Projects every field onto output variables — taskId, reminderDateTime, offset, offsetMetric, isDismissed, processTags, plus the human-readable pill label. Two strategies: with a known task id it’s one round-trip; with only the reminder id it falls back to a lookup-then-fetch.
Auto-resolves the parent task when only the reminder id is supplied
All 7 reminder fields on individually-bindable output variables
Pill label output — same human-readable text the OOB UI shows
foundnotFoundfailed
Remove Reminder from Key Date
AltRemoveReminderFromKeyDate
Surgically removes one reminder by id. Other reminders on the same Key Date are preserved. Pairs with Add Reminder to Key Date for clean lifecycle — the workflow that created the reminder also cleans it up when no longer needed.
Surgical filter — not the legacy “delete all reminders by tag” sledgehammer
Preserves audit trail — only the targeted reminder vanishes; nothing else changes
Idempotent — safe to call when the reminder is already gone
removednotFoundfailed
Where it shines
Built for legal & matter-management workflows
Anywhere a workflow needs to create, inspect, or retire reminders programmatically — with proper lifecycle and audit trail. A handful of common scenarios:
Litigation
Limitation Date countdown
A reminder fires N working days before a statutory limitation expires. The workflow automatically retires it when the matter progresses to filed/served, so dismissed matters don’t leave orphan reminders.
Add → Load (check phase) → Remove on phase exit
Conveyancing
Settlement compliance
Tagged reminders fire at multiple offsets before settlement (1 month / 2 weeks / 3 days). When settlement occurs, all reminders for that matter are cleaned up via their captured ids — no manual sweeping.
Add × N (tagged) → Remove × N on settlement
Compliance
Regulatory deadline tracking
Quarterly compliance filings get reminders set on creation, with the pill label captured for inclusion in the team’s weekly digest. Load Reminder reads dismissed-state to decide whether to escalate.
When a hearing is listed, a workflow adds a reminder N working days before. If the hearing is adjourned, the workflow Removes the reminder via its captured id and Adds a new one for the new date.
Add → Remove (on adjourn) → Add (new date)
In the workflow modeller
Drag from the toolbox — you know it’s ours
All three actions appear in the Visual Workflow toolbox under the Alterspective category, alongside our other utility actions.
Alterspective category in the Visual Workflow toolbox — each action shows its name, version, and a one-line description.
On the canvas
Each action exposes the right outlets
When you drop an action onto the canvas, the outlet buttons appear on the right of the node. Wire each one to whatever step should run next — success branches, error handlers, conditional fallbacks.
Add Reminder to Key Date — Reminder created (carries the new reminder id forward) and Creation failed.Load Reminder — Reminder loaded, Reminder not found (e.g. dismissed or deleted), and Lookup failed.Remove Reminder from Key Date — Reminder removed, Key date or reminder not found (idempotent), and Removal failed.
Inside the designer panel
Branded, documented, configurable
Every Alterspective action shares the same designer header so workflow authors can tell our actions from OOB Sharedo at a glance, with a one-click info popover for the why-and-how.
Alterspective-branded designer header — the wordmark, action title, INTERNAL API badge (when relevant), version pill, and info icon. Below the header, the configuration form is generated by the action’s factory.Add Reminder configuration — pick the key date variable, choose offset or specific-date mode, set the metric (the dropdown documents the Months convenience and its 30-day approximation inline), and add process tags via literal CSV and/or runtime variable.Load Reminder outputs — bind any of the seven reminder fields to a workflow variable. Empty bindings are silently skipped.
Worked example
SLA reminder lifecycle for a Limitation Date
A litigation matter has a Limitation Date as one of its Key Dates. The legal assistant should be reminded a fixed period before, but only while the matter is in the Investigation phase. Here’s how all three actions wire together:
A Limitation Date is set on the matter. Without a reminder, the legal assistant could miss the deadline — with consequences ranging from court-imposed costs to a struck-out claim. With our actions wired into the matter’s workflow, the reminder is added, monitored, and removed automatically as the matter progresses through phases.
1
Matter enters “Investigation” phase
A phase-transition trigger fires the workflow. The workflow knows the matter id and the Limitation Date Key Date id.
Add Reminder writes the new reminder id to a workflow variable. The same step also captures the human-readable pill label (10 working days before - sla-investigation-limitation) for downstream notifications and audit logs.
3
Reminder fires — downstream check
When the reminder time arrives, a downstream workflow loads the reminder back to inspect its current state — has the user already dismissed it? Is it still relevant given the matter’s current phase?
AltLoadReminder · reads isDismissed → routes to escalation if past due and not dismissed
4
Matter progresses past “Investigation”
A second phase-transition trigger fires when the matter leaves Investigation. The reminder is no longer relevant. The captured reminder id is used to remove just this one — preserving any other reminders on the same Key Date.
Built once, used everywhere — with the platform team in the loop
Every gap, every gotcha, every undocumented constraint encountered while building these actions was filed back to the Alterspective Foundry team as a Feature Request. The 13 FRs filed during this build are now part of the Foundry roadmap.
By the numbers
A breakdown of the engineering investment in making these actions safe to deploy on any Sharedo tenant.
13
Foundry FRs filed
Platform-level fixes proposed back to the Alterspective Foundry team
Load-bearing rules captured in AGENTS.md for future contributors
100%
Public APIs preferred
Internal endpoints flagged with INTERNAL API badge in the designer
Implementation notes
How it’s wired under the hood
Templates use @alterspective/foundry/workflow-runtime — handleFailure and classifyHttpError for canonical fail-fast outlet routing and consistent error classification.
Designer header is a Knockout component registered once in AltRuntime — every Alterspective action gets the same branded look without per-action CSS or JS deploys.
Months Before/After is an Alterspective convenience — the platform has no native months metric, so the action converts to offset × 30 calendar days at the API boundary. Approximate (real months vary 28–31 days). For exact monthly cadence, use Specific Date/Time mode.
All endpoints used are internal Sharedo APIs (/api/tasks/.../addReminder/, /api/tasks/_getTaskReminderId/, /api/keyDates/for/) — there is no public reminder API at the time of writing.
Pill label format mirrors Sharedo’s OOB AddEditReminders.buildReminderTagText: {offset} {humanMetric} + - {firstTag} when tagged.
Reference
Glossary
Key DateA date-typed task on a Sharedo work item (matter). Examples: Limitation Date, Settlement Date, Hearing Date. Reminders attach to Key Dates because Key Dates are tasks under the hood.
ReminderA scheduled notification attached to a task. Stores an absolute due date plus an offset/metric pair (e.g. 2 working days before) that the platform uses to compute when to fire.
Process TagA free-form string array on each reminder. Surfaced in the OOB UI as the field labelled “Type”. Used for grouping reminders or enabling later tag-based deletion. The first tag appears in the reminder’s pill label.
Pill labelThe human-readable text Sharedo shows for a reminder — e.g. 1 working days before or 2 hours after - sla-warning. Format: {offset} {humanMetric} + - {firstTag} when tagged.
OutletA named exit path from a workflow action node, wired to the next step in the visual workflow. Each of the three reminder actions has 2–3 outlets covering success, not-found, and failure paths.
Visual WorkflowSharedo’s drag-and-drop workflow editor (vs scripted SmartPlans). Actions appear in a toolbox; you drop them on a canvas and wire outlets to the next steps.