Design for Scale9% of the exam

Org-ready apps and global IDs in Enterprise orgs

How an app becomes org-ready and is installed once by an Org Admin, how it tracks granted workspaces and passes team_id, and how it handles global user IDs, enterprise_id, shared-channel events and workspace migration.

Official exam objective
Design your app to match the unique platform architecture, features, and roles of Enterprise Grid.

~8 min read · 11 practice questions ·

What the exam expects

  • Make an app org-ready (bot scope, Org Level Apps opt-in, org_deploy_enabled) and describe how an Org Admin installs it and grants it to workspaces.
  • State what an org-level install does and does not give an app, and when one is required (custom steps for Workflow Builder, Deno apps).
  • Track granted workspaces with team_access_granted, team_access_revoked and auth.teams.list, and pass team_id with an org-wide token.
  • Handle global user IDs and members of other workspaces: users.info lookups, escaped slash command mentions, enterprise_id grouping, and single event delivery with source_team.
  • Prepare an app for a workspace migrating into an org (grid_migration_* events, backoff, migration.exchange, translation layer).

Key terms: Enterprise organization (two or more workspaces in one org; the exam's "Enterprise Grid organization"); org-ready app (opted in with org_deploy_enabled, installed once for the org); global user ID (one ID per person across the org, starting with U or W); enterprise_id (the constant org ID returned by API methods); translation layer (a temporary setting that maps global IDs back to pre-migration local IDs).

Key facts

Org Level Apps prerequisite
Detail
At least one bot scope, then Opt-In sets org_deploy_enabled: true
Who approves an org install
Detail
An Org Admin, via a direct message from Slack, then adds workspaces
Workspaces added at org install
Detail
None; Org Admins grant some or all later
Extra privileges from org install
Detail
None compared with a workspace-level install
Custom steps for Workflow Builder
Detail
Require an org-ready app installed at org level
auth.teams.list
Detail
Approved workspaces; no scopes required; default limit 100
team_id with an org token
Detail
Required by conversations.list, users.list and others; ignored for single-workspace tokens
Global user ID prefix
Detail
U or W; the prefix means nothing
Shared-channel messages
Detail
One event per message; origin in source_team
Sources for this section (3)
  • Why must an Org Admin act after approving an org-level install?
  • When does an org-ready app need to pass `team_id`?
  • Which events tell an org-ready app it gained or lost a workspace?
  • What should an app do with stored local IDs after its workspace joins an org?

The questions are free to read. Answers with their sources and self-grading are included with the pack.

Keep reading with the Slack Developer pack

  • Core concepts
  • Exam traps
  • Worked scenario

The pack includes:

  • All 38 lessons of the Slack Developer guide, with reading progress
  • Interactive decision walks and step-by-step sequence steppers
  • Inline practice questions and one-click topic practice (11 questions for this lesson)
  • An official source cited for every claim
  • An AI tutor that answers from the guide
  • Unlimited timed practice exams

Practice for the Slack Developer exam