I want to have a special channel primarily to post company's announcement in my Slack team, and I don't want anybody, except me and a select few people, to post in that channel, to not distract the channel viewer from the announcement content. But I still want everybody to be able to see the content of the channel (e.g. making it one of the default channels new user automatically joins to). Can I do that in Slack? How? Or is there an alternative or workaround to achieve the similar result?

4 Answers 4


You can restrict who can post to the #general channel on your team settings, in http://my.slack.com/admin/settings#permissions

Available restrictive options are Team Owners and Admins or Team Owners only.

You can rename #general to something more appropriate like "#announcements".

Currently, you cannot restrict posting rights to other public channels than #general.

More information is available on https://get.slack.help/hc/en-us/articles/220105027-The-general-channel


There still is no way to do it inside Slack :( but I've worked around this by using a simple Slack App using Amazon AWS Lambda. The actual Lambda python function could just as easily be modified to run on some other server, of course.



You can do this now in Slack

  • Create your channel.
  • Right click on channel name in the side bar, and choose Open channel details
  • Click Settings | Posting Permissions
  • Select the You and Specific People radio button, and add team members that are allowed to post to this channel.
  • Uncheck Allow Threads

we also need to have some channels that only certain people can post and readonly for others, so I've wrote very simple script that does it for us. You can take a look https://github.com/ypogorelova/slack_blockbot

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.