List User Recordings

zoom.list_user_recordings
ActionChat & messagingconnection required

Calls the Zoom API with the connection's credentials.

Page through everything one host recorded in a date window.

Connection

Required
Yes — the node will not save without one
Auth type
OAuth 2.0
Providers
Zoom
Secret shape
{"account_id", "client_id", "client_secret"} — Server-to-Server OAuth
Config it needs
account_id
Resolved by
config.connection_id, else node.connection_id

Configuration

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

FieldTypeRequiredDefaultConstraintsExample
user_id
A Zoom user id or email address. Leave blank for 'me', the user the Server-to-Server app acts as.
stringNome——
from_date
Start of the window, yyyy-MM-dd. Sent to Zoom as 'from'. Blank means the last month.
stringNo———
to_date
End of the window, yyyy-MM-dd. Sent to Zoom as 'to'. Zoom refuses a window longer than a month.
stringConditional—only with from_date—
trash
List deleted recordings still in the trash instead of live ones.
booleanNofalse——
trash_type
Which trash to read: whole meetings, or individual files.
stringConditionalmeeting_recordingsone of "meeting_recordings", "recording_file"; only with trash—
page_size
How many rows to return on this page (1-300).
numberNo301–300—
next_page_token
The next_page_token from a previous page. Expires after 15 minutes.
stringNo———

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "page_size": 30,
  "trash": false,
  "trash_type": "meeting_recordings",
  "user_id": "me"
}

Output

One shape.

result

FieldTypeExample
meetings[].id
The meeting number the recording belongs to, as a string.
string—
meetings[].uuid
The recorded instance's UUID.
string—
meetings[].topic
The meeting's topic.
string—
meetings[].start_time
When the recorded instance started.
string—
meetings[].duration
Recorded length in minutes.
number—
meetings[].total_size
Total bytes across every file.
number—
meetings[].recording_count
How many files the instance produced.
number—
meetings[].recording_files
The files themselves — see recording_files[].
array—
count
How many rows this page carries.
number—
next_page_token
Token for the next page, or empty when done. Expires after 15 minutes.
string—
total_records
How many records Zoom reports across all pages.
number—
page_size
The page size Zoom actually applied.
number—
{
  "count": 0,
  "meetings": [
    {
      "duration": 0,
      "id": "",
      "recording_count": 0,
      "recording_files": [],
      "start_time": "",
      "topic": "",
      "total_size": 0,
      "uuid": ""
    }
  ],
  "next_page_token": "",
  "page_size": 0,
  "total_records": 0
}

Notes

  • The window is capped at one month; a wider from/to is refused rather than truncated, so walk longer periods a month at a time.
  • Zoom keeps trashed recordings for 30 days, and this is the only way to see them — pass trash to look.

See List User Recordings run in a workflow.

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