Back to Templates

Transform Meeting Notes into Tasks using GPT-4.1-mini, Notion & TickTick via Telegram

Created by

Created by: Pavel Zamorev || zamorev

Pavel Zamorev

Last update

Last update 21 hours ago

Share


Screenshot 20250721 at 23.30.52.png

This n8n template automates the transformation of raw meeting notes into structured tasks and documents using GPT (or another model) , syncing them to Notion and TickTick via a Telegram bot.

Use Cases

  • Automate note-taking and formatting for daily standups, brainstorming sessions, or client calls.
  • Reduce cognitive load by eliminating manual tracking of ideas and tedious formatting.
  • Convert discussions into actionable tasks instantly with TickTick and structured notes in Notion.

How It Works

  • Capture Notes: Send raw meeting notes to a Telegram bot.
  • AI Processing: The workflow sends the text to AI, which:
    • Removes duplicates and extracts key points.
    • Formats content into structured Markdown notes for Notion.
    • Identifies tasks with deadlines (e.g., "- Prepare presentation (Responsible: John, Deadline: Friday)").
  • Task Parsing: Extracts task titles, removing metadata like "Responsible" and "Deadline."
  • Review & Edit: The bot returns formatted notes and tasks for review in Telegram.
  • Sync & Publish:
    • Notes are published to a Notion database.
    • Tasks are exported to TickTick via API.
  • Confirmation: A Telegram reaction (e.g., 👌 emoji) confirms successful processing.

Setup Instructions

  1. Set Up Telegram Bot:
    1. Create a Telegram bot via BotFather and obtain an API token.
    2. Add the token to the "Telegram Trigger" and "Send-Edited-Notes" nodes under credentials (telegramApi).
  2. Configure OpenAI:
    1. Obtain an OpenAI API key and add it to the "Edit-Notes" node (openAiApi credentials).
    2. Ensure the model is set to gpt-4.1-mini in the node parameters.
  3. Set Up Notion:
    1. Create a Notion database for notes (e.g., "Meetings").
    2. Add the database ID to the "Create a Database Page" node (databaseId).
    3. Configure Notion API credentials (notionApi) in the node.
  4. Set Up TickTick:
    1. Obtain a TickTick API key and add it to the "Create a Task" node (tickTickOAuth2Api credentials).
    2. Specify your TickTick project ID in the node (projectId).
  5. Deploy Workflow:
    1. Ensure your n8n instance is self-hosted to support community nodes (TickTick, Notion).
    2. Activate the workflow in n8n.
  6. Test:
    1. Send a test message to the Telegram bot (e.g., "Discussed project timeline. Tasks: - Prepare slides (Responsible: Alice, Deadline: Friday)").
    2. Verify that notes appear in Notion, tasks in TickTick, and a 👌 reaction in Telegram.

Configuration Examples

Telegram Trigger:

{
  "parameters": {
    "updates": ["message"],
    "additionalFields": {}
  },
  "credentials": {
    "telegramApi": {
      "id": "your-telegram-api-id",
      "name": "meeting notes"
    }
  }
}

OpenAI Prompt (in "Edit-Notes" node):

Analyze the quick meeting notes from {{ $json.message.text }} 
Generate meeting notes and a task list in the following format:\nMeeting Notes:\n- [Note 1]\n- [Note 2]\n\nTasks:\n- [Task 1] \n- [Task 2] 

Notion Database Page

{
  "parameters": {
    "resource": "databasePage",
    "databaseId": "your-notion-database-id",
    "title": "MN {{ $now }}",
    "blockUi": {
      "blockValues": [
        {
          "textContent": "{{ $json.message.text }}"
        }
      ]
    }
  }
}

Requirements

  • Requires an OpenAI API key (or another model).
  • APIs: Pre-configured Notion and TickTick API credentials are required. The template includes setup guides.
  • Setup: Uses community nodes, requiring a self-hosted n8n instance.

Customizing This Workflow

  • Replace the Telegram bot with a webhook or form for alternative inputs (e.g., mobile apps).
  • Modify the OpenAI prompt in the "Edit-Notes" node to customize note and task formats.
  • Add filters in the "Split Notes and Tasks" node to prioritize tasks (e.g., ++#urgent++).
  • Integrate Google Calendar via an additional HTTP Request node to auto-set deadlines based on text (e.g., "by Friday").