全力で怠けたい

怠けるために全力を尽くしたいブログ。

curl コマンドでメッセージを Slack に post するメモ。

Slack はデスクトップアプリとかブラウザーで使っているけど CLI からメッセージを post したりファイルをアップロードしたりがちょいちょいあるので、curl コマンドでメッセージを Slack に post したりするのをメモしておく。

curl コマンドでメッセージを Slack に post

シンプルなメッセージ

curl コマンドでシンプルなメッセージを Slack に post するには chat.postMessage メソッドを使う。

$ curl --request POST \
        --form channel=${SLACK_CHANNEL} \
        --form token=${SLACK_TOKEN} \
        --form 'text=Hello World!' \
        https://slack.com/api/chat.postMessage

SLACK_CHANNEL はメッセージを post する Slack のチャンネルとかグループの ID を指定する。 ブラウザーで Slack を表示するとアドレスバーが https://app.slack.com/client/xxxxxxxxx/yyyyyyyyy みたいになっていると思うので yyyyyyyyy の部分を指定すればよい。 SLACK_TOKEN は Slack OAuth トークンを指定しておく。

ファイルのアップロード

curl コマンドでファイルを Slack に upload するには files.upload メソッドを使う。

 curl --request POST \
     --form channels=${SLACK_CHANNEL} \
     --form token=${SLACK_TOKEN} \
     --form file=@${FILEPATH} \
     --form title=タイトル \
     --form initial_comment=コメント \
     https://slack.com/api/files.upload

FILEPATH はアップロードするファイルのパスを指定する。

参考ページ