Mindket

Triathlon coaching email after a Strava activity update

Newversion 1 · updated

Overview

An n8n workflow that reads a Strava activity when it is updated, asks a Google Gemini chat model to answer as a triathlon coach, and emails the notes. It covers swims, rides and runs, and plans the next sessions.

Triathlon coaching email after a Strava activity update is an n8n workflow in the Productivity category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.

At a glance

Runs in
  • n8n Cloud: import the file there and publish it, so the webhook has a public address
  • Your own n8n server: the same file and steps, with a public address for the webhook
  • Strava: the application that sends the activity events
  • Your inbox: where the notes arrive, through any SMTP provider

Platform

Connects 3 apps

How it works

Trigger

Strava webhook

It starts when Strava tells the workflow that an activity was updated, which happens when one of these changes:

  • The activity’s title
  • The activity’s type
  • The activity’s privacy

Actions

  1. The activity is fetched from Strava with its full data
  2. Every field is flattened into lines of text
  3. A Gemini chat model answers as a triathlon coach, with feedback on the swim, ride or run and a plan for the next sessions
  4. The answer is split into headings, lists and paragraphs, then turned into HTML
  5. The HTML is emailed through SMTP

Result

A coaching email for each updated Strava activity, with feedback and a plan for the next sessions

Integrations

What you need before you start.

Strava

Activity source

Sends the workflow an event when an activity is updated, and returns the activity’s data.

NeedsA Strava API application, with its client ID and secret in a Strava OAuth2 credential

Google Gemini

Language model

Writes the coaching notes from the activity’s text, answering as a triathlon coach.

NeedsA Google Gemini API key

Email (SMTP)

Mail sender

Sends the notes as an HTML email.

NeedsAn SMTP account, a sender address and a receiving address

Workflow check

Checked by Mindket on 13 Nov 2026

Steps
7 steps, starting on a Strava event
Not reached
2 nodes no run reaches: Gmail and WhatsApp Business Cloud
AI
1 step calls an AI model: Fitness Coach
Sign-ins
Signs in to: Email, Google Gemini and Strava
API keys
No API key is left in the file
Step types
Mindket’s checker reads all 4 of its step types

Read from the workflow’s file, not from a run.

About

What it is

This n8n workflow turns an updated Strava activity into a coaching email. It flattens the activity’s data into text, and a Google Gemini chat model answers as a triathlon coach. The prompt covers pool and open water swims, rides, runs, brick workouts and recovery. The answer becomes an HTML email with feedback and a plan for the next sessions. Eight nodes run it, beside two spare nodes and five sticky notes.

Who it suits

Triathletes, runners, cyclists and swimmers who log their sessions on Strava and want a second look at each one. Skip it for other people’s accounts, because Strava’s agreement limits who may see an athlete’s data. Skip it too if you want advice tied to your goals with no edit, since the prompt names none.

Who uses it, and how
SportWho uses itHow they use itExample
TriathlonAge-group athletesGet notes on each swim, ride and run once Strava has itAn athlete edits the title of a long ride and gets notes on pacing and cadence by email.
RunningMarathon runnersRead their pace and heart rate trends in plain wordsA runner adds a half marathon date to the prompt and reads the plan for the coming week.
CyclingClub ridersAsk for sessions that fit the ride just doneA rider reads a note on the climbs of a hilly ride, with a session to match.
SwimmingMasters swimmersGet drills for what the pool data showsA swimmer reads a drill suggestion after a pool session.

You need some n8n and a Strava API application: import a file, add three credentials and publish the workflow so Strava can reach its webhook.

Where to use it

Any n8n that Strava can reach over the internet, with an SMTP account and a Gemini key, will run it. The coaching notes land in your inbox.

  • n8n Cloud: import the file there and publish it, so the webhook has a public address
  • Your own n8n server: the same file and steps, with a public address for the webhook
  • Strava: the application that sends the activity events
  • Your inbox: where the notes arrive, through any SMTP provider

Setup

Download saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Setup takes three credentials and two email addresses.

What you need first
NeedDetail
n8nOn n8n Cloud or on a server of your own, with a public address
StravaAn API application, with its client ID and secret
Google GeminiAn API key
EmailAn SMTP account, a sender address and a receiving address
  1. In n8n, create a workflow, open its menu, choose Import from File and pick workflow.json.
  2. Add a Strava OAuth2 credential with your application’s client ID and secret, and select it in Strava Trigger.
  3. Add a Google Gemini (PaLM) credential with your API key and select it in Google Gemini Chat Model.
  4. Add an SMTP credential and select it in Send Email. Replace <YOUR_EMAIL_ADDRESS> with the address that receives the notes and <YOUR_SENDER_ADDRESS> with the address you send from.
  5. Save, then press Publish. n8n registers the webhook with Strava when the workflow goes live.
  6. Edit an activity in Strava, such as its title, and wait for the email.

How to use it

Edit an activity in Strava and wait a few moments. The notes arrive by email with the subject New Activity on Strava. To coach each new upload instead, set the trigger’s event to Create.

What to change for a different result
To changeWhere
The coach’s adviceThe prompt in Fitness Coach
The modelGoogle Gemini Chat Model
Which activities start a runThe event and the object in Strava Trigger
The subject and the senderSend Email

Example

A triathlete edits the title of a long Saturday ride in Strava. The trigger fires, and n8n fetches the activity with its distance, time and speed, plus heart rate and cadence when her device recorded them.

Gemini writes notes on pacing, cadence and the climbs, and suggests two sessions for the week. The email arrives with headings and bullet lists. She adds her race date to the prompt so the plan counts toward it. The advice is general, so she checks it before she changes her training.

For newcomers and experts

If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. Strava calls a web address that n8n gives it, and n8n then fetches the activity itself. Start by editing the title of one activity.

For experts. The model sits on an AI Agent node with no tools, and its answer goes through two Code nodes into HTML before the email node.

Where to look closer
NodeWhat it doesWhat to know
Strava TriggerReceives activity events and fetches the activityThe event is update, the object is activity and resolveData is on
Combine EverythingFlattens every field into name: value linesNested fields are included, so the whole record reaches the prompt
Fitness CoachAn AI Agent with a long fixed promptIt has no tools and no memory, so each run stands alone
Structure OutputSplits the answer on blank linesIt handles bold headings, * bullets and numbered lists only

Good to know

The trigger fires on updates, not on new uploads, and Strava gives each application one subscription.

  • The event: it is update. On its webhook page, read on 12 November 2026, Strava sends an update when an activity’s title, type or privacy changes, and a create event for a new activity. Set the event to Create to coach every upload
  • One subscription: Strava gives each application one. If yours has one already, the trigger stops with a message, and its option Delete If Exist removes the old one
  • Repair: the original named models/gemini-2.0-flash-exp. Google’s deprecations page, read on 12 November 2026, says the gemini-2.0-flash family shut down on 1 June 2026 and names gemini-3.6-flash as the replacement. Mindket’s copy uses models/gemini-3.6-flash
  • Spare nodes: Gmail and WhatsApp Business Cloud are not connected to anything. Connect one after Conver to HTML and fill in what it asks if you want that route
  • Format: only bold headings, * bullets and numbered lists become HTML. Tables and # headings arrive as plain text
  • Goals: the prompt asks the coach to use your goals and profile, and the workflow sends none, so the advice rests on one activity
  • Strava’s terms: its API agreement, read on 12 November 2026, says a user’s data may only be shown to that user and not shared with third parties without consent. Here it goes to Google’s Gemini, so use your own account and read the agreement first
  • The advice: it is general. Check it before you change your training because of it
  • Your data: each activity’s data goes to Google, and the email goes through your SMTP server
  • Credentials: the JSON holds none

README and files

README

Triathlon coaching email after a Strava activity update

An n8n workflow that listens to Strava. When an activity is updated, it flattens the activity's data into text, asks a
Google Gemini chat model to answer as a triathlon coach, turns the answer into HTML and emails it to you.

What is inside

  • workflow.json: the workflow as n8n exports it, fifteen nodes: eight that run, two spare ones that are not
    connected and five sticky notes. It holds no credential.
  • README.md: these notes.

What we changed from the original copy

  • The credential links are gone: the Strava, Google Gemini, SMTP, Gmail and WhatsApp accounts. Select your own.
  • Google Gemini Chat Model named models/gemini-2.0-flash-exp. Google's deprecations page, read on 12 November 2026,
    says the gemini-2.0-flash family shut down on 1 June 2026 and names gemini-3.6-flash as its replacement. The model
    is now models/gemini-3.6-flash. The 2.0 experimental name is not on that page, so it may have been retired
    earlier.
  • The email addresses in Send Email and Gmail are now <YOUR_EMAIL_ADDRESS> and <YOUR_SENDER_ADDRESS>.
  • The note that asked for donations and carried the author's links is now a title. The text of the other notes stays.
  • Nothing else. The Code nodes needed no repair.

Before you start

  • An n8n instance that Strava can reach over the internet, on n8n Cloud or your own server. The trigger registers a
    webhook with Strava, so a local address does not work.
  • A Strava account and an API application, made at https://www.strava.com/settings/api. n8n's Strava credential asks
    for the application's client ID and secret.
  • A Google Gemini API key.
  • An SMTP account for sending the email, and the addresses to send from and to.

Set it up

  1. In n8n, create a workflow, open its menu and choose Import from File. Pick workflow.json.
  2. Add a Strava OAuth2 credential with your application's client ID and secret, and select it in Strava Trigger. The
    credential's default scopes are activity:read_all and activity:write.
  3. Add a Google Gemini (PaLM) credential with your API key and select it in Google Gemini Chat Model.
  4. Add an SMTP credential and select it in Send Email. Replace <YOUR_EMAIL_ADDRESS> with the address that receives
    the notes and <YOUR_SENDER_ADDRESS> with the address you send from. Keep the angle brackets out.
  5. Save, then press Publish. n8n registers the webhook with Strava when the workflow goes live.
  6. Edit an activity in Strava, such as its title. A few moments later the coaching notes arrive by email.

Strava allows one webhook subscription for each application. If the application already has one, the trigger stops
with that message. Its option Delete If Exist removes the old subscription, and that is a destructive step.

How a run goes

  1. Strava Trigger fires on an activity update. With its resolveData setting on, which is the node's default, it also
    fetches the activity from Strava and adds it as object_data, so the data holds the full record.
  2. Code adds a field named myNewField set to 1 to each item. It came with the file and changes nothing that matters.
  3. Combine Everything flattens the data into lines of text, one name: value line each.
  4. Fitness Coach is an AI Agent. Its prompt describes a triathlon coach with notes for pool and open water swims, rides
    and runs, brick workouts and recovery, then ends with the activity text. Google Gemini Chat Model is the model it
    uses.
  5. Structure Output splits the answer into headings, paragraphs and lists. Conver to HTML joins them into one HTML
    string.
  6. Send Email sends that HTML with the subject New Activity on Strava.

Gmail and WhatsApp Business Cloud sit in the file with no connection to anything. The note beside them says the
answer could go by WhatsApp, email or a blog. To use one, connect it after Conver to HTML, and fill in what it asks.

Change the look

  • The coach: the prompt in Fitness Coach. It names no goals and no athlete profile, so add yours there.
  • The model: Google Gemini Chat Model.
  • Which activities start a run: the Event and Object in Strava Trigger. Set the event to Create to coach each new
    upload.
  • The email: the subject and sender in Send Email.

Good to know

  • The trigger's event is update. Strava, on its webhook page read on 12 November 2026, sends an update when an
    activity's title, type or privacy changes. A new upload sends a create event. To coach every new activity, set the
    event to Create in Strava Trigger.
  • Strava gives each application one subscription. The one this trigger makes covers every athlete who authorised your
    application.
  • The answer is in plain markdown. Structure Output turns bold headings, * bullets and numbered lists into HTML. Other
    markdown, such as tables or # headings, arrives as plain text.
  • The prompt asks the coach to use the athlete's goals and profile, and the workflow sends none. The advice rests on the
    one activity.
  • Strava's API agreement, read on 12 November 2026, says a user's Strava data may only be shown to that user and not
    shared with third parties without consent. Here the activity data goes to Google's Gemini. Use it on your own
    account, and read the agreement before you use it for anyone else.
  • The advice is general. Check it before you change your training because of it.
  • Google lists gemini-2.5-pro and gemini-2.5-flash for shutdown on 1 December 2026, so the model name will need
    a change if you pick one of those.
  • Your data: each activity's data goes to Google, and the email goes through your SMTP server.
  • Credentials: the JSON holds none.
Files
NOTICE.md  680 B
README.md  6 KB
workflow.json  16 KB

3 files, 23 KB, downloaded as a zip.

What’s new

  • Version 1 · 2026-11-12

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

Huashu Design

alchaincyf · Skill

Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…

New29.4k

Guizang PPT Skill

op7418 · Skill

Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…

New29.8k

Claude Code Skills & Plugins

alirezarezvani · Skill

Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…

New29.8k

Similar in Productivity

See all in Productivity

Frontend Slides

zarazhangrui · Skill

Builds HTML presentations from scratch or from a PowerPoint file and shows visual style previews to pick from, for people who want web slides with no CSS or Ja…

New32.3k

IPTV

iptv-org · Kit

Collects publicly available live TV channels from many countries into playlists that any video player with live streaming can open. Made for viewers and for de…

New144k

upscaler

uwg · Kit

Holds a set of image upscaling models gathered from the OpenModelDB community, for people who want to enlarge low-resolution pictures with AI on their own comp…

New