Developer docs
Slack
Support tickets in the channels your team already uses — routed per inbox, with reply, note, assign, snooze and close without leaving Slack.
Connect Slack and tickets show up where your team already works. From a notification you can reply to the customer, add an internal note, assign, snooze or close — without opening ReplyPlex.
Connecting
An org admin goes to Settings → Integrations → Connect Slack and approves the install. One Slack workspace can serve several ReplyPlex workspaces: connect from each one, and each keeps its own routing.
Nothing posts until it’s configured — a fresh install is deliberately silent.
Routing: which tickets go where
Open Configure on the connected row and add rules. Each rule says these events, from this inbox (or all of them), into this channel.
| You want | Set up |
|---|---|
| One channel for everything | One rule, inbox = All inboxes |
| A channel per inbox | One rule per inbox |
| One inbox, two channels | Two rules naming that inbox, each with its own events |
That last one is the useful pattern on a busy mailbox: bad CSAT ratings into somewhere loud, everything else into somewhere quiet.
Two rules pointing at the same channel post once, not twice. conversation.created and
message.created are marked high volume in the picker — on a mailbox with thousands of
tickets they will bury a channel, and a muted channel costs you every other notification too.
message.created (customer reply) and note.added (from your team) are separate
ticks. They’re the same underlying event, but a channel usually wants one and not the other:
seeing your team’s internal notes threaded under a ticket shouldn’t also sign you up for
every inbound reply on a busy mailbox. Rules created before this split keep doing what they
did — they post both until you save the rule again.
What a notification shows
The headline and ticket number, the subject, the first few lines of the customer’s message, and who has it — including a plain Unassigned when nobody does, so two people don’t pick up the same ticket. A coloured bar down the left marks it: red for urgent or a bad rating, grey once it’s closed.
The quote is per rule. If you’d rather no customer text appeared in a particular channel, untick Quote the message on that rule and the card carries everything else.
One ticket, one thread
A ticket’s first notification opens a thread; every later update replies inside it, as a single line rather than a repeat of the whole card. The original card keeps showing the ticket — its subject and the customer’s opening message — however much activity happens underneath it. When the ticket closes, the original message is rewritten so its buttons stop offering to close something already closed.
If a ticket has been quiet for more than a week, its next update starts a new message instead of replying into the old thread — a thread nobody is following raises no unread on the channel, which is exactly the ticket you’d want to see come back.
Acting on a ticket
Each notification carries Assign to me, Reply, Note, Close, Open, and an overflow menu with Snooze (1 day, 3 days, 1 week).
- Reply emails the customer from that ticket’s own inbox.
- Note is internal — the customer never sees it. The composer says which is which.
Everything runs through the same code the console uses, as you: your role’s permissions apply, the sending-domain check applies, automations fire, and the ticket timeline records it as “Your Name · via Slack”.
Replies from Slack skip the undo window. That window exists so you can catch a mistake in a composer you’re still looking at; from Slack there is no such screen, so a hold would only be an unexplained delay before the customer hears from you.
Connecting your own account
The first time you use an action, connect your account: Connect account on the app’s Home
tab, or /replyplex link. You sign in once.
This is deliberate rather than matching on the email address Slack reports. That address is one Slack asserts, and a guest or Slack Connect account in a shared channel whose email happened to match an agent’s would otherwise inherit that agent’s permissions.
If you belong to more than one ReplyPlex workspace, sign into each and open the link again.
Commands
| Command | Does |
|---|---|
/replyplex assigned | Your open tickets, across every workspace you’ve connected |
/replyplex search <words> | Find a ticket by subject |
/replyplex 4821 | Open a ticket by its number |
/replyplex new | Start a ticket from Slack |
/replyplex link | Connect your account, or check that it is |
/replyplex unlink | Disconnect it again |
/replyplex help | The list |
Or just message the bot — see below.
Search matches subjects only. Message bodies are customer content, and a channel is the wrong place to surface them from a one-word query.
Everything you see through Slack is scoped to the inboxes you’re a member of — the same inboxes you can open in ReplyPlex, no more.
Starting a ticket from Slack
On any Slack message, open the ⋯ menu → Create ticket. You pick the inbox, the
customer’s email and a subject; the message is prefilled as the body. It’s an ordinary
outbound ticket, so it emails the customer and your role’s permissions and the
sending-domain check apply exactly as they do in the console.
Your Home tab
Open ReplyPlex in the Slack sidebar. The Home tab lists your own open tickets — subject, customer and status, with a Reply button on each — plus which channels this workspace is posting to.
Talking to the bot
Open ReplyPlex in your Slack sidebar and use the Messages tab. Plain language works:
- “show my tickets” · “what’s assigned to me” · “mine”
- “anything about refunds” · “find licence key” — or just type what you’re looking for
- “connect my account”
- “what can you do”
Slash commands still work everywhere. This is for the days you don’t remember them.
Pasted links expand
Paste a ticket URL into any channel and it expands to show the subject, inbox and status — not the customer’s name or address, since a link can be pasted anywhere. It only expands for someone who has connected their account and belongs to that inbox; for anyone else the link stays a plain link.
Direct messages
You get a DM, as well as any channel post, when:
- a ticket is assigned to you by someone else
- someone @mentions you in an internal note
A channel reaches everyone except, reliably, the person it concerns. Nothing to configure — these don’t depend on your admin’s channel rules, and neither fires when you did the thing yourself.
Removing it
Uninstalling from Slack disables the connection automatically, rather than leaving ReplyPlex posting against a dead token. Your routing rules survive, so reinstalling picks up where you left off.