6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Slack 公式 SDK に関する情報のリンク集

Last updated at Posted at 2021-12-18

こんにちは、Slack で公式 SDK 開発と日本の DevRel を担当しております @seratch と申します。

この記事では、私もその一員である Slack の Developer Relations チームが開発・メンテナンスしている公式 SDK についての情報をまとめておきます。

SDK の一覧

現在、安定版として提供されている SDK は以下の通りです。

名称・ドキュメント ダウンロード 説明
Bolt for JavaScript

slack.dev/bolt-js (日本語 :flag_jp:)
github.com/slackapi/bolt-js

npm: @slack/bolt
Node.js で動作するフル機能の Slack アプリ開発フレームワーク。2019 年に最初の Bolt としてリリースされ、最も広く利用されている。
Bolt for Python

slack.dev/bolt-python (日本語 :flag_jp:)
github.com/slackapi/bolt-python

PyPI: slack-bolt
Python 3.6+ で動作するフル機能の Slack アプリ開発フレームワーク。Python らしいデコレーターを用いたデザイン。Flask、Django はもちろん、Asyncio ベースのフレームワークにも対応。FaaS での実装をより簡便にする Lazy Listener という仕組みも提供。2020 年 11 月のリリースながら、この一年で利用が急拡大中。
Bolt for Java/Kotlin

slack.dev/java-slack-sdk (日本語 :flag_jp:)
github.com/slackapi/java-slack-sdk

Maven Central: g:com.slack.api a:bolt*
JDK 1.8+ で動作するフル機能の Slack アプリ開発フレームワーク。Java での利用を想定しているが Kotlin 向けの Block Kit DSL なども提供している。Spring Boot はもちろん、Micronaut、Ktor などのフレームワークにも対応。Java を多く利用する企業で幅広く利用されている。
Node Slack SDK

slack.dev/node-slack-sdk/ (英語のみ)
github.com/slackapi/node-slack-sdk

npm: @slack/*
Slack プラットフォームの機能を低レベルのインタフェースで提供するライブラリ群。bolt-js も内部的に web-api、oauth、types、socket-mode ライブラリを利用している。
Python Slack SDK

slack.dev/python-slack-sdk/ (英語のみ)
github.com/slackapi/python-slack-sdk

PyPI: slack-sdk
Slack プラットフォームの機能を低レベルのインタフェースで提供するライブラリ群。bolt-python も内部的に slack-sdk を利用している。
Java/Kotlin Slack SDK

slack.dev/java-slack-sdk/ (日本語 :flag_jp:)
github.com/slackapi/java-slack-sdk

Maven Central: g:com.slack.api
Slack プラットフォームの機能を低レベルのインタフェースで提供するライブラリ群。bolt も内部的に slack-api-model、slack-api-client、slack-app-backend ライブラリを利用している。
Python Discovery API SDK

Discovery API ドキュメント (英語のみ)
github.com/slackapi/python-slack-discovery-sdk

PyPI: slack-discovery-sdk
Enterprise Grid プラン限定の Discovery API を利用するための SDK とサンプル実装。Discovery API の有効化等のお問い合わせは担当営業までお願いいたします。

以下は引き続きメンテナンスしておりますが、新しいプロジェクトでの利用は推奨しておりません。

名称・ドキュメント ダウンロード 説明
Slack Events API adapter for Python (Flask required)

github.com/slackapi/python-slack-events-api
github.com/slackapi/python-slack-events-api

PyPI: slackeventsapi
Events API リリース時に開発された Flask の拡張ライブラリ。このライブラリを使う場合 3 秒タイムアウトへの対応には別途非同期実行の仕組みが必要。新規の開発には Bolt for Python を推奨している。
Hubot Slack Adapter

slack.dev/hubot-slack/ (英語のみ)
github.com/slackapi/hubot-slack

npm: hubot-slack
Hubot 向けの Slack アダプター。内部的には RTM API を使っており、新規の開発にはソケットモードを推奨している。

また、先日発表になったホスティング環境を提供する新しいプラットフォーム基盤については、現在クローズドベータ中です。

こちらについては専用の CLI と Deno SDK を提供しておりますが、これらのツールのソースコードはこの記事時点で公開されていません。公開時期は未定です。

終わりに

新しいプラットフォームのツール以外は全て GitHub 上で OSS ライセンスでソースコードを公開しています。フィードバックがございましたら、ぜひお気軽に GitHub issues でお知らせください :wave: (ただし、日本語ではなく 英語で お願いいたします :bow:

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?