LoginSignup
0
0

More than 1 year has passed since last update.

[Slack API] Slackに投稿できるテキストの文字数上限が3000文字でした

Last updated at Posted at 2023-02-07

APIを使ってslackにメッセージを送るときにエラーが出た

slackにメッセージを送るために下記の関数を使っていました。(コードはGoogleAppsScriptです)

function sendToSlack(url, text) {
  const payload = {
    "blocks": [
      {
        type: "section",
        text: {
          type: "mrkdwn",
          text: text
        }
      }
    ]
  };

  const options = {
    'method': 'post',
    'contentType': 'application/json',
    'payload': JSON.stringify(payload)
  };

  UrlFetchApp.fetch(url, options);
}

これまでは問題なかったのですが、ある時下記のエラーが出ました。

Exception: Request failed for https://hooks.slack.com returned code 400. Truncated server response: invalid_blocks (use muteHttpExceptions option to examine full response)

結論: テキストの上限は3000文字

上記サンプルでいうと、text.length が 3000以下の場合は問題ないのですが、3001以上になると上記のエラーになることが確認できました。

ポイントとしては、markdownとしての修飾文字 (* とか _ など)や、 emoji (:smile:など) も文字数としてカウントされるので、markdown使うときは注意ですね!

0
0
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
0
0