---
title: "Build Slack DM Audiences From Bonusly Awards | Threadly"
description: "Learn how to use Threadly's Bonusly integration to build dynamic Slack DM audiences filtered by who's given or received recognition and awards — evaluated…"
url: "https://www.trythreadly.com/blog/how-to-build-dynamic-slack-segments-with-bonusly"
---

1.  [Home](https://www.trythreadly.com/)
2.  /
3.  [Blog](https://www.trythreadly.com/blog)
4.  /
5.  How to Build Slack DM Audiences From Bonusly Recognition and Awards

ProductivitySeptember 6, 2026·3 min read

# How to Build Slack DM Audiences From Bonusly Recognition and Awards

Learn how to use Threadly's Bonusly integration to build dynamic Slack DM audiences filtered by who's given or received recognition and awards — evaluated live, every time you send.

![Threadly's Bonusly integration for Slack DM audiences built from recognition and award activity](https://play-lh.googleusercontent.com/Oz6ciULd49blK7sF-intnP97j_dHmmMjXLbd6GX7wrCBGZw0c3D6h99T-GR46oEae0e-IzHdUu8mqCJUQZBcLQ=w240-h480-rw)

Someone on your leadership team wants to thank everyone who earned a "Customer Hero" award last quarter. Or HR wants to check in — gently — with anyone who hasn't given a single shoutout in weeks. Either way, the list lives in Bonusly, and getting from "here's who matches" to "here's a Slack DM in their inbox" usually means exporting a report, cross-referencing names against Slack handles by hand, and pasting together a message list. By the time it's done, the data's already a week stale.

Threadly's [Bonusly](https://bonus.ly) integration skips that entirely. It reads recognition and award activity straight out of Bonusly and uses it to build a live Slack DM audience — so "everyone who's given an award" or "everyone who received a Customer Hero recognition" is a filter you set once, not a report you re-run every time you need it.

## Recognition Activity, Not a Spreadsheet

Bonusly already knows who's giving recognition, who's receiving it, and who's earned a specific named award. Threadly turns that into a filter on a [Dynamic Segment](https://www.trythreadly.com/blog/introducing-dynamic-channel-groups) of Slack direct messages — because recognition and awards belong to individual people, not shared channels, this is a DM-specific audience, not a channel-based one.

You can filter on recognition given, recognition received, awards given, awards received, or either — six ways to slice "activity" in total — and layer on a free-text match against a specific award or recognition type, like "Customer Hero" or "peer-to-peer," with an Is or Is-not condition. Stack a few of these together with AND/OR and the audience gets as narrow as you need.

## Why It Doesn't Go Stale

There's no sync job or cached snapshot sitting between your filter and Bonusly. Every time a message is about to go out to a Bonusly-filtered audience, Threadly pulls current users and activity directly from the Bonusly API and evaluates the filter right then — so if someone got recognized ten minutes ago, they're already eligible for the next send.

The matching itself happens by email: Threadly maps each Bonusly user to the corresponding Slack workspace member by email address, on purpose leaving out Slack Connect and shared-channel guests, since there's no reliable way to identify them across organizations. If Bonusly is unreachable or a token's gone stale, that filter just returns no matches instead of breaking the send — the rest of your audience still gets the message.

## What This Looks Like in Practice

-   **Celebrating award winners:** DM everyone who's received a "Customer Hero" award this quarter with a call-out, a perk, or an invite to a recognition event — no manual list-building.
-   **Catching quiet participants early:** Segment by "no recognition given" and send a nudge before disengagement becomes a pattern worth escalating.
-   **Spotlighting top recognizers:** Message everyone who's given recognition or an award and ask them to share what prompted it.
-   **Award-specific outreach:** Use the free-text match to reach everyone who's ever earned a particular award, for a dedicated campaign or survey.

And because it's built on the same filter pattern as Threadly's other integrations, you can combine Bonusly activity with Attio, HubSpot, Planhat, or Featurebase data in the same audience — Bonusly is just one more lens on top of whatever else you already segment by.

## Setting It Up

Connect Bonusly from the Integrations screen in your Threadly dashboard using a Personal Access Token with `user:read`, `recognition:read`, and `awards:read` scopes. Once connected, Bonusly shows up as a filter option on any direct-message Dynamic Segment. It's available now on Threadly's Pro plan.

Questions? We're standing by at **support@trythreadly.com**.

[All posts](https://www.trythreadly.com/blog)Updated September 6, 2026

Threadly

## Transform how your team communicates in Slack

Broadcasts, forms, segments, and workflows — all inside Slack.

[Get started free](https://www.trythreadly.com)

## More from the blog

[![Threadly /sendmessage command for interactive Slack DMs](https://www.trythreadly.com/cms/slack-connect-hero-2x.jpg) — Productivity — Why Your 1:1 Slack DMs Should Have a Button — Most Slack DMs are a dead end — you send something, hope the person acts on it, and follow up a few days later. Here's why adding a button or form to a 1:1 message changes the whole dynamic, and how /sendmessage makes it easy.](https://www.trythreadly.com/blog/why-your-1-1-slack-dms-should-have-a-button) [![How Skio collects feedback, trip info, and anonymous Q&A in Slack with Threadly Forms](https://www.trythreadly.com/threadlyxskio.webp) — Customer Stories — How Skio Collects Feedback, Trip Info, and Anonymous Q&A — All Without Leaving Slack — Skio needed a better way to collect employee feedback, offsite logistics, and anonymous questions — without sending people to a Google Form. Here's how they built it all inside Slack with Threadly Forms.](https://www.trythreadly.com/blog/how-skio-collects-feedback-trip-info-and-anonymous-qa-without-leaving-slack)
