Search documentation

Search for pages in the documentation

Your First Workflow

Build your first workflow in 10 minutes

In this tutorial, you'll create a simple workflow that sends a notification when a meeting ends. This introduces the core concepts of triggers, nodes, and connections.

Time: 10 minutes Difficulty: Beginner Prerequisites: Slack integration connected

What You'll Build

A workflow that:

  1. Triggers when a meeting ends
  2. Loads meeting information
  3. Sends a Slack notification
text
[Meeting Ended] → [Load Meeting] → [Slack: Meeting Complete]

Step 1: Create a New Workflow

  1. Navigate to the Workflows section
  2. Click "Create Workflow"
  3. Enter a name: "My First Workflow"
  4. Click "Create"

Step 2: Add the Trigger

Every workflow starts with a trigger that determines when it runs.

  1. The workflow editor opens with a blank canvas
  2. Click "Add Trigger" or drag from the node palette
  3. Select "Event Trigger"
  4. Configure the trigger:
    • Event Type: MEETING_ENDED

The trigger node appears on your canvas, ready to fire when any meeting ends.

Step 3: Add the Load Meeting Node

The Load Meeting node fetches detailed information about the meeting.

  1. Click the "+" button on the trigger's output
  2. Select "Load Meeting" from the node palette
  3. The node is automatically connected to the trigger

Understanding the Connection

The arrow from the trigger to Load Meeting means:

  • When a meeting ends, the trigger fires
  • Meeting ID is passed to Load Meeting
  • Load Meeting fetches full meeting details

Step 4: Add the Slack Notification

Now add an action to notify you about the meeting.

  1. Click the "+" button on Load Meeting's success output
  2. Select "Slack Post"
  3. Configure the Slack node:

Channel: Select your test channel

Message:

liquid
Meeting Complete! 📅

*{{ json.meeting.title }}*
Ended at {{ json.meeting.endTime | date: "%I:%M %p" }}

Step 5: Connect the Nodes

If not already connected, ensure all nodes are linked:

text
Event Trigger → Load Meeting → Slack Post
  1. Drag from the output port (right side) of one node
  2. Drop on the input port (left side) of the next node

Step 6: Release the Workflow

Before your workflow can run, you need to release it.

  1. Click "Release" in the toolbar
  2. Confirm the release
  3. Your workflow is now active!

Step 7: Test Your Workflow

Test the workflow without waiting for a real meeting:

  1. Click the "Trigger" button in the toolbar
  2. In the trigger execution modal, fill in the form with your test data (select a recent meeting)
  3. Click "Execute"

Check the Results

  1. Watch the execution in real-time
  2. Each node shows its status (pending → running → completed)
  3. Check your Slack channel for the notification

Understanding What Happened

Let's trace through the execution:

1. Trigger Fired

json
{
  "eventType": "MEETING_ENDED",
  "meetingId": "mtg-12345"
}

2. Load Meeting Fetched Data

json
{
  "meeting": {
    "title": "Weekly Team Sync",
    "startTime": "2024-01-15T10:00:00Z",
    "endTime": "2024-01-15T10:30:00Z",
    "attendees": [...]
  }
}

3. Slack Received Message

text
Meeting Complete! 📅

*Weekly Team Sync*
Ended at 10:30 AM

Common Issues

Issue: Slack message not appearing

Check:

  • Is the Slack integration connected?
  • Do you have access to the selected channel?
  • Is the bot added to the channel?

Issue: Workflow doesn't trigger

Check:

  • Is the workflow released and active?
  • Is the event type correct?
  • Are there any validation errors?

Issue: Error on Load Meeting

Check:

  • Does the meeting exist?
  • Do you have permission to access it?

Congratulations! 🎉

You've built your first workflow! You now understand:

  • ✅ How to create a workflow
  • ✅ How triggers start workflows
  • ✅ How nodes process data
  • ✅ How to connect nodes together
  • ✅ How to release and test

Next Steps

Enhance This Workflow

Try these modifications:

  1. Add meeting summary - Include more meeting details
  2. Add conditional logic - Only notify for certain meetings
  3. Add AI summarization - Let AI summarize the meeting

Continue Learning

Ready for more? Try the Meeting Follow-Up Tutorial to add AI capabilities to your workflow.

Complete Workflow Summary

Trigger: MEETING_ENDED event Nodes: Event Trigger → Load Meeting → Slack Post Output: Slack notification with meeting title and end time

Configuration Reference

Event Trigger:

yaml
eventType: MEETING_ENDED

Load Meeting:

yaml
# No additional configuration needed
# Uses meeting ID from trigger

Slack Post:

yaml
channel: "#your-channel"
message: |
  Meeting Complete! 📅

  *{{ json.meeting.title }}*
  Ended at {{ json.meeting.endTime | date: "%I:%M %p" }}