Slackには招待メールを送れる数に地味に制限があるようで、
しかしながら軽く調べてみても、明確な数値の記載がないみたいだったので調べてみた。
https://get.slack.help/hc/en-us/articles/201330256#invitation_limits
ちなみに、招待を送っているけどあんまり承認されてない時に制限をかけるら?しい。
※ 雑に調べたので信憑性に欠けるかもしれません
非公式API
https://api.slack.com/methods に載ってないですが、招待メールを送るAPIがあるようです。
https://TEAM_NAME.slack.com/api/users.admin.invite?email=EMAIL&token=TOKEN&set_active=true
TOKENはadmin権限のユーザーのtokenが必要なようです。
参照 : http://qiita.com/hiconyan/items/634df8b5fb2392fc90cd
検証コード
雑な感じですが、とりあえず1000回試してみるコード
require 'faraday'
require 'json'
token = 'set-your-admin-user-token'
team_name = 'set-your-team-name'
1000.times do |i|
conn = Faraday.new(url: "https://#{team_name}.slack.com/api/users.admin.invite")
response = conn.get do |req|
req.params[:email] = "your.email+#{i + 1}@hogehoge.com"
req.params[:token] = token
req.params[:set_active] = true
end
json = JSON.parse(response.body)
next puts "#{i + 1} ok" if json['ok']
break puts "#{i + 1} #{json['error']}"
end
99 ok
100 ok
101 invite_limit_reached
101回目でエラーが。
試しに違うチームを作ってもう一度やってみる
99 ok
100 ok
101 invite_limit_reached
こちらも101回目でエラー
結果
100人までは大丈夫みたいでした。
ちなみに制限に達した場合、過去の招待をrevokeしたとしても制限が解除されるわけではないっぽいので、注意が必要です。
制限を解除するにはslackのサポートに問い合わせる必要があるようです。