SlackのAPIをリクエストする時に、スレッドのタイムスタンプってどう取得するの?ってわからなくなるケースがありますね。その時に覚えておきたいタイムスタンプの取得方法を紹介します。
slackのAPIにおけるタイムスタンプを使うケース
slackのAPIでタイムスタンプを使うケースは以下のようなものがあります。
- 投稿されたメッセージを削除する
- ピン止めの追加(or 削除)
- リアクションの追加(or 削除)
他にどんな使い方があるかは、SlackAPIのドキュメントを確認してください。
値は以下のように渡すことになるでしょう。
1 2 3 4 |
const payload = { "channel": channelId, "ts": timestamp }; |
SlackAPIのタイムスタンプの取得方法
SlackAPIで使うタイムスタンプの取得方法は非常に簡単です。投稿されたメッセージのURLにあります。投稿されたメッセージのURLは、メッセージの「リンクをコピー」から取得することができます。
![](https://web-tweets.com/wp-content/uploads/2023/08/get-timestamp-scaled-e1691936075810.jpg)
「リンクをコピー」した場合のURLは以下のように表示されます。
![URLのパスにあるタイムスタンプの箇所](https://web-tweets.com/wp-content/uploads/2023/08/url-path-to-timestamp-scaled-e1691937253173.jpg)
上記画像にチャンネルIDの記載も注釈がありますが、timestampを値として渡すときにチャンネルIDもセットで必要になることが多いので、チャンネルIDもURLに記載があることを覚えておきましょう。
また、timestampを値で渡すときは、パスにある「p」を取り、数字末尾から6文字目にドット「.」を入れる必要がありますので注意が必要です。
![タイムスタンプの処理](https://web-tweets.com/wp-content/uploads/2023/08/handling-timestamps-scaled-e1691937408714.jpg)