How To Read Slack Data Exports
After exporting the data from your workspace, it is possible to obtain a ZIP file that allows you to retrieve the message history and file links.
Export formats
The choice of export format is contingent upon the specific type of export being executed.
- This communication platform is limited to public channels exclusively. The data will be exported in the JSON format.
- Data will be exported in JSON format across all channels and chats.
- Channels and chats of individual users: The data has the capability to be exported in two different formats, namely JSON and TXT.
What your export file contains
JSON files
After your export is complete, you’ll download a ZIP file with your workspace data and a series of file links that direct back to your workspace’s files. Depending on your export type, here’s what your ZIP file will include:
Public channels only | All channels and conversations | |
Channels (channels.json) | | |
Direct messages (dms.json) | | |
Private channels (groups.json) | | |
App activity logs (integration_logs.json) | | |
Group direct messages (mpims.json) | | |
Members (users.json)* | | |
Folders for every public channel | | |
Folders for every private channel | | |
Folders for every direct message | |
TXT files
- The user’s text may be rewritten in an academic manner as follows: The user is referring to various communication and storage features available on a digital platform. These features include channels
- Every folder will consist of a collection of TXT files that hold the chronological record of a discussion or the files transmitted by an individual user during the specified range of dates.
- Please be aware that when applying a date range to an export in Slack, any conversations that the user has been involved in will be included in the export, regardless of whether any messages were exchanged in those conversations during the specified dates. In the present scenario, the export file will not contain any messages displayed on the channel.
Navigate your export file
JSON files
Upon accessing the export ZIP file, it can be observed that each channel or direct message is allocated its own distinct folder. The contents of each folder will consist of messages derived from the chat, systematically arranged based on chronological order in distinct JSON files.
The reference files provided encompass many types of discussions, including channels.json files for public channels, groups.json files for private channels, and dms.json files for direct messages. The files will include the identification numbers of the users and channels. In order to locate a particular discussion, it is necessary to utilize both the channel and reference files. To locate a particular message, one may employ the following procedure:
Access the users.json file and conduct a search to identify the specific individuals in concern. Please take note of their identification numbers.
Subsequently, access the files channels.json, groups.json, or dms.json and do a search for the dialogue that encompasses the aforementioned pair of identifiers within the members segment. Please ensure to record the channel name or discussion ID associated with that particular chat.
Locate the folder labeled with the corresponding channel name or discussion ID within the primary export directory. The folder contains numerous JSON files, each corresponding to a certain date when messages were sent.
- It should be noted that a folder will only be included in the export file if there are messages existing within the specified date period that has been exported. For example, in the scenario where the retention policy is configured to remove messages from public channels after a period of 30 days, and the user chooses a date range that exceeds 31 days in the past, the export will not contain any folders pertaining to public channels.
- The ZIP file has many folders, each of which contains distinct data derived from the workspace. The channels directory will consist of a text file for each channel and group direct message in which an individual user has participated. The direct messages (DMs) folder will include a text file including every individual user-to-user conversations in a one-to-one format.
- The naming convention for TXT files containing conversations will be based on either the channel name or the usernames of the people involved in a direct message. As an illustration, the data pertaining to the #generic channel will be stored in a file named general.txt. In the context of direct messaging, it is common to assign a title to the data file, such as “mcollins-jjordan.txt.”
TXT files
Each directory within the compressed ZIP file will encompass distinct datasets derived from your working environment. The “channels” directory will include a text file for each channel and group direct message in which an individual user has participated. The “dms” directory will include a text file documenting each individual user’s direct messages, especially those that involve one-on-one communication.
The naming convention for TXT files containing conversations will be based on either the channel name or the usernames of the people involved in a direct message. As an illustration, the data pertaining to the #generic channel will be stored in a file named general.txt. In an academic context, it is common to assign a specific title to a direct message dataset, such as “mcollins-jjordan.txt.”
In order to access messages from a particular chat, one may perform the below steps:
- Access the channels or direct messages (DMs) directory.
- Access the text file corresponding to the desired channel or direct message for viewing purposes.
Upon accessing the TXT file, the user will be able to observe the chronological record of messages inside the discussion, which is located under the designated section labeled as “Messages.” The message history will encompass all messages sent by the individual user in the export, as well as any messages sent by other participants in the conversation.
Please be aware that updated and deleted messages will only be included in your export file if your retention policy is configured to retain them.
How to read messages
JSON files
Each communication shall consist of the subsequent categories:
- The “type” attribute serves as an indicator that the given data is a message.
- I would like to request that you rewrite my text in a more academic manner.
- The identification number of the individual who transmitted the communication.
- The user’s text is already academic.
- The content of the message in its current form.
- The abbreviation “ts” is commonly used in informal communication to refer to the phrase “that
The timestamp denotes the specific moment at which the message was published. One may utilize an online Unix time converter to convert the given timestamp.
The messages will be recorded in the designated file according to the specific date of their transmission. The following is an example of a concise and straightforward message:
"type": "message", "user": "U2147483697", "text": "Hello, world", "ts": "1355517523.000005" }
Please be aware that certain messages may also have a “attachments” component. The value in question comprises a collection of objects that are associated with the given message.
A helpful suggestion is to utilize the channels.json and users.json files as references for translating the alphanumeric IDs associated with the “channel” and “user” columns.
TXT files
The messages will be shown in chronological order based on their respective timestamps within the chat. The messages encompass the following:
- The timestamp, expressed in Greenwich Mean Time (GMT), indicates the moment at which the message was transmitted.
- The Slack username of the individual responsible for transmitting the message.
- The subject matter of the communication.
The following is an example of a concise message:
[2020-04-20 13:47:27] <jjordan> Welcome to the Sales team channel! Our team is growing faster than ever
The exported file does not distinguish between messages exchanged within a thread and messages delivered to a channel. In the context of a threaded discussion, all messages inside a thread are intermingled with other messages, so contributing to the overall flow of the conversation.
In the context of electronic communication, it is worth noting that the absence of the “@” sign preceding an individual’s display name indicates their mention in a message.
Message subtypes
In addition to the communication exchanged by users inside the Slack platform, there are many subtypes of messages. The aforementioned messages are those that are disseminated by applications, bots, integrations, or the notifications that are displayed when a member becomes part of a channel. Below is a comprehensive compilation of several subtypes of messages:
Type | Description |
bot_message | A message was posted by an app or integration |
me_message | A message was sent with the /me slash command |
message_changed | A message was changed |
message_deleted | A message was deleted |
channel_join | A member joined a channel |
channel_leave | A member left a channel |
channel_topic | A channel topic was updated |
channel_purpose | A channel purpose was updated |
channel_name | A channel was renamed |
channel_archive | A channel was archived |
channel_unarchive | A channel was unarchived |
group_join | A member joined a group |
group_leave | A member left a group |
group_topic | A group topic was updated |
group_purpose | A group purpose was updated |
group_name | A group was renamed |
group_archive | A group was archived |
group_unarchive | A group was unarchived |
file_share | A file was shared in a channel |
file_reply | A reply was added to a file |
file_mention | A file was mentioned in a channel |
pinned_item | An item was pinned in a channel |
unpinned_item | An item was unpinned from a channel |
Saved items, pinned items and reactions
- Messages might include supplementary characteristics that indicate the presence of any type of interaction.
- In the event that the boolean variable “s_starred” evaluates to true, it signifies that a user has chosen to save the corresponding message. If no individual has saved the message, the value in question will not be seen.
- When a message is pinned, users will have the ability to view the identification numbers of the neighboring locations within the “pinned_to” part.
- If the algorithm detects the phrase “reactions,” it will present a full collection of all emoji reactions that have been attached to the message, indicated as “name.” Furthermore, the system will provide the overall tally of individuals who have actively participated in the act of reacting, denoted as “count”, alongside a listing of the particular members who have engaged in said response, designated as “users”.
{ "type": "message", "channel": "C2147483705", "user": "U2147483697", "text": "Hello, world", "ts": "1355517523.000005", "is_starred": true, "pinned_to": ["C024BE7LT", ...], "reactions": [ { "name": "astonished", "count": 3, "users": [ "U1", "U2", "U3" ] }, { "name": "facepalm", "count": 1034, "users": [ "U1", "U2", "U3", "U4", "U5" ] }
Note: v
[2020-04-20 13:47:27] <jjordan> Welcome to the Sales team channel! Our team is growing faster than ever
The exported file does not distinguish between messages exchanged within a thread and messages delivered to a channel. In the context of a threaded discussion, all messages inside a thread are integrated into the conversational flow, interspersed with other messages.
In a message, it is important to note that the mention of an individual does not need the use of the “@” sign preceding their display name.
How to read an edited message
JSON files
- The individual in question
The identification of the individual who implemented the modification. - The “ts” refers to the timestamp, which indicates the specific moment at which the message was changed. One may utilize many online Unix time converters to facilitate the translation of the given timestamp.
The modifications will be recorded in the corresponding date file, documenting the specific date of the update. As an illustration, let us consider the following example:
{ "type": "message", "user": "UTXHL6F8A", "upload": false, "ts": "1590101612.000000", "text": "Hello, this is the message after it was edited.", "previous": { "text": "Hello, this is the original message.", "blocks": [ { "type": "rich_text", "block_id": "Bts", "elements": [ { "type": "rich_text_section", "elements": [ { "type": "text", "text": "Hello, this is the original message." } ] } ] } ] }, "original_ts": "1590101603.000300", "subtype": "message_changed", "editor_id": "UTXHL6F8A", "blocks": [ { "type": "rich_text", "block_id": "O+PJ", "elements": [ { "type": "rich_text_section", "elements": [ { "type": "text", "text": "Hello, this is the message after it was edited." } ] } ] } ] }
- The timestamp indicating the moment at which the message was modified, expressed in Greenwich Mean Time (GMT).
- The individual responsible for the message’s update, as indicated by their username.
- The temporal indicator that denotes the moment at which the initial communication was dispatched.
- The user’s text is already academic and does not require any modifications. The revised message will be shown in the Messages section within the context of the discussion.
As an illustration, consider the following example:
[2020-04-20 13:47:27] <jjordan> updated [2020-04-20 13:47:09] <jjordan> Welcome to the Sales team channel!
How to read a deleted message
JSON files
- The content of the removed message.
- The temporal indicator that denotes the moment at which the message was removed. One may utilize many online Unix time converters to facilitate the translation of the given timestamp.
The act of deleting a message will be recorded in the corresponding date file, documenting the specific date on which the deletion occurred. As an illustration, consider the following example:
{ "type": "message", "user": "UTXHL6F8A", "upload": false, "ts": "1590101824.000000", "text": "", "previous": { "text": "This is a message that has been deleted.", "blocks": [ { "type": "rich_text", "block_id": "ABSkQ", "elements": [ { "type": "rich_text_section", "elements": [ { "type": "text", "text": "This is a message that has been deleted." } ] } ] } ] }, "original_ts": "1590101818.000600", "subtype": "message_deleted", "editor_id": "UTXHL6F8A" }
- The timestamp denoting the precise moment of communication deletion, expressed in Greenwich Mean Time (GMT).
- The individual responsible for the deletion of the communication.
- The temporal indicator that denotes the moment at which the initial communication was dispatched.
- The original mail contains the following material.
The following is an example of a deleted message:
[2020-04-20 13:47:47] <jjordan> deleted [2020-04-20 13:47:42] <jjordan> Last week, we did X in sales!
TXT files
The deleted messages will be located towards the conclusion of the TXT file of a discussion, specifically under the section labeled “Message edits.” The texts that have been removed from the conversation are as follows:
The timestamp denoting the deletion time of the communication, expressed in Greenwich Mean Time (GMT).
The individual responsible for the deletion of the communication.
The temporal indicator that denotes the moment at which the initial communication was dispatched.
The content of the original message.
The following is an example of a deleted message:
[2020-04-20 13:47:47] <jjordan> deleted [2020-04-20 13:47:42] <jjordan> Last week, we did X in sales!
How to view files
JSON files
The JSON format of Slack export files does not include any files originating from the workspace. The export file’s message history JSON files provide a sequence of file links that are associated with the workspace’s files. Please extract the file URLs from the JSON file and thereafter insert them into your web browser in order to access and see the respective files.
The following instructions outline the process of locating a certain file:
Access the directory pertaining to the dialogue inside which the file was disseminated.
Please identify the JSON file that corresponds to the specific date on which the file was shared.
The file link may be found in the message information, namely in the “files:” part.
Please be aware that in the event of a file deletion or the removal of the channel or workspace in which it was shared, the file will no longer be accessible through the file link in your export.
TXT Files
The files directory within the ZIP file comprises the files that have been transmitted by the individual user chosen throughout the export process. The titles of files will be visible in both channels and direct messages as TXT files, integrated inside the conversational context.
[2020-04-20 13:47:27] jjordan shared file(s) F01243S814M
The following instructions outline the process of locating a certain file:
- Access the text file pertaining to the discussion in which the file was exchanged.
- Identify the desired file inside the message history and take note of its related file title, such as “F01243S814M.”
- Access the directory containing the files and proceed to choose the specific file title in order to initiate the opening of such file.