> For the complete documentation index, see [llms.txt](https://docs.coupler.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.coupler.io/sources/category/project-management/slack/data-overview.md).

# Data Overview

Coupler.io pulls three types of data from Slack: messages from channels or searches, channel metadata, and user profiles. Here's what's available in each entity.

## Entities

| Entity   | What it contains                                                                         |
| -------- | ---------------------------------------------------------------------------------------- |
| Messages | Text content, timestamps, authors, and reactions for messages matching your search query |
| Channels | Channel names, IDs, member counts, topics, and creation dates                            |
| Users    | User profiles including name, email, role, timezone, and status                          |

## Messages

#### Message fields

| Field         | Description                                        |
| ------------- | -------------------------------------------------- |
| `ts`          | Timestamp of the message (Unix format)             |
| `text`        | Full text content of the message                   |
| `user`        | User ID of the message author                      |
| `username`    | Display name of the author                         |
| `channel`     | Channel where the message was posted               |
| `type`        | Message type (e.g., `message`)                     |
| `permalink`   | Direct link to the message in Slack                |
| `reactions`   | Emoji reactions attached to the message            |
| `reply_count` | Number of thread replies                           |
| `attachments` | Metadata about file attachments (not file content) |

{% hint style="warning" %}
Coupler.io exports attachment **metadata** (file name, type, URL) but not the actual file content or images. Thread replies are not automatically included — use a focused search query to capture threaded messages.
{% endhint %}

## Channels

#### Channel fields

| Field         | Description                     |
| ------------- | ------------------------------- |
| `id`          | Unique channel ID               |
| `name`        | Channel name                    |
| `is_private`  | Whether the channel is private  |
| `num_members` | Current member count            |
| `topic`       | Channel topic text              |
| `purpose`     | Channel purpose/description     |
| `created`     | Channel creation timestamp      |
| `is_archived` | Whether the channel is archived |

## Users

#### User fields

| Field         | Description                              |
| ------------- | ---------------------------------------- |
| `id`          | Unique user ID                           |
| `name`        | Slack username (handle)                  |
| `real_name`   | Full display name                        |
| `email`       | User email address                       |
| `is_admin`    | Whether the user is a workspace admin    |
| `is_bot`      | Whether the user is a bot account        |
| `tz`          | User's timezone                          |
| `title`       | Job title from profile                   |
| `status_text` | Current status message                   |
| `deleted`     | Whether the account has been deactivated |

## Common field combinations

* **Message activity dashboard:** `channel`, `username`, `ts`, `text`, `reply_count`, `reactions`
* **Channel health report:** `name`, `num_members`, `topic`, `is_archived`, `created`
* **Team directory:** `real_name`, `email`, `title`, `tz`, `is_admin`, `is_bot`
* **Bot vs. human breakdown:** `is_bot`, `name`, `deleted` from the Users entity

## Use cases by role

{% tabs %}
{% tab title="Team leads" %}

* Export messages from project channels to review discussion history or create searchable archives.
* Track reply counts and reactions to identify high-engagement messages or team blockers.
* Use the Append transformation to combine messages from multiple channels into a single report.
  {% endtab %}

{% tab title="HR & People Ops" %}

* Pull the Users entity to maintain an up-to-date team directory in Google Sheets.
* Filter out bot accounts using the `is_bot` field to get accurate headcount numbers.
* Join Users data with HR system exports to cross-reference Slack handles with employee records.
  {% endtab %}

{% tab title="Analysts" %}

* Use message timestamps and channel data to analyze communication volume over time.
* Send Slack conversation exports to ChatGPT or Claude for AI-powered summarization or sentiment tagging.
* Aggregate message counts by channel or user to build activity dashboards in Looker Studio or BigQuery.
  {% endtab %}
  {% endtabs %}

## Platform-specific notes

* The Messages entity requires a **User OAuth token** — bot tokens do not support `search:read` and will not return message data.
* Slack's search API returns results in relevance order by default; use modifiers like `before:` and `after:` with the date picker to define time ranges.
* Private channel messages are only accessible if the token owner is a member of that channel.
* Bot-posted messages may not appear in search results depending on how the bot posted them (e.g., using `chat.postMessage` vs. webhooks).
* The `attachments` field contains link and metadata information — Coupler.io does not download or store actual files or images from Slack.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.coupler.io/sources/category/project-management/slack/data-overview.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
