Search Public Rooms

matrix.list_public_rooms
ActionChat & messagingconnection required

Calls the Matrix API with the connection's credentials.

Search the published room directory, on this or a remote homeserver.

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

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

FieldTypeRequiredDefaultConstraintsExample
search_term
Text matched against room names, topics and aliases; blank lists the whole directory.
stringNo———
limit
How many rooms to return in this page.
numberNo—≥ 1—
since
A next_batch token from a previous call, to fetch the following page.
stringNo———
server
Search another homeserver's directory, e.g. matrix.org.
stringNo———

Output

One shape.

result

FieldTypeExample
chunk
The rooms on this page.
array—
chunk[].room_id
The room's id.
string—
chunk[].name
The room's name, when it has one.
string—
chunk[].topic
The room's topic, when it has one.
string—
chunk[].canonical_alias
The room's main alias, when set.
string—
chunk[].num_joined_members
How many members have joined.
number—
count
How many rooms this page contains.
number—
next_batch
Token for the next page, or an empty string.
string—
prev_batch
Token for the previous page, or an empty string.
string—
total_room_count_estimate
The server's estimate of the total, when it publishes one.
number—
{
  "chunk": [
    {
      "canonical_alias": "",
      "name": "",
      "num_joined_members": 0,
      "room_id": "",
      "topic": ""
    }
  ],
  "count": 0,
  "next_batch": "",
  "prev_batch": "",
  "total_room_count_estimate": 0
}

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 Search Public Rooms 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.