# Choosing among Slack APIs by use case

*Slack Developer Study Guide · Design Your Workflows: Spotlight on Slack's APIs · Last updated October 21, 2026 · https://www.certifyforce.com/study-guide/slack-developer/design-your-workflows-spotlight-on-slacks-apis/choosing-among-slack-apis-by-use-case*

How to pick the right Slack API from the requirement: the Web API to read and act, the Events API to be told, the Status API for Slack's own health, and the Admin, SCIM and Audit Logs APIs for organization administration.

- Certification: Salesforce Slack Developer
- Exam section: Design Your Workflows: Spotlight on Slack's APIs
- Study guide: https://www.certifyforce.com/study-guide/slack-developer

**Official exam objective:**

> Recommend when to implement Slack's different APIs for different use cases.

## What the exam expects

- Recommend the Web API when the app must read data from Slack or change something in it, including reading history that already exists.
- Recommend the Events API when the app must be told that something happened (a message, an App Home visit, an uninstall) instead of polling.
- Recommend the Slack Status API, or its Atom or RSS feed, to monitor Slack's own incidents, outages and maintenance.
- Tell the organization-management APIs apart: the Admin API automates administration, the SCIM API provisions users and groups, and the Audit Logs API feeds security tools with a read-only record of actions.
- Reject distractors that use a push API for history, a monitoring API to make changes, or a provisioning API for channels.

Key terms: **Web API** (HTTP methods at `https://slack.com/api/<method>` that query and change Slack), **Events API** (Slack pushes subscribed events to your app), **app events** (events about your app itself, such as `app_uninstalled`), **Admin API** (Web API methods for administering an Enterprise org), **SCIM** (the provisioning standard identity providers use), **audit event** (a logged user or admin action, never message content).

## Key facts

| Fact | Detail | Source |
|---|---|---|
| Web API purpose | Query information from and enact change in a workspace | [Slack Web API](https://docs.slack.dev/apis/web-api/) |
| Events API direction | Slack calls your app with subscribed events | [The Events API](https://docs.slack.dev/apis/events-api/) |
| Past messages | Read with `conversations.history` and cursor pagination | [conversations.history method](https://docs.slack.dev/reference/methods/conversations.history) |
| App lifecycle events | `app_uninstalled` and `tokens_revoked` need no scopes | [app_uninstalled event type](https://docs.slack.dev/reference/events/app_uninstalled) |
| App Home visit | `app_home_opened`, no scopes required | [app_home_opened event](https://docs.slack.dev/reference/events/app_home_opened) |
| Slack health | Status API `current` and `history` endpoints, unauthenticated | [Slack Status API](https://docs.slack.dev/reference/slack-status-api) |
| Status feeds | Atom and RSS at slack-status.com | [Slack APIs](https://docs.slack.dev/apis/) |
| Admin API | Subset of Web API methods for administering organizations | [Slack APIs](https://docs.slack.dev/apis/) |
| SCIM API | Provisions and manages user accounts and groups | [Using the Slack SCIM API](https://docs.slack.dev/admins/scim-api) |
| Audit Logs API | Read only, no write methods, no message content | [Using the Audit Logs API](https://docs.slack.dev/admins/audit-logs-api) |

## Check yourself

- Why can't an Events API subscription produce a 90-day export of a channel?
- When should a developer choose the SCIM API over the Admin API?
- Which API is tailored for feeding a SIEM tool?
- Why is the Slack Status API, not a Web API method, the right outage monitor?
- Which scopes does an app need to receive `app_uninstalled`?

## Sources

- [Slack APIs](https://docs.slack.dev/apis/)
- [Slack Web API](https://docs.slack.dev/apis/web-api/)
- [The Events API](https://docs.slack.dev/apis/events-api/)
- [Admin resources](https://docs.slack.dev/admins/)
- [Using the Audit Logs API](https://docs.slack.dev/admins/audit-logs-api)
- [Using the Slack SCIM API](https://docs.slack.dev/admins/scim-api)
- [Managing channels](https://docs.slack.dev/admins/managing-channels)
- [Managing app approvals](https://docs.slack.dev/admins/managing-app-approvals)
- [Slack Status API](https://docs.slack.dev/reference/slack-status-api)
- [conversations.history method](https://docs.slack.dev/reference/methods/conversations.history)
- [Pagination](https://docs.slack.dev/apis/web-api/pagination)
- [app_home_opened event](https://docs.slack.dev/reference/events/app_home_opened)
- [app_uninstalled event type](https://docs.slack.dev/reference/events/app_uninstalled)
- [tokens_revoked event](https://docs.slack.dev/reference/events/tokens_revoked)
- [Enterprise Organizations](https://docs.slack.dev/enterprise/)

## About the full unit

The "Core concepts", "Exam traps" and "Worked scenario" sections of this unit, its 6 linked practice questions, and unlimited timed mock exams are included with the Slack Developer pack (USD $19): https://www.certifyforce.com/practice-exams
