AutomationFlowsSocial Media › Matrix Room Creator with Invites & Messages

Matrix Room Creator with Invites & Messages

Original n8n title: Create a Room, Invite Members From a Different Room, and Send a Message in the Room We Created

Create a room, invite members from a different room, and send a message in the room we created. Uses manualTrigger, matrix, noOp. Event-driven trigger; 8 nodes.

Event trigger★★★★☆ complexity8 nodesMatrix
Social Media Trigger: Event Nodes: 8 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": "83",
  "name": "Create a room, invite members from a different room, and send a message in the room we created",
  "nodes": [
    {
      "name": "On clicking 'execute'",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        240,
        300
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "name": "Matrix",
      "type": "n8n-nodes-base.matrix",
      "position": [
        400,
        300
      ],
      "parameters": {
        "resource": "room",
        "roomName": "n8n",
        "roomAlias": "discussion-n8n"
      },
      "credentials": {
        "matrixApi": "<your credential>"
      },
      "typeVersion": 1
    },
    {
      "name": "IF",
      "type": "n8n-nodes-base.if",
      "position": [
        840,
        300
      ],
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{$node[\"Matrix1\"].json[\"user_id\"]}}",
              "value2": "={{$node[\"Matrix2\"].json[\"user_id\"]}}",
              "operation": "notEqual"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "name": "Matrix3",
      "type": "n8n-nodes-base.matrix",
      "position": [
        990,
        200
      ],
      "parameters": {
        "roomId": "={{$node[\"Matrix\"].json[\"room_id\"]}}",
        "userId": "={{$node[\"IF\"].json[\"user_id\"]}}",
        "resource": "room",
        "operation": "invite"
      },
      "credentials": {
        "matrixApi": "<your credential>"
      },
      "typeVersion": 1
    },
    {
      "name": "Matrix4",
      "type": "n8n-nodes-base.matrix",
      "position": [
        1140,
        200
      ],
      "parameters": {
        "text": "Welcome to n8n!",
        "roomId": "={{$node[\"Matrix\"].json[\"room_id\"]}}"
      },
      "credentials": {
        "matrixApi": "<your credential>"
      },
      "typeVersion": 1
    },
    {
      "name": "NoOp",
      "type": "n8n-nodes-base.noOp",
      "position": [
        990,
        400
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "name": "Matrix1",
      "type": "n8n-nodes-base.matrix",
      "position": [
        540,
        300
      ],
      "parameters": {
        "resource": "account"
      },
      "credentials": {
        "matrixApi": "<your credential>"
      },
      "typeVersion": 1,
      "continueOnFail": true
    },
    {
      "name": "Matrix2",
      "type": "n8n-nodes-base.matrix",
      "position": [
        690,
        300
      ],
      "parameters": {
        "roomId": "!cMUIsUgevrhCoeMkSG:matrix.org",
        "filters": {},
        "resource": "roomMember"
      },
      "credentials": {
        "matrixApi": "<your credential>"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {},
  "connections": {
    "IF": {
      "main": [
        [
          {
            "node": "Matrix3",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "NoOp",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Matrix": {
      "main": [
        [
          {
            "node": "Matrix1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Matrix1": {
      "main": [
        [
          {
            "node": "Matrix2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Matrix2": {
      "main": [
        [
          {
            "node": "IF",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Matrix3": {
      "main": [
        [
          {
            "node": "Matrix4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "On clicking 'execute'": {
      "main": [
        [
          {
            "node": "Matrix",
            "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

Create a room, invite members from a different room, and send a message in the room we created. Uses manualTrigger, matrix, noOp. Event-driven trigger; 8 nodes.

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

More Social Media workflows → · Browse all categories →

Related workflows

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

Social Media

Notion__DriveDropbox_Sync. Uses notionTrigger, googleDrive, dropbox, notion. Event-driven trigger; 47 nodes.

Notion Trigger, Google Drive, Dropbox +3
Social Media

This n8n workflow automates the process of uploading video and image advertisements to Meta Ads Manager via the Meta Graph API (Facebook Ads) directly from Google Sheets and Google Drive. The workflow

Facebook Graph Api, Google Sheets, HTTP Request +2
Social Media

Marketing teams, agencies, and businesses who regularly create tens or hundreds of Facebook ads and store their creative assets in Google Drive.

Facebook Graph Api, Error Trigger, Stop And Error +4
Social Media

This workflow provides an end-to-end automation for discovering, evaluating, and optionally downloading high-quality educational YouTube videos.

HTTP Request, Google Sheets
Social Media

13-Convert_YouTube_Videos_to_Shorts_with_Klap___Auto_Post_to_Multiple_Social_Platforms. Uses httpRequest, telegramTrigger, googleSheets, telegram. Event-driven trigger; 36 nodes.

HTTP Request, Telegram Trigger, Google Sheets +1