Create Room

matrix.create_room
ActionChat & messagingconnection required

Calls the Matrix API with the connection's credentials.

Create a room and return its room id, optionally inviting members.

Connection

Required
Yes — the node will not save without one
Auth type
Bearer token
Providers
Matrix
Secret shape
the account access token, or {"access_token": "…"}
Config it needs
base_url, user_id, default_room_id
Resolved by
config.connection_id, else node.connection_id

Configuration

10 fields, none required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
name
The room's name.
stringNo———
topic
The room's topic.
stringNo———
preset
Join rules and history visibility to start from.
stringNo—one of "private_chat", "public_chat", "trusted_private_chat"—
visibility
Whether the room is published in the server's room directory.
stringNo—one of "public", "private"—
room_alias_name
Local part of the room alias to create, e.g. 'ops' for #ops:example.org.
stringNo———
invite
User ids to invite, as a JSON array or a comma-separated list.
arrayNo—array of string—
is_direct
Mark the room as a direct (one-to-one) chat.
booleanNo———
room_version
Room version to create; the homeserver's default is used when blank.
stringNo———
creation_content
Extra keys for the m.room.create event, as JSON.
objectNo———
initial_state
State events to apply at creation, as a JSON array.
arrayNo—array of object—

Output

One shape.

result

FieldTypeExample
room_id
The new room's id.
string!AbCdEf:example.org
{
  "room_id": "!AbCdEf:example.org"
}

Notes

  • The connection's base_url is the homeserver (e.g. https://matrix.example.org), not the account's server name; the two differ whenever .well-known delegation is in use.
  • Rooms are addressed by room id (!abc:server). Resolve a #alias:server with matrix.resolve_room_alias first, or set a default room on the connection.

See Create Room run in a workflow.

In a technical demo we add the Matrix connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.