Slack App Rate-Limit Tier & Capacity Planning Prompt
Model a Slack app's request budget across method tiers, size fan-out and polling under per-workspace limits, and design a token-bucket schedule that never trips 429s.
- Target user
- SREs and backend engineers scaling Slack apps across many channels or workspaces
- Difficulty
- Advanced
- Tools
- Claude, ChatGPT, Cursor
The prompt
You are a capacity-planning SRE who has scaled Slack apps and knows Slack's tiered rate limits (Tier 1 ~1/min, Tier 2 ~20/min, Tier 3 ~50/min, Tier 4 ~100/min, plus the special chat.postMessage ~1/sec/channel and Events API per-app posting limits). I will provide: - The methods the app calls and their frequency (steady-state + bursts) - Scale parameters (channels, users, workspaces, events/sec inbound) - The workload shape (real-time alerts, backfills, digests, polling) - SLOs (max notification latency, acceptable drop/retry rate) Your job: 1. **Classify every call** — map each method to its tier and per-window budget; flag the low-tier methods (Tier 1/2) that dominate the risk. 2. **Build the budget model** — for each method compute demand vs limit at target scale (requests/min needed, headroom %, time-to-exhaust during a burst). Present as a table with a red/amber/green column. 3. **Fan-out & polling design** — replace tight loops with a token-bucket / leaky-bucket scheduler; size the bucket to the method tier, add jitter to de-synchronize workers, and prefer batched surfaces (a single threaded message + reactions over N DMs) where possible. 4. **Backoff strategy** — exponential backoff honoring Retry-After, a shared limiter across pods (Redis token bucket) so one token's budget isn't multiplied by replicas, and a dead-letter/queue for overflow. 5. **Reduce demand** — replace polling conversations.history with the Events API / Socket Mode; coalesce chat.update progress edits; cache users.info and conversations.info aggressively. 6. **Validation** — a load-test plan that ramps to target scale, asserts the 429 rate stays ~0, and measures notification latency against SLO. Output: (a) method→tier classification table, (b) budget model with headroom, (c) shared token-bucket design (with Redis pseudocode), (d) demand-reduction checklist, (e) load-test plan and success metrics. Prefer eliminating calls over pacing them; the cheapest request is the one you never make.
Run this prompt with AI
Test it, get an AI-improved version, or compare models — live in the Prompt Workspace. No copy-paste.
Related prompts
-
Slack Block Kit Modal Input Validation & Error Display Prompt
Design server-side validation for Block Kit modals — response_action errors, per-input error keying, cross-field rules, and re-render UX that never loses user input.
-
Slack Confirmation Dialog Design for Destructive ChatOps
Design Block Kit confirm objects and two-step guards for destructive ChatOps buttons (deploy, restart, delete, scale-to-zero) so a single misclick can never fire a production action.
-
Slack Live Progress Bar with chat.update Prompt
Render a single self-updating Slack message that shows live progress for a long-running deploy or job, using chat.update against a stored ts instead of spamming the channel with per-step posts.
-
Slack response_url Delayed Follow-up Design Prompt
Use the response_url from slash commands and interactive payloads to send delayed follow-up messages after the 3-second ack, respecting its 30-minute / 5-use lifecycle instead of leaking it or letting long work time out.
More Slack prompts & error guides
Browse every Slack prompt and troubleshooting guide in one place.
Reading prompts? Get all 500 in one free PDF
500 battle-tested, copy-paste AI prompts engineered by a senior systems engineer — every one with fill-in placeholders and safety/back-out notes. Drop your email and it's yours.
- 500 prompts: Linux · Kubernetes · Terraform · OpenStack · GitLab · Docker · Monitoring · Incident Response
- Instant PDF download — yours free, forever
- Plus one practical AI-workflow email a week (no spam)
Single opt-in · unsubscribe anytime · no spam.