Keep cohort milestones visible in Canvas
Move a finalized milestone out of planning chat and into the course calendar learners use to plan their work.
Trigger
Channel Message Received
Triggered when a message is posted in a Slack channel (public, private, or multi-party IM). Does NOT match direct messages.
Action
Create Calendar Event
Creates a calendar event with options for recurrence (finite `rrule` series only), section-specific timings, and blackout dates within a specified context.
Why this helps
A milestone can be agreed in Slack but remain absent from the place learners rely on for course timing.
- Make course milestones visible alongside other dates.
- Reduce follow-up reminders about dates already agreed.
- Keep the learner-facing calendar aligned with team planning.
Setup
Build it in a few focused steps.
- 1Connect Slack and Canvas to Notis once through the portal.
- 2Create an automation in the portal or ask Notis conversationally.
- 3Write a single instruction asking Notis to create a Canvas calendar event for finalized learner-facing milestones shared in Slack.
- 4Choose Slack Channel Message Received, set a run-report channel, and test with one real milestone.
Questions about this workflow
Can this include a milestone without a precise date?
A calendar event needs meaningful timing. Ask Notis to report messages that lack a usable date rather than creating an incomplete event.
Can the workflow handle recurring milestones?
Canvas supports finite recurrence series. Include the series details in Slack and specify the expected event series in your prompt.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Slack to Canvas. A trigger fires from one place; an action lands in another.
Slack triggers
Canvas actions
Recurring trigger
Notis starts this workflow on a schedule, such as daily, weekly, or during business hours.
Create account notification
Creates a global notification within a canvas account, ensuring `end at` is after `start at` and any specified `notification roles` are valid.
Webhook trigger
Notis starts this workflow when an external tool or custom backend sends an HTTP request.
Create appointment group
Creates a new appointment group in canvas for schedulable time slots within specified course or group contexts.
New Channel Created Trigger
Triggered when a new channel is created in Slack.
Create an assignment
Creates a new assignment within a specified course in canvas lms.
Channel Message Received
Triggered when a message is posted in a Slack channel (public, private, or multi-party IM). Does NOT match direct messages.
Create assignment override
Creates an assignment override to adjust due/unlock/lock dates for an assignment in a course, targeting specific students (requires `title`), a group, or a course section; at least one target (`student ids`, `group id`, or `course section id`) is required.
Direct Message Received
Triggered when a new direct message (DM) is sent to a user in Slack. Catches all DMs across all DM channels.
Create Calendar Event
Creates a calendar event with options for recurrence (finite `rrule` series only), section-specific timings, and blackout dates within a specified context.
Message Reaction Added
Triggered when a reaction is added to a message in Slack. Supports optional filtering by channel and emoji name.
Create communication channel
Creates a new communication channel (e.g., email, sms, push) for an existing canvas user to receive notifications.
Message Reaction Removed
Triggered when a reaction is removed from a message in Slack. Supports optional filtering by channel and emoji name.
Create content share
Shares a canvas content item to specified users, if the sender has necessary permissions and receiver ids are valid.
Reaction Added Trigger
DEPRECATED: use `SLACK_MESSAGE_REACTION_ADDED` instead. Triggered when a reaction is added to a message in Slack.
Create conversation
Use to send messages in canvas by creating a new conversation or adding to an existing one; an existing conversation with the same recipients (and matching scope/filter, if specified) may be reused unless `force new` is true.
Connect any two apps with Notis in the middle.
Slack and Canvas, or any other combination from 1,000+ integrations.
When this happens · Trigger
Do this · Action
Save your first hour today.
7-day trial of any paid plan, with 20$ of usage included.
No card. Works with personal or business Canvas.