Rocket.Chat Message Scraper avatar

Rocket.Chat Message Scraper

Pricing

Pay per event

Go to Apify Store
Rocket.Chat Message Scraper

Rocket.Chat Message Scraper

Export messages, channels, private groups, and direct messages from any Rocket.Chat instance using the REST API. Authenticate with a personal access token. Supports date-range filters, room allowlists, and full thread history.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

4 days ago

Last modified

Share

Export messages, channels, private groups, and direct messages from any Rocket.Chat instance using the official REST API.

What it does

Connect to any self-hosted or cloud Rocket.Chat instance and download your message history. Authenticate with a personal access token and choose which room types to export: public channels, private groups, or direct messages. Optionally filter by date range or specific room IDs.

Works with Rocket.Chat Community Edition, Enterprise Edition, and cloud-hosted workspaces.

Use cases

  • Compliance archival — Export message history for legal or regulatory retention
  • Migration — Move message data to a new platform or data warehouse
  • Knowledge base extraction — Mine conversations for documentation and institutional knowledge
  • Analytics — Analyze communication patterns, response times, and topic trends
  • Backup — Create offline snapshots of workspace history

Setup: generating your personal access token

  1. Log in to your Rocket.Chat instance
  2. Click your avatar in the top-left corner then Profile
  3. Scroll down to Personal Access Tokens
  4. Click Add and give the token a name (e.g. orbtop-export)
  5. If prompted, enter your password and enable 2FA if required
  6. Copy both the Token and your User ID (shown above the token list)

These two values go into the Auth Token and User ID input fields.

Input parameters

ParameterDescriptionDefault
Instance URLBase URL of your Rocket.Chat instancehttps://open.rocket.chat
User IDYour Rocket.Chat User IDRequired
Auth TokenPersonal access tokenRequired
Room IDsLimit to specific rooms (optional)All accessible rooms
Room TypesTypes to scrape: c (channels), p (private groups), d (direct messages)All types
Date FromOnly fetch messages on or after this date (ISO format)No filter
Date ToOnly fetch messages on or before this date (ISO format)No filter
Include Thread RepliesFetch replies nested in threadsfalse
Max ItemsMaximum records to save (0 = unlimited)No limit

Output format

Each exported message is saved as one dataset record:

FieldDescription
instance_urlThe Rocket.Chat instance base URL
room_idRocket.Chat room identifier
room_nameHuman-readable room name
room_typec (channel), p (private group), d (direct message)
room_topicRoom topic string
room_descriptionRoom description string
message_idUnique message identifier
message_ridRoom ID the message belongs to
message_tsMessage creation timestamp (ISO 8601)
message_update_atLast edit timestamp (ISO 8601)
message_user_idSender User ID
message_user_usernameSender username
message_user_nameSender display name
message_msgPlain-text message body
message_typeMessage type (empty = normal, rm = deleted, uj = join, etc.)
message_thread_msg_idParent message ID if this is a thread reply
message_attachmentsJSON array of file/image attachments
message_reactionsJSON map of emoji reactions and users
message_urlsJSON array of embedded URLs
message_mentionsJSON array of @mentions
message_channelsJSON array of #channel references

Pricing

Pay-per-result. The actor charges a small start fee plus a per-record fee for each message saved. No charge for error records.

Notes

  • The scraper pages through the Rocket.Chat API (100 messages per request). Large workspaces may take time depending on instance rate limits.
  • Authentication failures produce an error record in the dataset and exit cleanly. Check the status field — AUTH_ERROR means the token is invalid or expired; INPUT_ERROR means a required field is missing.
  • Thread replies require an extra API call per thread and are disabled by default. Enable with includeThreadReplies: true.
  • The API only returns rooms and messages visible to the authenticated user. Admin accounts can access more rooms.
  • Private groups and direct messages require the account to be a member of the room.