Go to Slack

Distributing your app in the Slack App Directory

The rundown
Read this if:You're still experimenting, prototyping, and exploring.
Read next: Tools

The Slack App Directory helps users discover apps. The apps listed are ones that our review team determine to be high-quality, reliable, and useful.

You can distribute your apps without using the App Directory, but listing on the Directory can boost visibility and usage.

In this guide, we'll help you prepare your app for submission to the App Directory and outline that submission and review process. We'll also show you how you should maintain your listing after a successful review.


Preparing your app for submission

The process for getting apps listed in the App Directory involves a manual review by our App Directory team. They will ensure that your app meets the quality and utility standards of App Directory apps.

There are a number of steps to follow before submitting your apps, so let's walk through them.

Check your app is suitable

Before we go further, it's important to note that there are some types of apps that we aren't currently accepting in the App Directory. This includes apps that:

  • export or backup message data;
  • are built for the sole purpose of searching Slack messages outside Slack;
  • use legacy scopes or methods (e.g. client, read, post);
  • allow possibly destructive behaviour (e.g. deleting files);
  • embed Slack into another site;
  • only use Sign in with Slack functionality;
  • replicate Slack client functionality, or are third-party Slack clients;
  • request large number of scopes for simple, non-work related functionality;
  • share sensitive information in Slack;
  • circumvent admin features in Slack;
  • do not provide any functionality we deem to be valuable in Slack.

This list is not exhaustive - the App Directory team may use their judgment to deny any app from being listed - but it's useful to know upfront when your app is not suitable.

If you think your app is suitable, keep reading to see the kinds of policies that listings in the App Directory are subject to, and how to prepare your app for review.


Prepare your app for public distribution

If you haven't enabled public distribution for your app, follow our guide to distributing apps publicly. This is a pre-requisite for submitting your app for App Directory review — you and your app won't make it far without doing this!


Read our terms and policies

By distributing your app through the App Directory, you agree to abide by the following core policies and terms:

Apps that do not follow these terms will not be accepted in the App Directory.


Providing a great experience

Beyond the strict policies and terms mentioned above, the App Directory team will generally ensure that your apps provide a great experience for users.

There are a number of resources that can help your app reach this point:


Make installation more direct

Typically, App Directory apps must present users with a web page containing a link to Slack's OAuth installation flow. As users browse apps in the App Directory or a Slack client and encounter an app they want to install, they first must visit this page to initiate installation:

Install from your landing page

Save users a step by providing a Direct Install URL—a location on your site that simply redirects to the authorize step directly:

Install from App Directory

When your app is listed in the App Directory, you can utilize this direct install flow.

Configure this link on your app's dashboard:

  • Open the Basic Information page;
  • Scroll down to Installing Your App;
  • Select and enable Install from App Directory.

When you input and save your Direct Install URL, Slack will attempt to send a simple HTTP GET request to your declared URL.

That URL must then HTTP 302 redirect to a fully qualified slack.com/oauth/authorize URL, as per the first step of the OAuth flow. You'll receive an error letting you know if the redirect wasn't successful.

If you ever need to revert to installation via your landing page, just configure your app again to use Install from your landing page in the dashboard.


Boost app discovery using App Suggestions

Once you get listed in the App Directory, Slack can suggest your app to new users. This will happen when links containing the domain name associated with your app are mentioned in conversation:

An example app suggestion for a bot called Performance bot.

Enabling app suggestions

While managing your Slack app settings, you'll find a snippet of HTML customized for your app under Manage Distribution. It's a simple META tag declaring your Slack app's ID, which typically begins with A. If you already know the ID, you can build one of these tags yourself.

The snippet looks something like this:

<meta name="slack-app-id" content="YOUR_APP_ID_HERE">

Place this brief piece of HTML in your website template's HEAD section, beside other metadata rubble you've accumulated, like so:

<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta name="slack-app-id" content="YOUR_APP_ID_HERE">
        <title>Beforebot highlights bots before it</title>
    </head>
</html>

With this HTML in place - and once your app is listed in the App Directory - Slack is ready to suggest your app to new users on workspaces it isn't yet installed on.

How app suggestions are triggered

Let's take a hypothetical example. @beforebot is a Slack app in the directory that has placed its app ID meta tag in the template of all pages on https://before.bot/.

On a workspace where @beforebot is not installed, @ada posts a message talking about the link https://before.bot/movies/flight-of-the-navigator/trimaxion.

Within moments of posting, Slack crawls the URL and extracts the app ID, correlating it to the @beforebot app. Slackbot then posts an ephemeral message only @ada can see:

An example app suggestion for a bot called @beforebot.

This message contains the app's icon and short description, along with a link back to the app directory. It also contains three decisive links:

  • Yes please takes @ada to the app directory
  • Not now will dismiss the ephemeral message but possibly suggest to @ada again when posting links to before.bot
  • No thanks will dismiss the ephemeral message and won't prompt @ada to install again

App suggestions are a great way for users and workspaces that are curious about, or already using your product or service to discover your Slack app.

Once installed, your app can attach custom unfurling behavior to relevant links shared in messages, among all the other nifty things bots and apps can do.


Complete the submission checklist

A review submission checklist is available within the Manage Distribution page of your app's dashboard - you can find it under the section called Submit to the Slack App Directory.

The comprehensive App Directory checklist covers the most common points of failure during reviews. Follow the checklist to help your app through the review process quickly and smoothly.

The checklist is interactive, allowing you to tick off the items as you complete them, showing your progress through the list. It will also highlight specific items that are missing or insufficient. You'll also have the opportunity to provide some information that will help our team to review your app, such as details of associated test accounts or mobile apps.

Review the checklist now


Submitting your app for review

When you're done with the preparation of your app, and have gone through the submission checklist, you're ready to send your app for review.

  1. Go to your app's dashboard.
  2. Click into the Manage Distribution page.
  3. Complete the checklist and click the Submit App button.

Once we've reviewed your app, we'll email you. If your app is approved, you can publish your app to the App Directory from the same Manage Distribution page.

Congratulations! You're now listed in the App Directory. Flocks of admiring visitors are now on their way to experience your wonderful app. You'll want to keep the place looking neat and tidy — keep reading to find out about our expectations for developers maintaining their apps in the App Directory.


Maintaining your listed app

The App Directory helps users find high-quality, dependable apps to aid in getting work done in Slack. This means that the process of being listed in the App Directory is not just about the initial submission and review.

In order to provide everyone with the highest quality experience when using apps from the App Directory we have some expectations around your app's performance, maintenance, support, and security standards.

Expectations for listed apps

  1. Your app's listing is kept up to date.

    Any changes to functionality, pricing, visual appearance, or any other updates should be accurately reflected in your app's listing.

  2. Your app's functionality and customer experience matches or exceeds the quality of experience at submission, and you maintain your app’s performance.

  3. You provide timely support to customers.

    If we hear from customers that they’ve not received responses from their support requests, we will reach out to you. If we do not receive a prompt reply to our own messages to you, we may de-list your app.

  4. You regularly update your app to ensure that it makes use of our newest platform security features.

    We regularly add new security features to our API, so please make sure you’re using those that are applicable to your app. Stay up to date with those new features by subscribing to our changelog.

  5. You keep your app contact details up to date and are responsive to messages from us.

    We will occasionally need to get in touch with you with questions about your app or to resolve any issues.

    Please make sure the developer and support contact details in your app submission are kept up to date so that we can contact you easily. Otherwise, you may miss important notices from us.

  6. You must add a collaborator to your app.

    Adding app collaborators ensures that multiple people can access your app’s configuration, in the event that the app creator leaves the associated workspace.

    Edit your app's collaborator list by going to your app's dashboard and clicking into the Collaborators page.

  7. You must resubmit your app for review when you make substantial changes or updates to the features, purpose or functionality of your app.

  8. Your app is being actively used.

    We want the App Directory to provide people with a choice of useful and used apps to help make their work days more productive. If your app is listed in the App Directory but it is not being used, we will reach out to you to learn more about your plans for the app.

    If you do not plan to update your app, or people continue not to use your app, we will delist your app after communication with you.

Possible enforcement actions

In order to do maintain the health of the App Directory and provide everyone with the best possible experience, there are circumstances in which we will contact you and possibly delist or take further action on your app.

We may contact you for response when:

  • our expectations for listed apps are not being met;
  • we hear about issues from our mutual users, including but not limited to: spammy app behaviour, broken or unexpected functionality, poor support experiences, lack of responses to support requests;
  • we see increased instances of your app being uninstalled;
  • we see large numbers of errors for your app;
  • the support page or privacy policy page links for the app are broken.

If we do not hear back from you after reaching out to you for any reason, we will reach out again while simultaneously de-listing your app to protect users. If we hear back from you, and confirm that issues are resolved, we'll be able to re-list your app.

We may delist your app without prior notice (other than to inform you of that action) when:

  • your app's landing page or installation flow are broken;
  • your app appears to be unmaintained or abandoned;
  • your app's functionality changes substantially without notice and without the app being resubmitted for review.

We reserve the right to revoke access and tokens for your app if we receive no response from you about security-related issues.


Updating your listed app

If you plan to make changes to the functionality of your app, you must submit those changes for review and approval.

To help with this process, you can create a development clone of your app to test and submit for review:

  1. Click Edit app on your app's dashboard to create a development copy after you've published it.
  2. Edit your app as needed and test using the credentials of the development app (these changes will not affect the published version of your app).
  3. Submit those changes for review from the Update Directory app page.

You can also remove your published app from the App Directory in the Live App Settings page of your app's dashboard.


Discontinuing your listed app

If your app is no longer being actively maintained or developed, you should ensure you adequately sunset your app by:

  • removing it from the App Directory;
  • contacting the App Directory team at feedback@slack.com;
  • contacting your customers where appropriate;
  • deleting and revoking any tokens your app generated.