Slack.Web.Admin.Apps (SlackKit v1.0.0-alpha.0)

View Source

Summary

Functions

Approve an app for installation on a workspace.

Restrict an app for installation on a workspace.

Uninstall an app from one or many workspaces, or an entire enterprise organization.

Functions

approve(optional_params \\ %{})

Approve an app for installation on a workspace.

API reference

Rate limit: Tier 2: 20+ per minute
Scopes:

View on docs.slack.dev ↗

Optional Params

  • app_id - The id of the app to approve. Either app_id or request_id is required. ex: A12345
  • bot_scopes - Bot scopes to approve for the app. You can approve a set of scopes by providing user_scopes or bot_scopes. ex: emoji:read,pins:read
  • enterprise_id - The ID of the enterprise to approve the app on. Exactly one of the team_id or enterprise_id arguments is required, not both. ex: E12345
  • request_id - The id of the request to approve. Either app_id or request_id is required. ex: Ar12345
  • team_id - The ID of the workspace to approve the app on. Exactly one of the team_id or enterprise_id arguments is required, not both. ex: T12345
  • user_scopes - User scopes to approve for the app. You can approve a set of scopes by providing user_scopes or bot_scopes. ex: emoji:read,pins:read

Errors the API can return:

  • app_management_app_not_installed_on_org - The app management app must be installed on the org.
  • app_restricted_org_wide - The app is already restricted org wide.
  • custom_integration_not_allowed_at_enterprise - Returned when the install request is for custom integration app.
  • feature_not_enabled - Returned when the Admin APIs feature is not enabled for this team
  • invalid_app_id - The app_id passed is invalid.
  • invalid_request_id - The request_id passed is invalid.
  • invalid_scopes - Some of the provided scopes do not exist
  • not_an_admin - This method is only accessible by org owners and admins
  • org_resolution_required - The team_id is in an Enterprise org while app_id is certified.
  • request_already_resolved - The app request has already been resolved
  • request_id_or_app_id_is_required - Must include a request_id or app_id
  • request_id_required_for_custom_integrations - A request_id is required for custom integrations
  • team_not_found - Returned when team id is not found.
  • too_many_ids_provided - Please provide only app_id OR request_id
  • too_many_teams_provided - Please provide only team_id OR enterprise_id

See the Common Errors guide for errors returned by every Web API method.

clear_resolution(app_id, optional_params \\ %{})

Clear an app resolution

API reference

Rate limit: Tier 2: 20+ per minute
Scopes:

View on docs.slack.dev ↗

Required Params

  • app_id - The id of the app whose resolution you want to clear/undo. ex: A12345

Optional Params

  • enterprise_id - The enterprise to clear the app resolution from. Exactly one of the team_id or enterprise_id arguments is required, not both. ex: E12345
  • team_id - The workspace to clear the app resolution from. Exactly one of the team_id or enterprise_id arguments is required, not both. ex: T12345

Errors the API can return:

  • app_management_app_not_installed_on_org - The app management app must be installed on the org.
  • feature_not_enabled - Returned when the Admin APIs feature is not enabled for this team
  • invalid_app_id - The app_id passed is invalid.
  • no_resolution_found - No existing resolutions were found for the given team and app_id.
  • not_an_admin - This method is only accessible by org owners and admins
  • restricted_action - This actor does not have access to the permissions on this resource.
  • team_not_found - Returned when team id is not found.
  • too_many_teams_provided - Please provide only team_id OR enterprise_id

See the Common Errors guide for errors returned by every Web API method.

restrict(optional_params \\ %{})

Restrict an app for installation on a workspace.

API reference

Rate limit: Tier 2: 20+ per minute
Scopes:

View on docs.slack.dev ↗

Optional Params

  • app_id - The id of the app to restrict. Either app_id or request_id is required. ex: A12345
  • enterprise_id - The ID of the enterprise to approve the app on. Exactly one of the team_id or enterprise_id arguments is required, not both. ex: E12345
  • request_id - The id of the request to restrict. Either app_id or request_id is required. ex: Ar12345
  • team_id - The ID of the workspace to approve the app on. Exactly one of the team_id or enterprise_id arguments is required, not both. ex: T12345

Errors the API can return:

  • app_management_app_not_installed_on_org - The app management app must be installed on the org.
  • custom_integration_not_allowed_at_enterprise - Returned when the install request is for custom integration app.
  • feature_not_enabled - Returned when the Admin APIs feature is not enabled for this team
  • invalid_app_id - The app_id passed is invalid.
  • invalid_request_id - The request_id passed is invalid.
  • invalid_scopes - Some of the provided scopes do not exist
  • not_an_admin - This method is only accessible by org owners and admins
  • request_already_resolved - The app request has already been resolved
  • request_id_or_app_id_is_required - Must include a request_id or app_id
  • request_id_required_for_custom_integrations - A request_id is required for custom integrations
  • team_not_found - Returned when team id is not found.
  • too_many_ids_provided - Please provide only app_id OR request_id
  • too_many_teams_provided - Please provide only team_id OR enterprise_id

See the Common Errors guide for errors returned by every Web API method.

uninstall(app_id, optional_params \\ %{})

Uninstall an app from one or many workspaces, or an entire enterprise organization.

API reference

Rate limit: Tier 1: 1+ per minute
Scopes:

View on docs.slack.dev ↗

Required Params

  • app_id - The ID of the app to uninstall. ex: A12345

Optional Params

  • enterprise_id - The enterprise to completely uninstall the application from (across all workspaces). With an org-level token, this or team_ids is required. Exactly one of the arguments enterprise_id or team_ids is required to specify where the app should be removed. ex: E12345
  • team_ids - IDs of the teams to uninstall from (max 100). With an org-level token, this or enterprise_id is required. Exactly one of the arguments enterprise_id or team_ids is required to specify where the app should be removed.

Errors the API can return:

  • app_not_found - The provided app_id was not found.
  • can_not_uninstall - This application can not be uninstalled via the API.
  • enterprise_not_found - The provided enterprise_id was not found.
  • feature_not_enabled - The Admin APIs feature is not enabled for this team.
  • must_revoke_access - Organization-deployed apps cannot be uninstalled from specific workspaces using this API.
  • permission_denied - You do not have permission to uninstall applications from the reqeusted org or workspaces.
  • restricted_action - the user is not authorized to perform this action
  • specify_enterprise_or_teams - Provide exactly one of enterprise_id or team_ids.
  • teams_not_found - One or more of the provided team_ids were not found.
  • too_many_teams - Too many IDs are present in team_ids.

See the Common Errors guide for errors returned by every Web API method.