【Slack】Curlコマンドでメッセージを送信するには?API有効化からPOSTでメッセージを送信するまでの手順

コマンド

curlコマンドを使用し、Slackへメッセージを送信する方法を紹介します。

スポンサーリンク

Slack APIとは?

Slack APIとは、Slackのサービスをプログラムから利用できるようにするサービスです。Slackへのメッセージ送信のほか、ほかのユーザーが送信したメッセージに自動的に応答したり、さまざまなことが可能になります。

PythonやNode.jsなど、プログラミング環境にあわせたライブラリも提供されており、対応している環境であれば容易にbotなどのプログラムを構築することが可能です。一方、POSTなどのHTTP通信により、ライブラリを使わずにAPIを利用することもできます。

この記事ではSlack APIを利用できるようにする手順から、ライブラリを使わずcurlコマンドだけでメッセージを送信するまでの手順を紹介します。

スポンサーリンク

Incoming Webhook APIを有効にする

まずはSlackのAPIを有効にしましょう。

Slack APIを利用できるようにするには、チャンネルに対応したSlackアプリを作成する必要があります。Slack上にアプリを作成し、そのアプリにAPIを用意することで、プログラムから利用できるようにします。とはいえ、アプリの作成からAPIの有効化まで、すべてブラウザでの操作で完結できますので、それほど気構える必要はありません。

Slack APIにアクセスし、Slackアプリを作成していきます。

Unlock your productivity potential with Slack Platform
Connect, simplify, and automate work.

[Create an App]をクリックします。

[From scratch]をクリック。

App NameとAPIから利用したいチャンネルを選択し、[Create App]をクリックします。

つづけて、Webhook APIを作成します。

Webhook APIとはPOSTやGETといったhttpsにより、メッセージを送受信することができるAPIです。特別なライブラリなどを使用することなく、httpsさえ利用できればSlackとの連携が可能になります。今回はこちらを使用してみます。

[Incoming Webhooks]をクリックします。

トグルボタンをクリックし、ONにしましょう。

最後にWebhook APIのURLを作成します。

ページ下の[Add New Webhook to workspace]をクリックします。

Slackへのアクセスを求められますので、許可します。

すると、URLが作成されます。

このURLにPOSTすることにより、メッセージを送信することができます。

curlコマンドでメッセージを送信してみよう!

あとは送信するだけです。

curlコマンドを使用し、Slackへメッセージを送信してみましょう。

curl -X POST -H 'Content-type: application/json' --data '{"text":"Hello, World!"}' [WebhookのURL]

Webhook URLにJSONをPOSTします。

Slackのメッセージを確認してみましょう。

ちゃんとメッセージが来ました!

まとめ

いかがでしたか?思ったよりかんたんにメッセージを送ることができました。

特別なライブラリを使用しなくても、POSTするだけでメッセージを送ることができますので、手軽にSlackへ通知することができます。Linuxであればcurlコマンドは最初からインストールされていますので、サーバーからの異常通知などさまざまな応用が考えられます。

また、SlackはAPIドキュメントも充実しています。サンプルコードも多く掲載されていますので、ぜひ読んでみることをおすすめします。なにか発見があるかもしれませんよ~

Sending messages
Transform monologues into conversations, and conversations into workflows, by learning how apps can publish messages

コメント

タイトルとURLをコピーしました