> For the complete documentation index, see [llms.txt](https://docs.usepylon.com/pylon-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.usepylon.com/pylon-docs/integrations/chat/slack.md).

# Slack

Connect Pylon with Slack to automatically track customer conversations and receive notifications.

## Setup

Go to **Settings > Integrations** and click the Slack integration to install the app.

### Who can install

* **In Pylon**, you need the Admin role (or a custom role that can install apps). See [Roles and User Management](/pylon-docs/platform/roles-and-user-management.md).
* **In Slack**, you need permission to install apps in the workspace. If your workspace requires app approval, a Slack Workspace Owner or Admin must install or approve Pylon.

### Multiple Workspaces

Pylon can track customer messages across multiple Slack workspaces! Just connect each workspace individually with **Add Workspace** and [enable Pylon in the relevant channels](/pylon-docs/getting-started/channel-configuration.md). On Enterprise Grid, install Pylon in each workspace; an org-wide install isn't supported.

For example, if you have a [Slack Community](/pylon-docs/integrations/chat/slack/slack-community.md), Pylon can track common user questions!

### Permissions Pylon requests

When you install Pylon in a workspace, the Pylon bot asks for these Slack scopes:

| What it's used for                                                            | Scopes                                                                                                                                                                                                   |
| ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Read messages and mentions in channels Pylon is added to                      | `channels:history`, `groups:history`, `im:history`, `app_mentions:read`, `metadata.message:read`, `channels:read`, `groups:read`, `mpim:read`                                                            |
| Post replies, confirmations, files, and reactions                             | `chat:write`, `chat:write.customize`, `chat:write.public`, `im:write`, `files:read`, `files:write`, `remote_files:read`, `remote_files:write`, `remote_files:share`, `reactions:read`, `reactions:write` |
| Create channels, add people to channels, and manage Slack Connect invitations | `channels:manage`, `channels:join`, `groups:write`, `conversations.connect:read`, `conversations.connect:write`, `conversations.connect:manage`                                                          |
| Channel bookmarks                                                             | `bookmarks:read`, `bookmarks:write`                                                                                                                                                                      |
| Link previews for Pylon links                                                 | `links:read`, `links:write`                                                                                                                                                                              |
| Match Slack users to contacts and teammates                                   | `users:read`, `users:read.email`, `usergroups:read`, `team:read`, `emoji:read`                                                                                                                           |
| Message shortcuts                                                             | `commands`                                                                                                                                                                                               |

When a teammate [connects their own Slack account](#connected-account), Pylon asks only for `chat:write`, `files:write`, `im:read`, `mpim:read`, `reactions:read`, and `reactions:write` on their behalf.

## How Slack conversations become issues

Pylon only reads channels it has been [enabled in](/pylon-docs/getting-started/channel-configuration.md). In those channels, customer messages become issues. Your [ticketing mode](/pylon-docs/integrations/chat/slack/support-ticket-flow.md#ticketing-modes) decides which of them are also tickets.

### Customers vs. your team

* Only customer messages start a new issue. A teammate's message never starts one on its own, but a teammate can open a ticket by @mentioning the Pylon bot or reacting with 🎫.
* Pylon treats someone as a teammate if their email is on your company's domain, or if they're in your Slack workspace and are an active Pylon user. Anyone else, including single-channel guests in your workspace, counts as a customer.
* Messages from other bots are hidden unless you [allowlist the bot](#allowlisted-bots).

### New top-level messages

When a customer posts a new message in the channel (not in a thread), Pylon uses AI to decide whether it continues the channel's most recent conversation or starts a new issue. It always starts a new issue when the most recent one:

* is a ticket,
* was closed more than 24 hours ago, or
* had moved into a thread, and the customer is now posting back in the channel.

With **Track all threads as tickets**, every top-level customer message becomes its own ticket.

### Thread replies

* A reply in a thread joins the issue of the thread's first message, even if that issue is closed.
* If the first message isn't tracked yet, a customer reply creates a new issue that includes the whole thread. A teammate's reply doesn't.
* Your team's replies in a customer thread show on the issue as replies. In [internal channels](/pylon-docs/getting-started/channel-configuration.md#enable-an-internal-channel), thread replies are added as internal notes.

### Replies after an issue is closed

* **Customer reply in the same thread:** the same issue reopens and moves to **On you**. There's no time limit. If AI reads the reply as a sign-off (for example, "Thanks, that fixed it"), the issue stays closed.
* **Teammate reply:** never reopens a closed issue.
* **New top-level message:** a closed ticket is never reopened this way, so the message starts a new issue. A closed conversation can be picked up again within 24 hours if AI decides the message is a follow-up; after that, it's a new issue.

{% hint style="warning" %}
Reopening on a reply depends on **Automatically set issue status with AI** in **Settings > Issue data > Statuses**. If it's off, messages don't change an issue's status, so a closed issue stays closed until someone reopens it or a trigger does. See [AI status settings](/pylon-docs/support-workflows/issues/statuses.md#ai-status-settings).
{% endhint %}

Customers can also reopen a ticket with the **Reopen Ticket** button. See [Support Ticket Flow](/pylon-docs/integrations/chat/slack/support-ticket-flow.md#closing-and-reopening-a-ticket).

### Edits and deletes

Editing a Slack message updates it in Pylon. Deleting a Slack message removes it from the issue; if no messages are left, the issue is deleted.

## Replying from Pylon

When you reply to a Slack issue from Pylon, the message appears in the customer's thread:

* **As you**, if you've [connected your Slack account](#connected-account) for that workspace and you're a member of the channel.
* **As the Pylon bot with your name and avatar**, otherwise. This includes when you haven't connected Slack, aren't in the channel, or connected a different workspace.
* **As your alias**, if you picked one under **Settings > Profile > Send external messages as**. Aliased replies always go through the Pylon bot.

There is no per-reply toggle. Reactions you add from Pylon follow the same rule. If your connected Slack account stops working, Pylon asks you to reconnect it before the reply can be sent.

Automated messages, such as ticket confirmations, use the [bot display name](#bot-display-name).

## Integration Settings

Open **Settings > Integrations** and click Slack.

### Connected workspaces

Lists every Slack workspace connected to Pylon. Click **Add Workspace** to connect another.

### Connected account

Click **Connect Account** to link your own Slack account so replies you send from Pylon [post as you](#replying-from-pylon). Any Pylon user can do this. In the Slack window, choose a workspace that's already connected to Pylon. Each Slack account can be linked to only one Pylon user. Click **Disconnect** to unlink it.

If Pylon needs updated permissions, a banner asks you to **Reauthorize**.

### Bot display name

Rename the Pylon bot. The bot sends messages such as ticket confirmations under this name. Only the name can be changed, not the avatar.

### Allowlisted bots

Bot messages are hidden in Pylon unless the bot is allowlisted. Click **Add Bot** to pick an app or add one by ID:

* An **app ID** (starts with `A`) allows all of that app's bots in one workspace.
* A **bot ID** (starts with `B`) allows one specific bot, such as a partner's bot in a shared channel.

Turn on **Counts as customer** to treat the bot's messages as customer activity. When it's off, the bot's replies on existing conversations still appear in Pylon as your team's activity, but its new messages won't create conversations.

### External channel visibility

Turn on **Hide external Slack channels internally** to keep customer-shared channels out of internal channel pickers, such as when you create internal threads or configure triggers. Add channels under **Allowlisted channels** to keep showing them.

## Usage

{% hint style="info" %}
Messages from Slack are automatically sent to Pylon’s [Views](/pylon-docs/support-workflows/issues/views.md) and [Internal Threads](/pylon-docs/integrations/chat/slack/editor.md) for tracking and response.
{% endhint %}

### Customer Slack Channels

{% hint style="info" %}
Pylon can track messages in public or private channels, as well as Slack Connect channels initiated by your customer.
{% endhint %}

Pylon watches for customer issues in connected customer Slack channels and automatically bundles together relevant messages and creates tracked issues within Pylon.

<figure><img src="https://982123570-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9hXBoCTTNw5flARlUVJf%2Fuploads%2Fkt4KaefyMPLHrCcKXVTb%2FCleanShot%202024-09-29%20at%2013.49.00%402x.png?alt=media&amp;token=a5ab89ca-59bf-44d4-9587-455161550873" alt="" width="563"><figcaption><p>Customer question in Slack</p></figcaption></figure>

<figure><img src="https://982123570-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9hXBoCTTNw5flARlUVJf%2Fuploads%2FGbkJAZTVtRZTMy47w25K%2FCleanShot%202024-09-29%20at%2013.46.59.png?alt=media&amp;token=43aed9e5-79db-44a9-8571-58a301151af0" alt="" width="460"><figcaption><p>Tracked issue in Pylon</p></figcaption></figure>

### Internal Collaboration

With [Internal Threads](/pylon-docs/integrations/chat/slack/editor.md), Pylon gives your team an internal place to collaborate on customer issues and take quick actions directly in Slack.

This allows users without Pylon access to collaborate on issues without leaving Slack while still syncing the conversation across Slack and Pylon.

<figure><img src="https://982123570-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9hXBoCTTNw5flARlUVJf%2Fuploads%2FfKjsPQrsU8ZvsOP2tAwQ%2FCleanShot%202024-09-29%20at%2013.58.59.png?alt=media&amp;token=ac157e89-1be8-40af-a9b5-52d33d16fd87" alt="" width="441"><figcaption></figcaption></figure>

### Message Shortcuts

Open the **⋮** menu on any Slack message (choose **More message shortcuts…** the first time):

* **View in Pylon**: open the Pylon issue the message belongs to.
* **Sync internal thread**: sync an internal Slack thread to a Pylon issue. See [Internal Threads](/pylon-docs/support-workflows/issues/internal-threads.md).
* **Sync direct message**: sync a direct message into Pylon. See [Internal Channels and DMs](/pylon-docs/account-intelligence/accounts/internal-channels-and-dms.md).

### Link Previews

Links to Pylon issues, accounts, contacts, opportunities, feature requests, projects, tasks, teams, and users unfurl into a preview card when shared in internal channels. They never unfurl in customer channels or channels shared with another company. Links to knowledge base articles on your Pylon-hosted help center unfurl in any channel.

### Workflows

Pylon has lots of customizations on how your team and customers can engage in support, onboarding, and other workflows through Slack.

Examples include:

* [Customizing the in-Slack experience when a customer opens a ticket](/pylon-docs/integrations/chat/slack/support-ticket-flow.md), like sending a confirmation or follow-up message
* [Welcoming new customer users](/pylon-docs/integrations/chat/slack/welcome-message.md) when they join a channel
* Automatically setting [bookmarks](/pylon-docs/integrations/chat/slack/bookmarks.md) in Slack channels for quick links to documentation, tutorials, onboarding guides, etc.
* [Collecting structured fields](/pylon-docs/integrations/chat/slack/collect-data.md), like the priority of an issue, when a customer raises an issue from Slack
* Easily [add new team members](/pylon-docs/integrations/chat/slack/onboard-employees.md) to subsets of your customer channels
* Getting alerted when [customers join or leave](/pylon-docs/integrations/chat/slack/left-company.md) a channel

### Use of AI

Pylon uses AI technology, which may occasionally generate inaccurate or incomplete responses. Users should verify important information and use their judgment when relying on AI-generated content.

### Privacy Policy

See <https://usepylon.com/privacy> for our privacy policy, including how we use Slack data.


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.usepylon.com/pylon-docs/integrations/chat/slack.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
