Send Your Team a Daily Weather Briefing to Slack Every Morning
Automatically fetch the current day's weather forecast and post a friendly summary to your team's Slack channel each morning. Remote teams stay informed about local conditions without anyone lifting a finger.
- 1
Schedule the workflow to run every morning
Add a
Schedule Triggernode. SetTrigger IntervaltoDaysand the time to something like 08:00 AM in your team's timezone. This node fires the workflow automatically each day without any manual action. - 2
Fetch the weather data from OpenWeatherMap
Add an
HTTP Requestnode connected to the Schedule Trigger. SetMethodtoGETandURLtohttps://api.openweathermap.org/data/2.5/weather?q=YOUR_CITY&units=metric&appid=YOUR_API_KEY. ReplaceYOUR_CITYwith your city name andYOUR_API_KEYwith your free OpenWeatherMap key. Store the API key in the node'sNotesfield for reference. - 3
Extract and format the key weather fields
Add a
Setnode to pull out the fields you need. Create three string fields:citymapped to{{ $json.name }},temperaturemapped to{{ $json.main.temp }}, anddescriptionmapped to{{ $json.weather[0].description }}. This keeps the data clean before sending to Slack. - 4
Build the Slack message text
Add a second
Setnode and create one field calledmessage. Set its value to a friendly string such asGood morning team! Today in {{ $json.city }}: {{ $json.description }}, {{ $json.temperature }}°C. Have a great day!. This is the exact text that will appear in Slack. - 5
Post the weather briefing to your Slack channel
Add a
Slacknode and connect your Slack credential (OAuth2 or Bot Token). SetResourcetoMessage,OperationtoPost,Channelto your target channel such as#generalor#weather, andTextto{{ $json.message }}. Save and activate the workflow — your team will receive a weather update every morning.
Frequently asked questions
How do I get a free OpenWeatherMap API key?
Go to openweathermap.org, create a free account, and navigate to the API Keys section in your profile. Copy the default key generated for you. It activates within a few minutes and allows up to 1,000 requests per day on the free plan.
Can I send weather for multiple cities?
Yes. Duplicate the HTTP Request node for each city, changing the `q=` parameter in the URL. Then merge or format all results in the Set node before sending one combined Slack message, or post separate messages per city by duplicating the Slack node.
How do I switch from Celsius to Fahrenheit?
In the HTTP Request node URL, change `units=metric` to `units=imperial`. The temperature returned will then be in Fahrenheit. Update the degree symbol label in your message text from °C to °F so teammates are not confused.