# Admin API methods for org automation

*Slack Developer Study Guide · APIs for Managing Your Slack · Last updated October 21, 2026 · https://www.certifyforce.com/study-guide/slack-developer/apis-for-managing-your-slack/admin-api-methods-for-org-automation*

When an app built on the admin.* Web API methods should replace clicks in the admin dashboard: app approvals with app_requested, invite requests, session resets, workspace invites, channel placement, IdP group allowlists and defaults, and the analytics file.

- Certification: Salesforce Slack Developer
- Exam section: APIs for Managing Your Slack
- Study guide: https://www.certifyforce.com/study-guide/slack-developer

**Official exam objective:**

> Recommend when an Admin API could be used to automate Slack workspace and/or org administration.

## What the exam expects

- Recommend an Admin API app when an Enterprise org's admins repeat a dashboard task (approving apps or invites, resetting sessions, inviting members, placing channels) across many workspaces.
- Design an app-approval app: `admin.apps:write`, the `app_requested` event, `admin.apps.approve` and `admin.apps.restrict`, and what the install changes for admins.
- Pick the right `admin.*` family for a requirement: `admin.inviteRequests.*`, `admin.users.session.reset`, `admin.users.invite`, `admin.conversations.restrictAccess.*`, `admin.conversations.setTeams`, `admin.usergroups.addChannels`, `admin.analytics.getFile`.
- Spot the requirement that belongs to another API (SCIM, Audit Logs, Discovery) or to no API at all.

Key terms: **Admin API** (Web API methods prefixed `admin.` for managing an Enterprise org); **org-level install** (OAuth install on the whole Enterprise org, which is the only way to get `admin.*` scopes); **app management app** (an app with `admin.apps:write` subscribed to `app_requested`); **IdP group** (a group of users synced from the identity provider); **allowlist** (IdP groups whose members alone can access a private channel).

## Key facts

| Fact | Detail | Source |
|---|---|---|
| Where admin scopes come from | OAuth install on the entire Enterprise org by an Org Admin or Org Owner, not a workspace | [admin.apps.approve](https://docs.slack.dev/reference/methods/admin.apps.approve) |
| App management app | `admin.apps:write` plus an `app_requested` subscription | [Managing app approvals](https://docs.slack.dev/admins/managing-app-approvals/) |
| Effect of installing it | Approve apps on in every workspace; App Management UI replaced | [Managing app approvals](https://docs.slack.dev/admins/managing-app-approvals/) |
| Restore the UI | Revoke the app's token or uninstall it | [Trailhead: Admin and Audit Logs APIs](https://trailhead.salesforce.com/content/learn/modules/slack-apis-for-automating-and-managing-your-org/get-to-know-the-admin-and-audit-logs-apis) |
| Approve without scope lists | All requested scopes granted, optional ones included | [admin.apps.approve](https://docs.slack.dev/reference/methods/admin.apps.approve) |
| `admin.users.invite` required arguments | `team_id`, `email`, `channel_ids` (at least one channel) | [admin.users.invite](https://docs.slack.dev/reference/methods/admin.users.invite) |
| Session reset scope | `mobile_only` or `web_only`; default resets all sessions | [admin.users.session.reset](https://docs.slack.dev/reference/methods/admin.users.session.reset) |
| Invite request automation | `invite_requested` event plus `admin.inviteRequests.*`; needs `admin.invites:write` to approve | [invite_requested event](https://docs.slack.dev/reference/events/invite_requested), [admin.inviteRequests.approve](https://docs.slack.dev/reference/methods/admin.inviteRequests.approve) |
| Private channel allowlist | `admin.conversations.restrictAccess.addGroup` with an IdP `group_id` | [restrictAccess.addGroup](https://docs.slack.dev/reference/methods/admin.conversations.restrictAccess.addGroup) |
| IdP group default channels | `admin.usergroups.addChannels`, up to one hundred | [usergroups.addChannels](https://docs.slack.dev/reference/methods/admin.usergroups.addChannels) |
| Analytics file | Compressed JSON, member or public channel, rolling 13 months | [admin.analytics.getFile](https://docs.slack.dev/reference/methods/admin.analytics.getFile) |

## Check yourself

- Why must an Admin API app be installed on the Enterprise org rather than a workspace?
- When an app with `admin.apps:write` subscribed to `app_requested` is installed, what changes for admins?
- Why does an `admin.users.invite` call with only `team_id` and `email` fail?
- When should a security tool call `admin.users.session.reset` with `mobile_only`?
- Which method sets default channels for an IdP group?

## Sources

- [Manage your Enterprise organization with APIs](https://slack.com/help/articles/1500003875981-Manage-your-Enterprise-organization-with-APIs)
- [Managing app approvals](https://docs.slack.dev/admins/managing-app-approvals/)
- [Learn to Utilize Admin and Audit Logs APIs for Efficiency](https://trailhead.salesforce.com/content/learn/modules/slack-apis-for-automating-and-managing-your-org/get-to-know-the-admin-and-audit-logs-apis)
- [Admin resources](https://docs.slack.dev/admins/)
- [admin.apps.approve method](https://docs.slack.dev/reference/methods/admin.apps.approve)
- [app_requested event](https://docs.slack.dev/reference/events/app_requested)
- [admin.users.session.reset method](https://docs.slack.dev/reference/methods/admin.users.session.reset)
- [admin.users.invite method](https://docs.slack.dev/reference/methods/admin.users.invite)
- [admin.inviteRequests.approve method](https://docs.slack.dev/reference/methods/admin.inviteRequests.approve)
- [invite_requested event](https://docs.slack.dev/reference/events/invite_requested)
- [admin.conversations.restrictAccess.addGroup method](https://docs.slack.dev/reference/methods/admin.conversations.restrictAccess.addGroup)
- [admin.conversations.setConversationPrefs method](https://docs.slack.dev/reference/methods/admin.conversations.setConversationPrefs)
- [admin.conversations.setTeams method](https://docs.slack.dev/reference/methods/admin.conversations.setTeams)
- [admin.usergroups.addChannels method](https://docs.slack.dev/reference/methods/admin.usergroups.addChannels)
- [admin.analytics.getFile method](https://docs.slack.dev/reference/methods/admin.analytics.getFile)
- [admin.teams.list method](https://docs.slack.dev/reference/methods/admin.teams.list)

## About the full unit

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