![見出し画像](https://assets.st-note.com/production/uploads/images/69766566/rectangle_large_type_2_b27b962b01e4066ee8a3b8b7855f2c0d.jpeg?width=1200)
プログラミングを使ってSlackにファイルをアップロードする方法
こんばんは、アリカと申します。
今回はプログラミングを使って、任意のファイルをSlackにアップロードする方法について解説していきたいと思います。
使用する言語は”Python”です。
Pythonを使った業務効率化例を紹介しています。
業務効率化に興味がある方はこちらの動画もご確認ください!
早速コードを書くかと思いきや、
今回のようなアプリとプログラミングを連携させる場合には、あらかじめ準備するものがあります。
それはAPIというものです。
知ってる方もいらっしゃると思いますが簡単に説明すると、APIとは”アプリケーション”と”プログラム”をつなぐ役割をしてくれます。
例えば、プログラムの方でこの情報が欲しいと言うと、このAPIが橋渡し役となって情報をとってきてくれます。
今回はSlackと連携させるのでSlack APIを取得していきます。
①Slack APIの取得
ホームページにアクセスします。
アクセスできたら、Create an app をクリックします。
![](https://assets.st-note.com/img/1641984280353-Uy0BpBX8Tt.jpg?width=1200)
Create an app を押すと、以下のような画面になると思います。
2つ選択肢があるので、上を選択します。
![](https://assets.st-note.com/img/1641984593055-ZFVWo6MFhD.jpg?width=1200)
名前を適当に決めて、ワークスペースを選択します。
完了したら、Create App を押します。
![](https://assets.st-note.com/img/1641984616809-mCYRTXL3Pw.jpg?width=1200)
下にスクロールして、Permissionsを押します。
![](https://assets.st-note.com/img/1641984716355-FCYjIIx3Wc.jpg?width=1200)
スコープ設定で、chat:writeとfiles:writeを選択します。
![](https://assets.st-note.com/img/1641987760333-fHs9HTQNPb.jpg?width=1200)
![](https://assets.st-note.com/img/1641987773808-FI23g9QD9d.jpg?width=1200)
選択できたら、Install to Workspaceを押してください。
![](https://assets.st-note.com/img/1641987942609-9DyawuxCwz.jpg?width=1200)
許可するか聞かれるので許可を押します。
![](https://assets.st-note.com/img/1641987961041-mYMjd1bctw.jpg?width=1200)
すると、トークンが発行されます。
このトークンが発行されれば事前準備は終わりです。お疲れ様でした :-)
(トークンは後で使用するので控えておいてください。)
![](https://assets.st-note.com/img/1641988111301-c47NbEQBVl.jpg?width=1200)
②コーディング
APIが取得できればあと少しです。
頑張りましょう!
コードを先に載せておきます。
![](https://assets.st-note.com/img/1641988709697-yd7zoHsE2x.jpg?width=1200)
ここで必要となってくるのが、URL,token,channels,filenameです。(titleは何でも大丈夫です。)1つずつ見ていきましょう。
URL
URLは下の画像(右下)にある通り、こちらとなります。
https://slack.com/api/files.upload
(こちらをコピーしていただければ問題ありませんが、一応Slack API files.uploadと検索すれば出てくると思います。)
![](https://assets.st-note.com/img/1641988836994-AEfJ5gRE5n.jpg?width=1200)
token
tokenは先ほど取得したものをコピペしてください。
channels
Slackを開いたときに左の欄にチャンネルがあります。(無ければ新規作成をしてください。)そこから適当なチャンネルを選択し、矢印の部分をクリックしてください。
![](https://assets.st-note.com/img/1641989189073-8mAAYur0Io.jpg?width=1200)
すると詳細画面になり、
下の方にチャンネルIDがあるかと思います。
これがchannelsです。
![](https://assets.st-note.com/img/1641989315180-7HgyCubxtl.jpg?width=1200)
※この時に、①で作ったアプリを追加しておいてください。
(インテグレーションを押して、アプリを追加するを押します。)
![](https://assets.st-note.com/img/1641990090552-sHxtvUs5ay.jpg?width=1200)
fillname
ファイルは適当なものを準備してください。
(今回はsample01.jpgを準備しました。)
指定する際は、絶対パスで指定するとうまくいくかと思います。
絶対パスとは単純にファイル名だけを記載するのではなく、イメージとしては、デスクトップにあるファイルのこの中にあるよ~みたいな感じで記載します。
詳しくは絶対パスで検索してみてください。
③実行結果確認
![](https://assets.st-note.com/img/1641989902227-FGUzEkSsUv.jpg?width=1200)
実行して200が返ってきていれば成功です。
スラックを開いてきちんとアップロードされているか確認してください。
※200と表示されているのに画像がアップされていない場合は、パスが間違っている可能性があります。
![](https://assets.st-note.com/img/1641990178887-T9h7sqaao1.png?width=1200)
問題なくアップされていました。
これにて完成です!
最後に
本日は少し長くなってしまいましたが以上となります。
スラックとうまく連携ができれば業務効率も上がると思います。
是非参考にしてみてください。
最後まで読んでいただきありがとうございました。
スキ・フォロー・コメントお待ちしております!
この記事が気に入ったらサポートをしてみませんか?