Telegram Nutrition AI Assistant (Alternative to Cal AI App) > AI-powered nutrition assistant for Telegram — log meals, set goals, and get personalized daily reports with Google Sheets integration. Description This n8n template creates a…
Download this n8n workflow template and start using it instantly.
> AI-powered nutrition assistant for Telegram — log meals, set goals, and get personalized daily reports with Google Sheets integration.
This n8n template creates a Telegram-based Nutrition AI Assistant designed as an open-source alternative to the Cal AI mobile app. It allows users to interact with an AI agent via text, voice, or images to track meals, calculate macros, and monitor nutrition goals directly from Telegram.
The system integrates Google Sheets as the database, handling both user profiles and meal logs, while leveraging Gemini AI for natural conversation, food recognition, and daily progress reports.
Multi-input support: Text, voice messages (transcribed), and food images (AI analysis).
Macro calculation: Automatic estimation of calories, proteins, carbs, and fats.
User-friendly registration: Simple onboarding without storing personal health data (no weight/height required).
Goal tracking: Users can set and update calorie and protein targets.
Daily reports: Personalized progress messages with visual progress bars.
Google Sheets integration:
Profile table for user targets.
Meals table for food logs.
Advanced n8n nodes: Includes use of Merge, Subworkflow, and Code nodes for data processing and report generation.
Inspired by the Cal AI concept — this template demonstrates how to reproduce its main functionality with n8n, Telegram, and AI agents as a flexible, open-source automation workflow.
telegramai-assistantnutritionmeal-trackinggoogle-sheetsfood-loggingvoice-transcriptionimage-analysisdaily-reportsn8n-templatemerge-nodesubworkflow-nodecode-nodetelegram-triggergoogle-geminiUse this template if you want to:
User_ID, Name, Calories_target, Protein_targetUser_ID, Date, Meal_description, Calories, Proteins, Carbs, FatsIf you’d like help customizing or extending this workflow, feel free to reach out:
Download Voice Message (Telegram): Sends or receives messages through a Telegram bot.
Input Message Router1 (Switch): Routes the workflow down one of several paths based on a value.
get_message (text) (Set): Sets or transforms workflow data — prepares, renames, or injects fields before the next step.
Download IMAGE (Telegram): Sends or receives messages through a Telegram bot.
Analyze image (Google Gemini): Calls Google Gemini for text, vision, or audio generation.
Analyze voice message (Google Gemini): Calls Google Gemini for text, vision, or audio generation.
get_message (Audio/Video message) (Set): Sets or transforms workflow data — prepares, renames, or injects fields before the next step.
get_message (Media message) (Set): Sets or transforms workflow data — prepares, renames, or injects fields before the next step.
Typing… (Telegram): Sends or receives messages through a Telegram bot.
Fix mime (Code): Runs custom JavaScript to transform or manipulate the data flowing through the workflow.
Fix mime5 (Code): Runs custom JavaScript to transform or manipulate the data flowing through the workflow.
get_error_message1 (Set): Sets or transforms workflow data — prepares, renames, or injects fields before the next step.
Send a text message (Telegram): Sends or receives messages through a Telegram bot.
Google Gemini Chat Model (LLM Chat Google Gemini): Provides Google Gemini as the chat model for the AI steps.
Simple Memory (Memory Buffer Window): Gives the AI short-term conversational memory of recent messages.
MarkdownV2 (Code): Runs custom JavaScript to transform or manipulate the data flowing through the workflow.
If (If): Branches the workflow based on a true/false condition.
Registered? (Google Sheets): Reads from or writes rows to a Google Sheets spreadsheet.
Send a text message1 (Telegram): Sends or receives messages through a Telegram bot.
Google Gemini Chat Model1 (LLM Chat Google Gemini): Provides Google Gemini as the chat model for the AI steps.
Simple Memory1 (Memory Buffer Window): Gives the AI short-term conversational memory of recent messages.
MarkdownV (Code): Runs custom JavaScript to transform or manipulate the data flowing through the workflow.
Get Meals Info (Google Sheets): Reads from or writes rows to a Google Sheets spreadsheet.
Get User Info (Google Sheets): Reads from or writes rows to a Google Sheets spreadsheet.
get_message (register) (Set): Sets or transforms workflow data — prepares, renames, or injects fields before the next step.
Register User (Google Sheets Tool): Lets the AI agent read from or write to Google Sheets as a callable tool.
Register Agent (Agent): The AI agent that orchestrates the workflow — it reasons over the input and decides which tools to call.
Cal IA Agent (Agent): The AI agent that orchestrates the workflow — it reasons over the input and decides which tools to call.
Update Profile Data (Google Sheets Tool): Lets the AI agent read from or write to Google Sheets as a callable tool.
Get Profile Data (Google Sheets Tool): Lets the AI agent read from or write to Google Sheets as a callable tool.
Get Report (Tool Workflow): Exposes another n8n workflow to the AI agent as a callable tool.
Append Meal Data (Google Sheets Tool): Lets the AI agent read from or write to Google Sheets as a callable tool.
Get Data (Set): Sets or transforms workflow data — prepares, renames, or injects fields before the next step.
Get chart message (Code): Runs custom JavaScript to transform or manipulate the data flowing through the workflow.
Unify data (Code): Runs custom JavaScript to transform or manipulate the data flowing through the workflow.
Get report (Execute Workflow Trigger): Entry point used when this workflow is executed by another workflow.
Send back message (Set): Sets or transforms workflow data — prepares, renames, or injects fields before the next step.
Telegram Trigger (Telegram Trigger): Starts the workflow when a message is received by the Telegram bot.
Merge (Merge): Combines data from multiple branches back into a single stream.
How it works This template launches your very first AI Agent —an AI-powered chatbot that can do more than just talk— it can take action using tools. Think of an AI Agent as a smart assistant, and the tools are the apps on its phone. By connecting it to other nodes, you give your agent the ability to interact with real-world data and services, like checking the weather, fetching news, or even sending emails on your behalf. This workflow is designed to be the perfect starting point: The Chat Interface: A Chat Trigger node provides a simple, clean interface for you to talk to your agent. The Brains: The AI Agent node receives your messages, intelligently decides which tool to use (if any), and formulates a helpful response. Its personality and instructions are fully customizable in the "System Message". The Language Model: It uses Google Gemini to power its reasoning and conversation skills. The Tools: It comes pre-equipped with two tools to demonstrate its capabilities: 1. Get Weather: Fetches real-time weather forecasts. 2. Get News: Reads any RSS feed to get the latest headlines. The Memory: A Conversation Memory node allows the agent to remember the last few messages, enabling natural, follow-up conversations. Set up steps Setup time: ~2 minutes You only need one thing to get started: a free Google AI API key. 1. Get Your Google AI API Key: Visit Google AI Studio at aistudio.google.com/app/apikey. Click "Create API key in new project" and copy the key that appears. 2. Add Your Credential in n8n: On the workflow canvas, go to the Connect your model (Google Gemini) node. Click the Credential dropdown and select + Create New Credential. Paste your API key into the API Key field and click Save. 3. Start Chatting! Go to the Example Chat node. Click the "Open Chat" button in its parameter panel. Try asking it one of the example questions, like: "What's the weather in Paris?" or "Get me the latest tech news."* That's it! You now have a fully functional AI Agent. Try adding more tools (like Gmail or Google Calendar) to make it even more powerful.
Generate AI videos with Seedance & Blotato, upload to TikTok, YouTube & Instagram Who is this for? This template is ideal for creators, content marketers, social media managers, and AI enthusiasts who want to automate the production of short-form, visually captivating videos for platforms like TikTok, YouTube Shorts, and Instagram Reels — all without manual editing or publishing. What problem is this workflow solving? Creating engaging videos requires: Generating creative ideas Writing detailed scene prompts Producing realistic video clips and sound effects Editing and stitching the final video Publishing across multiple platforms This workflow automates the entire process, saving hours of manual work and ensuring consistent, AI-driven content output ready for social distribution. What this workflow does This end-to-end AI video automation workflow: 1. Generates a creative idea using OpenAI and LangChain 2. Creates detailed video prompts with Seedance AI 3. Generates video clips via Wavespeed AI 4. Generates sound effects with Fal AI 5. Stitches the final video using Fal AI’s ffmpeg API 6. Logs metadata and video links to Google Sheets 7. Uploads the video to Blotato 8. Auto-publishes to TikTok, YouTube, Instagram, and other platforms Setup 1. Add your OpenAI API key in the LLM nodes 2. Set up Seedance and Wavespeed AI credentials for video prompt and clip generation 3. Add your Fal AI API key for sound and stitching steps 4. Connect your Google Sheets account for tracking ideas and outputs 5. Set your Blotato API key and fill in the platform account IDs in the Assign Social Media IDs node 6. Adjust the Schedule Trigger to control when the automation runs How to customize this workflow to your needs Change the AI prompts to target your niche (e.g., ASMR, product videos, humor) Add a Telegram or Slack step for video preview before publishing Tweak scene structure or video duration to match your style Disable platforms you don’t want by turning off specific HTTP Request nodes Edit the sound generation prompts for different moods or effects Documentation: Notion Guide --- Need help customizing? Contact me for consulting and support : Linkedin / Youtube
This workflow allows users to generate AI videos using Google Veo3, save them to Google Drive, generate optimized YouTube titles with GPT-4o, and automatically upload them to YouTube with Upload-Post. The entire process is triggered from a Google Sheet that acts as the central interface for input and output. IT automates video creation, uploading, and tracking, ensuring seamless integration between Google Sheets, Google Drive, Google Veo3, and YouTube. --- Benefits of this Workflow No Code Interface: Trigger and control the video production pipeline from a simple Google Sheet. Full Automation: Once set up, the entire video generation and publishing process runs hands-free. AI-Powered Creativity: Generates engaging YouTube titles using GPT-4o. Leverages advanced generative video AI from Google Veo3. Cloud Storage & Backup: Stores all generated videos on Google Drive for safekeeping. YouTube Ready: Automatically uploads to YouTube with correct metadata, saving time and boosting visibility. Scalable: Designed to process multiple video prompts by looping through new entries in Google Sheets. API-First: Utilizes secure API-based communication for all services. --- How It Works 1. Trigger: The workflow can be started manually ("When clicking ‘Test workflow’") or scheduled ("Schedule Trigger") to run at regular intervals (e.g., every 5 minutes). 2. Fetch Data: The "Get new video" node retrieves unfilled video requests from a Google Sheet (rows where the "VIDEO" column is empty). 3. Video Creation: The "Set data" node formats the prompt and duration from the Google Sheet. The "Create Video" node sends a request to the Fal.run API (Google Veo3) to generate a video based on the prompt. 4. Status Check: The "Wait 60 sec." node pauses execution for 60 seconds. The "Get status" node checks the video generation status. If the status is "COMPLETED," the workflow proceeds; otherwise, it waits again. 5. Video Processing: The "Get Url Video" node fetches the video URL. The "Generate title" node uses OpenAI (GPT-4.1) to create an SEO-optimized YouTube title. The "Get File Video" node downloads the video file. 6. Upload & Update: The "Upload Video" node saves the video to Google Drive. The "HTTP Request" node uploads the video to YouTube via the Upload-Post API. The "Update Youtube URL" and "Update result" nodes update the Google Sheet with the video URL and YouTube link. --- Set Up Steps 1. Google Sheet Setup: Create a Google Sheet with columns: PROMPT, DURATION, VIDEO, and YOUTUBE_URL. Share the Sheet link in the "Get new video" node. 2. API Keys: Obtain a Fal.run API key (for Veo3) and set it in the "Create Video" node (Header: Authorization: Key YOURAPIKEY). Get an Upload-Post API key (for YouTube uploads) and configure the "HTTP Request" node (Header: Authorization: Apikey YOUR_API_KEY). 3. YouTube Upload Configuration: Replace YOUR_USERNAME in the "HTTP Request" node with your Upload-Post profile name. 4. Schedule Trigger: Configure the "Schedule Trigger" node to run periodically (e.g., every 5 minutes). --- Subscribe to my new YouTube channel. Here I’ll share videos and Shorts with practical tutorials and FREE templates for n8n. --- Need help customizing? Contact me for consulting and support or add me on Linkedin.
Automate video creation with Veo3 and auto-post to Instagram, TikTok via Blotato Who is this for? This template is ideal for content creators, social media managers, YouTubers, and digital marketers who want to generate high-quality videos daily using AI and distribute them effortlessly across multiple platforms. It’s perfect for anyone who wants to scale short-form content creation without video editing tools. What problem is this workflow solving? Creating and distributing consistent video content requires: Generating ideas Writing scripts and prompts Rendering videos Manually posting to platforms This workflow automates all of that. It transforms one prompt into a professional AI-generated video and publishes it automatically — saving time and increasing reach. What this workflow does 1. Triggers daily to generate a new idea with OpenAI (or your custom prompt). 2. Creates a video prompt formatted specifically for Google Veo3. 3. Generates a cinematic video using the Veo3 API. 4. Logs the video data into a Google Sheet. 5. Retrieves the final video URL once Veo3 finishes rendering. 6. Uploads the video to Blotato for publishing. 7. Auto-posts the video to Instagram, TikTok, YouTube, Facebook, LinkedIn, Threads, Twitter (X), Pinterest, and Bluesky. Setup 1. Add your OpenAI API key to the GPT-4.1 nodes. 2. Connect your Veo3 API credentials in the video generation node. 3. Link your Google Sheets account and use a sheet with columns: Prompt, Video URL, Status. 4. Connect your Blotato API key and set your platform IDs in the Assign Social Media IDs node. 5. Adjust the Schedule Trigger to your desired posting frequency. How to customize this workflow to your needs Edit the AI prompt to align with your niche (fitness, finance, education, etc.). Add your own branding overlays using JSON2Video or similar tools. Change platform selection by enabling/disabling specific HTTP Request nodes. Add a Telegram step to preview the video before auto-posting. Track performance by adding metrics columns in Google Sheets. Documentation: Notion Guide --- Need help customizing? Contact me for consulting and support : Linkedin / Youtube