The App Directory’s purpose is to connect Slack customers with new or existing services and tools they can use in Slack to make their working lives simpler, more pleasant, and more productive.
The apps published are ones that our review team determines to be high-quality, reliable, and useful.
You can distribute your apps without using the App Directory, but listing on the App Directory can boost visibility and usage.
In this guide, we’ll walk you through what you need to know to ensure your app is submitted correctly to be listed in the Slack App Directory.
At a high level, the App Directory is not the right place for your app if it:
Read more about the kinds of apps and functionality that we don’t support for listing here.
As you’re planning your app’s features and functionality, and before you start building, make sure that you’re talking to your customers about how they use Slack and what they feel is missing without having your service integrated into their Slack workflows.
It might be that customers want to be notified of actions that happen in your service, or that they want to be able to search for information right from Slack. Taking time to get to know how your customers use both your service and Slack can help you discover problems and solutions that your customers need help with, even if they wouldn’t explicitly call those problems out for you. This leads to building an app that truly provides value to your customers.
In the early phases of your app building process, you should know the timeline for listing your app in the App Directory, as well as the review process. You can see the estimated turnaround time for reviews when you go to the submission page in your app configuration pages. It's important to account for these in your project planning and timelines, as we will not be able to skip or accelerate the review process in order to coordinate with your launch.
After your submission, we often have feedback during the review process that you will need to address before your app can be listed. The more closely your app follows the submission guidelines, the less feedback there should be, but we strongly recommend that the timeline for an app’s launch includes your app’s submission and review as a milestone with at least a few weeks to spare.
Before moving on, ask yourself:
You’ve started building — that’s great! Our biggest piece of advice is to get customer feedback along the way. A helpful way to do this is to put together a beta group of customers who are going to test and use your app once you’ve distributed it. Learn from their feedback to make it useful, to iterate on the product, and then to run a pilot with them to get real-world feedback. This allows you to understand how your customers use Slack alongside your product and will lead to building a truly high quality experience.
Think about the experiences you’re building!
As you're planning your app's functionality, here are a few tips to help you:
You’ve finished building your app, tested it, and implemented user feedback, which means your app is ready to be reviewed by the App Directory team, hurrah!
In the next section, we’ll walk you through when and how to submit your app to the App Directory. Be sure to read this carefully, as it contains information that will lead to a successful review. If we don’t have the information we need, or your app is broken, it will be returned to you, which resets your app’s place in the review queue and prolongs the process.
Before you submit your app for listing in the App Directory, please ensure:
Please do not submit your app for review if it's in private beta, still being built, or hasn’t been fully tested. Your app should arrive at the review stage as it would in your customers’ hands, which means bug-free and fully functional. We will return submissions that are not ready for review.
If your app is submitted with bugs, poor user experience, or we repeatedly run into issues of low quality when reviewing, we will return it and ask you to spend more time on it before resubmitting.
Our review turnaround time can vary depending on volume, so please take a look at the estimated time for review listed on the submission page of your app configuration to plan your launch timeline.
Currently, the preliminary part of the review takes around 2 to 3 weeks to receive feedback, while the functional review takes around 6 to 8 weeks.
If you are planning a launch or an update, please note that we’re unable to shorten or skip the review, and depending on the preparedness of your app at submission, we may require multiple rounds of feedback.
Make sure to submit as early as you can before your launch to allow time to action any feedback you receive during the review process. All feedback must be addressed before your app can be listed. Once approved, you can publish your app at the time of your choosing, so submitting with plenty of time before your proposed launch date will give you a buffer to publish on time.
Your app submission (and subsequent updates to your app) happens from the Submit to the App Directory section of your app's configuration page.
As part of the submission process, you will be asked to review your app listing information, your app’s scopes, and to provide us with any supplementary information we need to test your app properly. We recommend that you review your app features separately before submitting to make sure that you haven’t left any test slash commands in by accident.
Before you can submit your app, we will run some automated tests on your app. Once you’ve fixed any issues we detect, you can submit your app.
We aim to provide you with as smooth a review experience as we can. To help us do that, we request that your submitted app be in a production-ready state. We also require that you provide us with test account credentials needed to access your service (or any third party service your app connects with) in order to install and fully test your app submission.
This means that if a paid account is required for your service, you’ll need to share login credentials with us for an account with the required level of access. If you choose to provide us with a free trial account, please make the free trial as long as possible, since we might need to test over an extended period of time.
Wherever possible, please provide us with test accounts that include dummy data, particularly if your app connects to another service beyond your own. If a test account is required to connect other services to your app, please provide the login credentials for those 3rd party services in the “Test account details” section of the submission flow.
We can only access any test accounts or email accounts created specifically for testing purposes. We cannot access any Slack workspaces (even created for testing), so please make sure to provide us with a way to install the app ourselves, rather than your test Slack workspace credentials.
You can help us review your app more quickly by providing us with a short video demo. For a new submission, it should include a video showing the full installation and OAuth flow, set-up process, and end-to-end functionality, including uninstallation. This will help us greatly when it comes to performing our functional review of your app.
If you’re submitting updates to an already published app, your video should demonstrate the new functionality you’re adding.
After preparing your app for submission and addressing issues caught in the automated feedback section of the submission process, your app will move onto the manual review.
There are two main parts of the review:
This section includes a review of your listing information, accompanying documentation and links, and a quick look at the reasons you’re requesting each scope. We’ll also check that we have the information and access required to install your app. We may install your app to check that OAuth is working and that the app is ready to be reviewed, but we won’t begin testing your app at this point.
If we find any failures in this first part of the review, we’ll return your submission with that feedback. This includes issues we run into when trying to access and install your app.
You can expect to receive feedback from this part of the review in around 2 to 3 weeks and you'll need to make all of the requested changes before your submission can be moved to the next part of the review. If these changes aren't made, or there is information missing from your submission, this step is repeated until the requirements are met.
During this part of the review, your place in the queue is reset each time you resubmit. This restarts the timeline for the next part of the review, so be sure to take a look at our submission guidelines before you submit. The more closely your app follows these guidelines, the less feedback there should be.
Once your app enters this stage of the review, your submission will be assigned to a reviewer and you’ll receive feedback about your app’s functionality and associated scopes. Feedback from this part of the review generally takes about 6 to 8 weeks. Once your submission has been assigned to a reviewer, your place in the queue is not reset when you resubmit with changes.
We may run into bugs and issues you may have missed, and we’re always happy to point those out. However, our review is not a replacement for Quality Assurance testing. If we run into frequent bugs that prevent us from fully testing the app’s functionality or that provide a poor user experience when reviewing, we will return your submission and ask you to develop it further before resubmitting.
We can only review and approve scopes and functionality that are already available within your app (that we can test or see comprehensive demos for). Please do not submit your app with scopes for a feature that you plan to build at some point in future.
With that in mind, we also encourage you to consider how you’ll communicate with your customers through the app when you do have updates that require the app to be reinstalled (such as adding scopes). Using the context block in a message or sharing the updated OAuth link in your app home are great ways to alert your customers to updated scopes and functionality.
You’ll receive our feedback from the review within the submission flow in your app configuration, as well as email notifications about the status of your submission to the email address you entered during the submission. You can review the feedback, address each point, and then resubmit when ready. At this point, we’ll confirm how you’ve addressed the feedback and either send your submission back with more questions, or finish the review for you to publish your app and changes.
When your app or the updates you’ve made to it have been approved, you’ll be able to publish at your own convenience from the app configuration page.
Once your app is published in the App Directory, the live version of your app is locked — this means you will not be able to make any changes to your app’s configuration, features, or scopes without submitting them for review.
Any updates you make in your app’s code that may be affected by your Slack app configuration (such as scope changes or updated redirect URIs) will not work until you have submitted and published the changes. If you try to make these changes to your live app, it can break your app's experience for users. For example, if you update your app’s install link to add new scopes without them being reviewed, your app will show customers an error and will not be able to be installed.
When you need to make changes to your app, deploy the updates with a test or staging app that will be identical to your published app so that you (and we!) can test during the review process.
For example, if your app is
cycling_tips, create a staging app called
cycling_tips-dev that can be distributed. Use this staging app to test updates to your app's functionalities such as adding a new feature, scopes, or events. You can create a copy of your app for dev/staging using your app’s manifest.
After testing your changes, submit them for review, and tell us about the changes you’ve made in the Testing Information section. You should also include a link to your publicly distributed staging/test app's OAuth flow so that we’re able to install a version of your app with the changes for testing. The staging version itself does not need to be submitted for review, but we do need a way to install it.
Once your update is reviewed, you’ll be able to choose when to publish the changes to your app, allowing you to coordinate when you deploy your changes.
Changes that don't require a test app:
If you're making simple changes to your app's long description or app name, a test app isn't necessary, but we may still ask for one.
Changes that will require a test app or video demo:
In cases where you've added significant changes to an existing feature (such as a different shortcut or slash command), we may ask for a staging app for testing.
Now that your app is listed in the App Directory, make sure you review the requirements for listed apps and the possible enforcement actions if those requirements aren’t met. You can also stay up to date with platform and App Directory updates by subscribing to our changelog, signing up for our developer newsletter or joining the Slack Community.
Remember that feedback loop you created with your customers when you were building and testing your app? That relationship you’ve built with them will continue to serve you well as you engage them to get feedback on new features. As you grow your app’s functionality, you’ll naturally want to share that with a wider group of customers, and that might include being featured in the App Directory.
We regularly feature apps in the App Directory that we believe will meet customer needs. Our goal is to share apps that will make customers’ working lives more pleasant and more productive. As part of our review process, we look for high quality apps, taking into account the way an app uses Slack API features, the value the app provides customers during their workday, and the overall quality of experience.
Do you think your app would be a great fit for us to feature? We'd love to hear from you! Give us feeback and tell us more about the value your app is providing, any recent updates or improvements you've made, or feedback you're hearing from customers. If you're planning a big marketing launch with an update to your app, feel free to include links to blog posts you're using so that we can learn more about the new additions to your app.