Slack app
The status302 Slack app posts your alerts to Slack channels and brings market data into Slack. A workspace is
installed for one organization; its /status302 command reads with that organization’s plan, exactly like the web app
does for a member.
Set up
Section titled “Set up”- In the web app, an owner or admin opens Settings → Integrations and clicks Add to Slack, then picks the workspace on
Slack’s consent page. The app asks to add the
/status302command, post messages (also in public channels it has not joined) and read channel names. - Back in Settings → Integrations, pick a channel under the workspace and click Route alerts here. status302 posts a
“connected” message there and adds a Slack (app) notification channel (
slack_app). Private channels need the app invited first:/invite @status302in the channel. - Route alert rules to that channel in Settings → Notifications / Alerts, like any other channel.
A workspace belongs to one organization at a time. Remove in Settings → Integrations uninstalls the app from the workspace and deletes its alert channels, list feeds and linked accounts. Uninstalling the app from Slack’s side (or revoking its token) does the same. Installs and removals show up in the organization’s activity log.
Link your Slack account
Section titled “Link your Slack account”Read commands work for everyone in the workspace. Commands that change your organization — list feeds — and portfolio act as a
status302 member, so the Slack user running them links their account first:
- In Settings → Integrations, click Link my Slack account. The code (
XXXXX-XXXXX) is single use and expires after 15 minutes. - In Slack, run
/status302 link <code>. The reply is only visible to you.
/status302 unlink (or Unlink me in Settings → Integrations) removes the link.
Commands
Section titled “Commands”| Command | What it does |
|---|---|
/status302 event <query> |
Market snapshot of one event: date, venue, primary floor, TM resale floor, best secondary floor, spread, Δ24h, sales in the last 24 hours and how fresh the data is, with a link to the event page. query is a name or a Ticketmaster, StubHub or viagogo event ID or URL. |
/status302 movers [primary|resale|secondary] [up|down] |
The top 10 movers of the last 24 hours in a market, optionally only rising or falling floors. |
/status302 onsales [days] |
Upcoming public on-sales and presales in the next days (default 7, at most 30), most prominent first. |
/status302 presales [days] |
The same for presales only. |
/status302 mustcops |
Upcoming on-sales of acts whose recent on-sales sold out instantly, soonest first, with the record of the graded picks. Once must cops are published to your organization. |
/status302 predictions [tm|dice] |
Open scalping calls, lowest risk first: risk, entry, the latest resale and its markup. Once the category is published to your organization. |
/status302 portfolio [primary|resale|secondary] |
Your organization’s held tickets valued at a market’s floor: positions, cost, value, P&L, the next 7 days and the positions at risk (linked accounts). |
/status302 watch <list> |
Posts the sales and restocks of a saved list’s events in the current channel (linked owners and admins). |
/status302 unwatch <list> |
Stops a feed in the current channel (linked owners and admins). |
/status302 link <code> / /status302 unlink |
Links or unlinks your Slack account. |
/status302 help |
Lists the commands. |
Snapshots, movers, on-sales, must cops and predictions are posted in the channel; the portfolio, errors and account replies only to you. Data your plan does not include is left out or answered with the plan that includes it. Must cops and predictions are model output, not financial advice: do your own research. Each workspace’s commands are rate limited.
/status302 watch <list> adds two things to your organization, visible in the web app:
- a Slack (app) notification channel for the current channel, which posts a “connected” message;
- an alert rule on the list for market activity — primary sales, primary restocks and resale sales — routed to that channel, with the usual 30-second digest.
Feeds are ordinary alert rules: they count towards your plan’s rule limit and can be tuned or paused in the web app. Deleting the
rule or the channel there ends the feed; /status302 unwatch <list> removes both.
Self-hosting
Section titled “Self-hosting”- At api.slack.com/apps, choose Create New App → From a manifest and paste the repository’s
deploy/slack/manifest.yaml, withhttps://app.example.comreplaced by yourSTATUS302_PUBLIC_URL. It sets the slash command URL (/v1/integrations/slack/commands), the OAuth redirect URL (/v1/integrations/slack/oauth/callback), the Events API URL (/v1/integrations/slack/events) and the bot scopes. - Copy the credentials from Basic Information → App Credentials:
| Variable | Value |
|---|---|
STATUS302_SLACK_CLIENT_ID |
The Client ID |
STATUS302_SLACK_CLIENT_SECRET |
The Client Secret (secret) |
STATUS302_SLACK_SIGNING_SECRET |
The Signing Secret (secret) |
The app is on only when all three are set, and it needs STATUS302_SECRETS_KEY (bot tokens are stored encrypted). Without them,
Settings → Integrations shows the Slack app as not configured and has no Add to Slack. Slack verifies the Events API URL with a
signed challenge when you save it; the API must be running with the signing secret by then. To let workspaces other than your own
install the app, turn on Manage Distribution → Public Distribution.
Requests from Slack are authenticated by their signature (X-Slack-Signature, HMAC-SHA256 under the signing secret) and refused
when the timestamp is more than 5 minutes off.
© 2026 status403 Sp. z o.o.Aleja Solidarności 68/121, 00-240 Warsaw, PolandKRS 0001269943NIP 5253108931Share capital PLN 5,000.00
Registry court: District Court for the Capital City of Warsaw, 12th Commercial Division

