AutomationFlowsSlack & Telegram › Daily Birthday Reminders: Google Contacts to Slack

Daily Birthday Reminders: Google Contacts to Slack

Original n8n title: Send Daily Birthday Reminders From Google Contacts to Slack

Send Daily Birthday Reminders from Google Contacts to Slack. Uses scheduleTrigger, googleContacts, slack, stickyNote. Scheduled trigger; 7 nodes.

Cron / scheduled trigger★★★★☆ complexity7 nodesGoogle ContactsSlack
Slack & Telegram Trigger: Cron / scheduled Nodes: 7 Complexity: ★★★★☆ Added:

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "id": "9w5vu5VmXxpdBLWi",
  "name": "Send Daily Birthday Reminders from Google Contacts to Slack",
  "tags": [
    {
      "id": "uScnF9NzR3PLIyvU",
      "name": "Published",
      "createdAt": "2025-03-21T07:22:28.491Z",
      "updatedAt": "2025-03-21T07:22:28.491Z"
    }
  ],
  "nodes": [
    {
      "id": "e4de5385-6b00-4245-b06e-3003703a348a",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        80,
        140
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "triggerAtHour": 8
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "df65de90-d931-450e-bed1-bf8b4f79a090",
      "name": "Google Contacts",
      "type": "n8n-nodes-base.googleContacts",
      "notes": "Get the contact details\n",
      "position": [
        300,
        140
      ],
      "parameters": {
        "fields": [
          "emailAddresses",
          "birthdays",
          "names",
          "nicknames"
        ],
        "options": {},
        "operation": "getAll",
        "returnAll": true
      },
      "notesInFlow": true,
      "typeVersion": 1
    },
    {
      "id": "6e3dfeea-b22d-4156-a9a9-a8d5bb610848",
      "name": "If",
      "type": "n8n-nodes-base.if",
      "position": [
        800,
        180
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "eff6fe23-651d-474d-8d77-3734e1ac4c13",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.today }}",
              "rightValue": "={{ $('Google Contacts').item.json.birthdays }}"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "32bd420e-11ab-4e82-a732-ed155f36094b",
      "name": "Slack",
      "type": "n8n-nodes-base.slack",
      "notes": "Reminds to the birthday message",
      "position": [
        1020,
        60
      ],
      "parameters": {
        "text": "Todays Birthday of your friend",
        "select": "channel",
        "blocksUi": "=Today is {{$json[\"first_name\"]}} {{$json[\"last_name\"]}}'s birthday! \ud83c\udf89",
        "channelId": {
          "__rl": true,
          "mode": "url",
          "value": "",
          "__regex": "https://app.slack.com/client/.*/([a-zA-Z0-9]{2,})"
        },
        "messageType": "block",
        "otherOptions": {},
        "authentication": "oAuth2"
      },
      "credentials": {
        "slackOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "notesInFlow": true,
      "typeVersion": 2.3
    },
    {
      "id": "caa5a301-ff68-4d61-801f-ac8c95edded3",
      "name": "Filter Contact ",
      "type": "n8n-nodes-base.filter",
      "position": [
        560,
        140
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "edb146b2-f338-4563-a991-d38613d1d5aa",
              "operator": {
                "type": "string",
                "operation": "notEmpty",
                "singleValue": true
              },
              "leftValue": "={{ $('Google Contacts').item.json.birthdays }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "4a156b56-ab25-4d29-aa1b-8cf00e4114c9",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        0
      ],
      "parameters": {
        "width": 1220,
        "height": 320,
        "content": "Send Daily Birthday Reminders from Google Contacts to Slack"
      },
      "typeVersion": 1
    },
    {
      "id": "b1b04e75-e674-4389-a5ad-ebdcdfedca78",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        360
      ],
      "parameters": {
        "width": 1220,
        "height": 100,
        "content": "This workflow automates the process of retrieving your Google Contacts, filtering out the ones with birthdays on the current day, and sending a reminder to a designated Slack channel. By scheduling it to run daily at a specific time, the workflow ensures that you never miss a birthday reminder. Whether for team celebrations, personal reminders, or simply keeping track of important dates, this workflow can be easily customized to notify you or your team about upcoming birthdays directly in Slack."
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "22eaeed6-6d9e-430b-8a1d-3848257cf3b2",
  "connections": {
    "If": {
      "main": [
        [
          {
            "node": "Slack",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter Contact ": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Contacts": {
      "main": [
        [
          {
            "node": "Filter Contact ",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Google Contacts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Send Daily Birthday Reminders from Google Contacts to Slack. Uses scheduleTrigger, googleContacts, slack, stickyNote. Scheduled trigger; 7 nodes.

Source: https://github.com/Zie619/n8n-workflows — original creator credit. Request a take-down →

More Slack & Telegram workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Slack & Telegram

Send Daily Birthday Reminders from Google Contacts to Slack. Uses scheduleTrigger, googleContacts, slack, stickyNote. Scheduled trigger; 7 nodes.

Google Contacts, Slack
Slack & Telegram

This workflow runs daily, pulls birthdays from Google Contacts, generates personalized birthday copy with OpenAI, sends greetings via Gmail, WhatsApp Business Cloud, and Telegram when available, and p

Google Contacts, OpenAI, Gmail +3
Slack & Telegram

This workflow fully automates your team's daily standup process using Slack for communication, Notion for structured data storage, and Redis for real-time session management.

Notion, Slack, Redis
Slack & Telegram

debug. Uses httpRequest, slack, redis, mailgun. Scheduled trigger; 60 nodes.

HTTP Request, Slack, Redis +2
Slack & Telegram

This workflow is an automated employee time tracking and reporting system that monitors weekly work hours via TMetric, then delivers personalized summaries directly to each team member on Slack. It co

HTTP Request, Item Lists, Data Table +1