Today, more than 1 million Slack developers use the platform each week to build custom applications to help their organizations do their best work. And these apps are as unique as the organizations that build them. We’ve seen customers like Target, Starling Bank and Loblaw Digital with very different business needs and operating styles benefit from bringing their digital tools together in Slack, combining events across systems to allow teams to collaborate in real time.
We know these tools amplify the value of Slack within an organization and, in turn, make it easier for organizations to organize their data and automate processes. We also know it hasn’t always been easy to build a custom app. That’s why Slack has announced the next generation of its platform, with tools, components and services to make it easier to build custom applications. Learn more below about our newest section on the Slack API site, where you can download the command-line interface (CLI) and learn how to use all these incredible new features.
Developers, say hello to the Slack CLI
We’ve heard from our customers that creating Slack apps could be easier and faster. So we’re releasing a new set of developer tools that vastly improves the experience of building Slack apps: a new CLI tool and software development kit (SDK).
The new Slack CLI takes care of creating a new app ID, managing your event subscriptions, and scaffolding the code for you with the simple command
slack create. With the CLI, you can create projects that follow best practices for structuring your apps, using the latest features.
The CLI will let you run your apps locally, test in a variety of environments, and even deploy code right from your terminal. With these productivity improvements, developers can integrate Slack app development into their broader software development lifecycle. When combined with app manifests, managing Slack apps is easier than ever and fully automatable, so you can focus on your app’s code without copying configuration parameters between systems. The CLI and app manifests can also be integrated into continuous integration pipelines or other automations.
The new SDK, built using TypeScript and targeting the Deno runtime, will support the breadth of platform features as well as improve developer productivity and ergonomics with built-in features like autocomplete and code hinting. By leveraging Deno’s secure-by-default architecture, portability and TypeScript support, you can build apps that are enterprise-grade before you even write a line of code.
Faster and easier Slack-first app deployment
For the first time, Slack is offering hosting of not just Slack applications but data as well. This means you can focus on building amazing custom apps and administrators can confidently manage those apps using the same infrastructure as Slack itself. Slack hosting is an optional, fully managed add-on built for enterprise-grade applications, with full admin controls and integration with popular developer tools.
Building on top of admin-approved apps, a new set of admin controls lets owners and administrators control who can build and deploy these custom apps to their workspace. And the new SDK lets developers specify who can access an app’s commands, so no more worries about someone in marketing deploying to production or an engineer launching the new marketing campaign accidentally.
Simply put, developing Slack apps will be more predictable, faster and easier for everyone. You can quickly create a new app with the
slack CLI, develop everything on your local machine, use the TypeScript-based SDK to catch errors faster, run automated tests, and integrate your code into a complete software development lifecycle. Checking your code into a Git repo, for example, might kick off a pipeline that asks for a code review and then deploys the new code once everything passes.
Solve problems with workflows
When we launched Workflow Builder two years ago, the goal was to make it easy for anyone in a Slack workspace to automate their work and help improve the productivity of their entire team. Since then, customers such as Hearst Media, DocuSign and McAfee have created more than 1.5 million workflows that have been launched more than 200 million times—all without writing a single line of code.
We wanted to bring this same ease of use to developers who have more complex problems to solve. With functions, workflows and triggers, it’s possible to easily create powerful automations. Functions define a single step, such as querying a database or calling an API, that can be combined in code as workflows—which can also include native Slack functions like creating a channel. Triggers define how workflows get called, and will include commands like shortcuts or events that can respond to app metadata.
The new Tables API will let you store any data required on Slack’s managed infrastructure. Tables includes all of the standard CRUD (create, read, update and delete) operations you expect and can operate at any scale, whether you need to manage a state temporarily or are building a complete data analysis system to work in Slack.
This combination of features means you can quickly build in access to additional tools by creating simple wrapper functions that call out to their APIs. Group functions together with Slack’s built-in functions, which call workflows easily with new triggers. A time-off approval workflow, for example, might use a message shortcut as a trigger to store the request in a data table, call out to an API to automatically generate the request, and send it to the appropriate person on the approval chain, all while keeping the requester informed and external systems updated at every step in the process.
Start building something powerful today
With new developer tools, hosting on Slack-powered infrastructure, and the ability to write custom functions and easily group them together as workflows, building secure, scalable custom apps and automations is easier than it’s ever been. Slack has also built on the security of its platform by adding more administrative tools to meet the demands of every customer, from small startups to enterprises with tens of thousands of people.
To get started, head over to the newest section on the Slack API site, where you can download the CLI and learn how to use all these incredible new features. Create an app and build custom functions in minutes, and test them right from your development machine before deploying to Slack’s managed infrastructure.
We can’t wait to see what you build with the latest addition to the Slack platform.