New Airtable records in Slack

Your team sees every new record in an Airtable table as a Slack message.

Easy Saves ~2 hours/month ProductivityBy Flowngn team

Works with n8n · Make · Zapier

How it works

Trigger: Airtable — new record
  1. Watch your Airtable table for new records.
  2. Post the record's name and key fields to Slack.

Diagram

ANew recordAirtable TriggerSPost to #updatesSlack
Trigger App

Build it

Pick your tool — same automation, step by step.

Copy and paste straight into an n8n canvas (Ctrl+V), or download and use Import from File. Then connect your own credentials and replace every YOUR_… placeholder.

Workflow JSON
Show code (93 lines)
{
  "name": "New Airtable records in Slack (Flowngn)",
  "nodes": [
    {
      "parameters": {
        "content": "## New Airtable records in Slack\nYour team sees every new record in an Airtable table as a Slack message.\n\n**Setup**\n1. Open each node and connect your own credentials.\n2. Replace every YOUR_… placeholder.\n3. Test once, then activate.\n\nFree template from Flowngn",
        "height": 260,
        "width": 340
      },
      "id": "292cf932-6932-479f-ae8e-28cb1b3b09f5",
      "name": "Setup notes",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        -420,
        -60
      ]
    },
    {
      "parameters": {
        "pollTimes": {
          "item": [
            {
              "mode": "everyMinute"
            }
          ]
        },
        "authentication": "airtableTokenApi",
        "baseId": {
          "__rl": true,
          "value": "YOUR_BASE_ID",
          "mode": "id"
        },
        "tableId": {
          "__rl": true,
          "value": "YOUR_TABLE_ID",
          "mode": "id"
        },
        "triggerField": "Created",
        "additionalFields": {}
      },
      "id": "292cf932-6932-479f-ae8e-28cb1b3b09f5",
      "name": "New record",
      "type": "n8n-nodes-base.airtableTrigger",
      "typeVersion": 1,
      "position": [
        0,
        0
      ]
    },
    {
      "parameters": {
        "select": "channel",
        "channelId": {
          "__rl": true,
          "value": "#updates",
          "mode": "name"
        },
        "text": "=🗂️ New Airtable record: {{ $json.fields.Name }}\n{{ Object.entries($json.fields).slice(0, 5).map(([k, v]) => k + ': ' + v).join('\\n') }}",
        "otherOptions": {}
      },
      "id": "292cf932-6932-479f-ae8e-28cb1b3b09f5",
      "name": "Post to #updates",
      "type": "n8n-nodes-base.slack",
      "typeVersion": 2.2,
      "position": [
        300,
        0
      ]
    }
  ],
  "connections": {
    "New record": {
      "main": [
        [
          {
            "node": "Post to #updates",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "meta": {
    "templateCredsSetupCompleted": false
  },
  "tags": []
}

Open in the playground to edit →

Tips

  • Add a "Created" field (created time) to the table — the trigger uses it to find new records.

Related flows