Slack · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Slack Admin Administrative API

56 actions 56 updates phrasing extends openapi/slack-administrative-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Slack's API. It is a proposal applied on top of the contract, not a document Slack publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 56 · first 16 shown; the file carries all of them

$.info
$.paths['/admin.apps.approve'].post
$.paths['/admin.apps.approved.list'].get
$.paths['/admin.apps.requests.list'].get
$.paths['/admin.apps.restrict'].post
$.paths['/admin.apps.restricted.list'].get
$.paths['/admin.conversations.archive'].post
$.paths['/admin.conversations.convertToPrivate'].post
$.paths['/admin.conversations.create'].post
$.paths['/admin.conversations.delete'].post
$.paths['/admin.conversations.disconnectShared'].post
$.paths['/admin.conversations.ekm.listOriginalConnectedChannelInfo'].get
$.paths['/admin.conversations.getConversationPrefs'].get
$.paths['/admin.conversations.getTeams'].get
$.paths['/admin.conversations.invite'].post
$.paths['/admin.conversations.rename'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Slack Admin Administrative API
  version: 1.0.0
extends: openapi/slack-administrative-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 55
- target: $.paths['/admin.apps.approve'].post
  update:
    x-apievangelist-phrasing:
      intent: Approve an app for a workspace
      effect: write
      questions:
      - How can an org admin approve a pending app install request in Slack?
      - Can I approve an app for one specific workspace rather than the whole org?
      instructions:
      - text: Approve app {app_id} for installation on workspace {team_id}.
        slots:
          app_id: requestBody.app_id
          team_id: requestBody.team_id
      - text: Approve the pending app request {request_id}.
        slots:
          request_id: requestBody.request_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.apps.approved.list'].get
  update:
    x-apievangelist-phrasing:
      intent: List approved apps
      effect: read
      questions:
      - Which apps have already been approved for our org?
      - Can I see the approved apps for just one workspace in the enterprise?
      instructions:
      - text: List the apps that are approved on workspace {team_id}.
        slots:
          team_id: query.team_id
      - text: Show every approved app across enterprise {enterprise_id}.
        slots:
          enterprise_id: query.enterprise_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.apps.requests.list'].get
  update:
    x-apievangelist-phrasing:
      intent: List pending app install requests
      effect: read
      questions:
      - Which app installs are users waiting on an admin to review?
      - Is there a way to page through app requests people submitted on a workspace?
      instructions:
      - text: List the pending app requests on workspace {team_id}.
        slots:
          team_id: query.team_id
      - text: Show the first {limit} outstanding app install requests.
        slots:
          limit: query.limit
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.apps.restrict'].post
  update:
    x-apievangelist-phrasing:
      intent: Restrict an app on a workspace
      effect: write
      questions:
      - How do I block an app from being installed on a workspace?
      - Can I restrict an app in response to a user's install request?
      instructions:
      - text: Restrict app {app_id} from installation on workspace {team_id}.
        slots:
          app_id: requestBody.app_id
          team_id: requestBody.team_id
      - text: Deny install request {request_id} by restricting the app.
        slots:
          request_id: requestBody.request_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.apps.restricted.list'].get
  update:
    x-apievangelist-phrasing:
      intent: List restricted apps
      effect: read
      questions:
      - Which apps are blocked from installation in our org?
      - Can I list restricted apps for one workspace only?
      instructions:
      - text: List the restricted apps on workspace {team_id}.
        slots:
          team_id: query.team_id
      - text: Show every app restricted across enterprise {enterprise_id}.
        slots:
          enterprise_id: query.enterprise_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.archive'].post
  update:
    x-apievangelist-phrasing:
      intent: Archive a channel as an admin
      effect: write
      questions:
      - Can an org admin archive a private channel they aren't a member of?
      - How do I archive a channel from the admin side?
      instructions:
      - text: As an admin, archive channel {channel_id}.
        slots:
          channel_id: requestBody.channel_id
      - text: Use admin rights to archive the channel {channel_id} across the org.
        slots:
          channel_id: requestBody.channel_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.convertToPrivate'].post
  update:
    x-apievangelist-phrasing:
      intent: Convert a public channel to private
      effect: write
      questions:
      - Is it possible to turn a public channel into a private one?
      - What happens when an admin converts a channel to private?
      instructions:
      - text: Convert public channel {channel_id} into a private channel.
        slots:
          channel_id: requestBody.channel_id
      - text: Make channel {channel_id} private.
        slots:
          channel_id: requestBody.channel_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.create'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a channel as an admin
      effect: write
      questions:
      - Can an admin create an org-wide channel in an Enterprise org?
      - What do I need to create a private channel through the admin API?
      instructions:
      - text: Create a channel named {name} with private set to {is_private}.
        slots:
          name: requestBody.name
          is_private: requestBody.is_private
      - text: Create public channel {name} on workspace {team_id} with private set to {is_private}.
        slots:
          name: requestBody.name
          team_id: requestBody.team_id
          is_private: requestBody.is_private
      - text: Create an org-wide channel {name}, private {is_private}, described as {description}.
        slots:
          name: requestBody.name
          is_private: requestBody.is_private
          description: requestBody.description
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.delete'].post
  update:
    x-apievangelist-phrasing:
      intent: Delete a channel permanently
      effect: destructive
      questions:
      - Can an admin permanently delete a channel instead of archiving it?
      - Is deleting a private channel through the admin API reversible?
      instructions:
      - text: Permanently delete channel {channel_id}.
        slots:
          channel_id: requestBody.channel_id
      - text: Remove the channel {channel_id} for good, messages and all.
        slots:
          channel_id: requestBody.channel_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.disconnectShared'].post
  update:
    x-apievangelist-phrasing:
      intent: Disconnect a shared channel from workspaces
      effect: destructive
      questions:
      - How do I stop sharing a connected channel with other workspaces?
      - Can I disconnect a shared channel from only some of the workspaces it reaches?
      instructions:
      - text: Disconnect shared channel {channel_id} from every connected workspace.
        slots:
          channel_id: requestBody.channel_id
      - text: Disconnect channel {channel_id} from workspaces {leaving_team_ids}.
        slots:
          channel_id: requestBody.channel_id
          leaving_team_ids: requestBody.leaving_team_ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.ekm.listOriginalConnectedChannelInfo'].get
  update:
    x-apievangelist-phrasing:
      intent: List disconnected channels' original IDs
      effect: read
      questions:
      - Which channels were once shared with other workspaces and later disconnected?
      - Where can I find the original channel IDs for disconnected channels, for EKM?
      instructions:
      - text: List the original connected channel info for channels {channel_ids}.
        slots:
          channel_ids: query.channel_ids
      - text: Show disconnected channels and their original IDs for workspaces {team_ids}.
        slots:
          team_ids: query.team_ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.getConversationPrefs'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a channel's posting preferences
      effect: read
      questions:
      - Who is allowed to post in this channel right now?
      - Can I check the current conversation preferences on a private channel?
      instructions:
      - text: Get the conversation preferences for channel {channel_id}.
        slots:
          channel_id: query.channel_id
      - text: Show who can post and thread in channel {channel_id}.
        slots:
          channel_id: query.channel_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.getTeams'].get
  update:
    x-apievangelist-phrasing:
      intent: List workspaces a channel is connected to
      effect: read
      questions:
      - Which workspaces in our Enterprise org is this channel shared into?
      - How do I see every workspace connected to a given channel?
      instructions:
      - text: List the workspaces channel {channel_id} is connected to.
        slots:
          channel_id: query.channel_id
      - text: Show up to {limit} workspaces sharing channel {channel_id}.
        slots:
          limit: query.limit
          channel_id: query.channel_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.invite'].post
  update:
    x-apievangelist-phrasing:
      intent: Invite users to a channel as an admin
      effect: write
      questions:
      - Can an admin add several people to a private channel at once?
      - Is it possible to invite users into a channel I'm not a member of?
      instructions:
      - text: Invite users {user_ids} to channel {channel_id}.
        slots:
          user_ids: requestBody.user_ids
          channel_id: requestBody.channel_id
      - text: Add user {user_ids} to the channel {channel_id} using admin rights.
        slots:
          user_ids: requestBody.user_ids
          channel_id: requestBody.channel_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.rename'].post
  update:
    x-apievangelist-phrasing:
      intent: Rename a channel as an admin
      effect: write
      questions:
      - Can an org admin rename any public or private channel?
      - What's the admin way to change a channel's name?
      instructions:
      - text: Rename channel {channel_id} to {name}.
        slots:
          channel_id: requestBody.channel_id
          name: requestBody.name
      - text: Change the name of channel {channel_id} to {name} as an admin.
        slots:
          channel_id: requestBody.channel_id
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.restrictAccess.addGroup'].post
  update:
    x-apievangelist-phrasing:
      intent: Allow an IDP group into a channel
      effect: write
      questions:
      - How do I restrict a private channel so only one IDP group can access it?
      - Can I add an identity provider group to a channel's allowlist?
      instructions:
      - text: Add IDP group {group_id} to the access allowlist of channel {channel_id}.
        slots:
          group_id: requestBody.group_id
          channel_id: requestBody.channel_id
      - text: Allow group {group_id} into channel {channel_id} on workspace {team_id}.
        slots:
          group_id: requestBody.group_id
          channel_id: requestBody.channel_id
          team_id: requestBody.team_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.restrictAccess.listGroups'].get
  update:
    x-apievangelist-phrasing:
      intent: List IDP groups linked to a channel
      effect: read
      questions:
      - Which IDP groups are allowed to access this channel?
      - Can I check a channel's group allowlist before changing it?
      instructions:
      - text: List the IDP groups linked to channel {channel_id}.
        slots:
          channel_id: query.channel_id
      - text: Show the access groups on channel {channel_id} in workspace {team_id}.
        slots:
          channel_id: query.channel_id
          team_id: query.team_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.restrictAccess.removeGroup'].post
  update:
    x-apievangelist-phrasing:
      intent: Remove an IDP group from a private channel
      effect: write
      questions:
      - How do I unlink an IDP group from a private channel's allowlist?
      - Can I revoke a group's access to a private channel?
      instructions:
      - text: Remove IDP group {group_id} from private channel {channel_id} on workspace {team_id}.
        slots:
          group_id: requestBody.group_id
          channel_id: requestBody.channel_id
          team_id: requestBody.team_id
      - text: Unlink group {group_id} from channel {channel_id} in team {team_id}.
        slots:
          group_id: requestBody.group_id
          channel_id: requestBody.channel_id
          team_id: requestBody.team_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.search'].get
  update:
    x-apievangelist-phrasing:
      intent: Search channels across an Enterprise org
      effect: read
      questions:
      - How can an admin find channels by name across the whole Enterprise org?
      - Can I filter a channel search by channel type and sort the results?
      instructions:
      - text: Search the org for channels matching {query}.
        slots:
          query: query.query
      - text: Find channels matching {query} in workspaces {team_ids}.
        slots:
          query: query.query
          team_ids: query.team_ids
      - text: Search for channels of type {search_channel_types}, sorted by {sort}.
        slots:
          search_channel_types: query.search_channel_types
          sort: query.sort
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.setConversationPrefs'].post
  update:
    x-apievangelist-phrasing:
      intent: Set a channel's posting permissions
      effect: write
      questions:
      - Can I make a channel announcement-only so just admins can post?
      - How are posting permissions for a channel changed?
      instructions:
      - text: Set the posting preferences on channel {channel_id} to {prefs}.
        slots:
          channel_id: requestBody.channel_id
          prefs: requestBody.prefs
      - text: Apply prefs {prefs} to restrict who can post in channel {channel_id}.
        slots:
          prefs: requestBody.prefs
          channel_id: requestBody.channel_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.setTeams'].post
  update:
    x-apievangelist-phrasing:
      intent: Set which workspaces share a channel
      effect: write
      questions:
      - How do I share a channel with several workspaces in our Enterprise grid?
      - Can I turn an existing channel into an org-wide channel?
      instructions:
      - text: Share channel {channel_id} with workspaces {target_team_ids}.
        slots:
          channel_id: requestBody.channel_id
          target_team_ids: requestBody.target_team_ids
      - text: 'Convert channel {channel_id} to an org channel: {org_channel}.'
        slots:
          channel_id: requestBody.channel_id
          org_channel: requestBody.org_channel
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.conversations.unarchive'].post
  update:
    x-apievangelist-phrasing:
      intent: Unarchive a channel
      effect: write
      questions:
      - Can an archived channel be brought back?
      - How do I restore a private channel someone archived?
      instructions:
      - text: Unarchive channel {channel_id}.
        slots:
          channel_id: requestBody.channel_id
      - text: Restore the archived channel {channel_id} so people can post again.
        slots:
          channel_id: requestBody.channel_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.emoji.addAlias'].post
  update:
    x-apievangelist-phrasing:
      intent: Add an alias for a custom emoji
      effect: write
      questions:
      - Can one custom emoji answer to two different names?
      - What's needed to add an emoji alias org-wide?
      instructions:
      - text: Add alias {name} for the emoji {alias_for}.
        slots:
          name: requestBody.name
          alias_for: requestBody.alias_for
      - text: 'Make :{name}: point to the existing emoji {alias_for}.'
        slots:
          name: requestBody.name
          alias_for: requestBody.alias_for
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.emoji.list'].get
  update:
    x-apievangelist-phrasing:
      intent: List custom emoji across the org
      effect: read
      questions:
      - Which custom emoji exist across our Enterprise Grid organization?
      - Can an admin page through all org emoji?
      instructions:
      - text: List the custom emoji in the Enterprise Grid org.
      - text: Show {limit} org emoji per page.
        slots:
          limit: query.limit
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.emoji.remove'].post
  update:
    x-apievangelist-phrasing:
      intent: Remove a custom emoji org-wide
      effect: destructive
      questions:
      - How do I delete a custom emoji from every workspace in the org?
      - Can an admin take down an offensive emoji?
      instructions:
      - text: Remove the emoji {name} across the organization.
        slots:
          name: requestBody.name
      - text: Delete custom emoji {name} org-wide.
        slots:
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.emoji.rename'].post
  update:
    x-apievangelist-phrasing:
      intent: Rename a custom emoji
      effect: write
      questions:
      - Can a custom emoji be renamed without re-uploading it?
      - What happens to messages when an admin renames an emoji?
      instructions:
      - text: Rename emoji {name} to {new_name}.
        slots:
          name: requestBody.name
          new_name: requestBody.new_name
      - text: Change the emoji called {name} so it's now {new_name}.
        slots:
          name: requestBody.name
          new_name: requestBody.new_name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.inviteRequests.approve'].post
  update:
    x-apievangelist-phrasing:
      intent: Approve a workspace invite request
      effect: write
      questions:
      - Can an admin approve someone's request to invite a new member?
      - How do I say yes to a pending workspace invite request?
      instructions:
      - text: Approve invite request {invite_request_id}.
        slots:
          invite_request_id: requestBody.invite_request_id
      - text: Approve invite request {invite_request_id} on workspace {team_id}.
        slots:
          invite_request_id: requestBody.invite_request_id
          team_id: requestBody.team_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.inviteRequests.approved.list'].get
  update:
    x-apievangelist-phrasing:
      intent: List approved invite requests
      effect: read
      questions:
      - Which workspace invite requests have been approved so far?
      - Can I audit approved invites for one workspace?
      instructions:
      - text: List the approved invite requests on workspace {team_id}.
        slots:
          team_id: query.team_id
      - text: Show all invite requests that were approved.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.inviteRequests.denied.list'].get
  update:
    x-apievangelist-phrasing:
      intent: List denied invite requests
      effect: read
      questions:
      - Which invite requests did admins turn down?
      - Is there a record of denied workspace invites I can page through?
      instructions:
      - text: List the denied invite requests on workspace {team_id}.
        slots:
          team_id: query.team_id
      - text: Show every invite request that was rejected.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.inviteRequests.deny'].post
  update:
    x-apievangelist-phrasing:
      intent: Deny a workspace invite request
      effect: write
      questions:
      - How can an admin reject a request to invite someone?
      - Can I deny an invite request on a particular workspace?
      instructions:
      - text: Deny invite request {invite_request_id}.
        slots:
          invite_request_id: requestBody.invite_request_id
      - text: Reject invite request {invite_request_id} on workspace {team_id}.
        slots:
          invite_request_id: requestBody.invite_request_id
          team_id: requestBody.team_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.inviteRequests.list'].get
  update:
    x-apievangelist-phrasing:
      intent: List pending invite requests
      effect: read
      questions:
      - Which workspace invite requests are still waiting for review?
      - Are there pending invites I need to approve or deny?
      instructions:
      - text: List the pending invite requests on workspace {team_id}.
        slots:
          team_id: query.team_id
      - text: Show the invite requests nobody has acted on yet.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.teams.admins.list'].get
  update:
    x-apievangelist-phrasing:
      intent: List a workspace's admins
      effect: read
      questions:
      - Who are the admins on a given workspace?
      - Can I get the admin roster for one workspace in our Enterprise org?
      instructions:
      - text: List the admins of workspace {team_id}.
        slots:
          team_id: query.team_id
      - text: Show up to {limit} admins on workspace {team_id}.
        slots:
          limit: query.limit
          team_id: query.team_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.teams.create'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a workspace in an Enterprise org
      effect: write
      questions:
      - How do I spin up a new workspace inside our Enterprise Grid org?
      - Can a new workspace be created as invite-only from the start?
      instructions:
      - text: Create a workspace named {team_name} with domain {team_domain}.
        slots:
          team_name: requestBody.team_name
          team_domain: requestBody.team_domain
      - text: Create workspace {team_name} at {team_domain} with discoverability {team_discoverability}.
        slots:
          team_name: requestBody.team_name
          team_domain: requestBody.team_domain
          team_discoverability: requestBody.team_discoverability
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.teams.list'].get
  update:
    x-apievangelist-phrasing:
      intent: List workspaces in an Enterprise org
      effect: read
      questions:
      - Which workspaces belong to our Enterprise organization?
      - Can I page through every team in the org?
      instructions:
      - text: List all workspaces in the Enterprise org.
      - text: Show the next {limit} workspaces from cursor {cursor}.
        slots:
          limit: query.limit
          cursor: query.cursor
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.teams.owners.list'].get
  update:
    x-apievangelist-phrasing:
      intent: List a workspace's owners
      effect: read
      questions:
      - Who owns a particular workspace?
      - Can I list the workspace owners separately from the admins?
      instructions:
      - text: List the owners of workspace {team_id}.
        slots:
          team_id: query.team_id
      - text: Show who holds owner role on workspace {team_id}.
        slots:
          team_id: query.team_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.teams.settings.info'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a workspace's settings
      effect: read
      questions:
      - What are the current settings on one of our workspaces?
      - Can I check a workspace's name, icon and discoverability in one call?
      instructions:
      - text: Get the settings for workspace {team_id}.
        slots:
          team_id: query.team_id
      - text: Fetch settings info for team {team_id}.
        slots:
          team_id: query.team_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.teams.settings.setDefaultChannels'].post
  update:
    x-apievangelist-phrasing:
      intent: Set a workspace's default channels
      effect: write
      questions:
      - How do I choose which channels new members join automatically?
      - Can I change the default channels for a workspace?
      instructions:
      - text: Set the default channels of workspace {team_id} to {channel_ids}.
        slots:
          team_id: requestBody.team_id
          channel_ids: requestBody.channel_ids
      - text: Make {channel_ids} the channels everyone joins on workspace {team_id}.
        slots:
          channel_ids: requestBody.channel_ids
          team_id: requestBody.team_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.teams.settings.setDescription'].post
  update:
    x-apievangelist-phrasing:
      intent: Set a workspace's description
      effect: write
      questions:
      - Can an admin update the description shown for a workspace?
      - Where is a workspace's description changed?
      instructions:
      - text: Set the description of workspace {team_id} to {description}.
        slots:
          team_id: requestBody.team_id
          description: requestBody.description
      - text: Describe workspace {team_id} as {description}.
        slots:
          team_id: requestBody.team_id
          description: requestBody.description
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.teams.settings.setDiscoverability'].post
  update:
    x-apievangelist-phrasing:
      intent: Set who can find and join a workspace
      effect: write
      questions:
      - How do I make a workspace unlisted so people can't discover it?
      - Which discoverability options can a workspace have?
      instructions:
      - text: Set discoverability of workspace {team_id} to {discoverability}.
        slots:
          team_id: requestBody.team_id
          discoverability: requestBody.discoverability
      - text: Make workspace {team_id} invite-only by setting discoverability {discoverability}.
        slots:
          team_id: requestBody.team_id
          discoverability: requestBody.discoverability
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.teams.settings.setIcon'].post
  update:
    x-apievangelist-phrasing:
      intent: Set a workspace's icon
      effect: write
      questions:
      - Can I change a workspace icon from an image URL?
      - How is a workspace's logo updated by an admin?
      instructions:
      - text: Set the icon of workspace {team_id} to the image at {image_url}.
        slots:
          team_id: requestBody.team_id
          image_url: requestBody.image_url
      - text: Use {image_url} as the icon for team {team_id}.
        slots:
          image_url: requestBody.image_url
          team_id: requestBody.team_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.teams.settings.setName'].post
  update:
    x-apievangelist-phrasing:
      intent: Rename a workspace
      effect: write
      questions:
      - Can an admin rename a workspace in the Enterprise org?
      - What's required to change a workspace's display name?
      instructions:
      - text: Rename workspace {team_id} to {name}.
        slots:
          team_id: requestBody.team_id
          name: requestBody.name
      - text: Set the name of team {team_id} to {name}.
        slots:
          team_id: requestBody.team_id
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.usergroups.addChannels'].post
  update:
    x-apievangelist-phrasing:
      intent: Add default channels to an IDP group
      effect: write
      questions:
      - How do I make members of an IDP group automatically join certain channels?
      - Can I link more default channels to an existing user group?
      instructions:
      - text: Add channels {channel_ids} as defaults for IDP group {usergroup_id}.
        slots:
          channel_ids: requestBody.channel_ids
          usergroup_id: requestBody.usergroup_id
      - text: Link channels {channel_ids} to user group {usergroup_id} on workspace {team_id}.
        slots:
          channel_ids: requestBody.channel_ids
          usergroup_id: requestBody.usergroup_id
          team_id: requestBody.team_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.usergroups.addTeams'].post
  update:
    x-apievangelist-phrasing:
      intent: Associate workspaces with an org IDP group
      effect: write
      questions:
      - Can an org-wide IDP group be tied to specific workspaces?
      - Is there a way to auto-provision group members into the workspaces I add?
      instructions:
      - text: Associate workspaces {team_ids} with IDP group {usergroup_id}.
        slots:
          team_ids: requestBody.team_ids
          usergroup_id: requestBody.usergroup_id
      - text: Add workspaces {team_ids} to group {usergroup_id} with auto-provision {auto_provision}.
        slots:
          team_ids: requestBody.team_ids
          usergroup_id: requestBody.usergroup_id
          auto_provision: requestBody.auto_provision
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.usergroups.listChannels'].get
  update:
    x-apievangelist-phrasing:
      intent: List channels linked to an IDP group
      effect: read
      questions:
      - Which channels are linked to a given org-level user group?
      - Can I include member counts when listing a group's channels?
      instructions:
      - text: List the channels linked to IDP group {usergroup_id}.
        slots:
          usergroup_id: query.usergroup_id
      - text: Show group {usergroup_id}'s channels with member counts {include_num_members}.
        slots:
          usergroup_id: query.usergroup_id
          include_num_members: query.include_num_members
      method: generated
      generated: '2026-09-26'
- target: $.paths['/admin.usergroups.removeChannels'].post
  update:
    x-apievangelist-phrasing:
      intent: Remove default channels from an IDP group
      effect: write
      questions:
      - How do I stop an IDP group from auto-joining a channel?
      - Can I unlink several default channels from a user group at once?
      instructions:
      - text: Remove channels {channel_ids} from IDP group {usergroup_id}.
        slots:
          channel_ids: requestBody.channel_ids
          usergroup_id: requestBody.usergroup_id
      - text: Unlink the default channels {channel_ids} from user group {usergroup_id}.
        slots:
          channel_ids: requestBody.channel_ids
          usergroup_id: requestBody.usergroup_id
      method: generated
      generated: '2026-09-26'


# --- truncated at 32 KB (39 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/slack/refs/heads/main/overlays/slack-administrative-api-phrasing-overlay.yaml