Help us understand the problem. What is going on with this article?

Slack API を使いチームへの招待作業を自動化する

More than 3 years have passed since last update.

はじめに

Slack とは ?

Slack

Slack はチームで使うチャットサービスの一つです。同じようなサービスに、HitChatChatWork があります。

Slack チームへの参加方法は 2 種類

Slack では以下の 2 種類の方法でチームに参加できます。

  1. 新規メンバーから参加申請
  2. 既存メンバーによる招待

Team Settings

しかし、『 1. 新規メンバーから参加申請 』 の方法では、登録するメールアドレスのドメインを制限する必要があります。

そのため、ドメインを持たないグループ (ユーザーズグループ、勉強会のグループ、など) では 『 2. 既存メンバーによる招待 』 の方法を取らざるを得ません。この招待を自動化したい、というのがこの記事の主題です。

Slack API について

Slack は Slack API として REST 形式の API が提供されています。チームへの招待も API が存在するのですが、公式の API 一覧には載っていません (非公式 API 扱いのようです)。

コンソールから、以下のようにして呼び出せます。

$ curl -X POST 'https://TEAM.slack.com/api/users.admin.invite' \
--data 'email=EMAIL&token=TOKEN&set_active=true' \
--compressed

TEAM は、スラックのチーム名 (英数字) で、EMAIL に招待する人のメールアドレスが入ります。TOKEN は、Slack Web API のページから作成できます。

API を利用して自動招待する

招待するプログラムを書く

POST リクエストを送るだけの簡単な処理なので、お好きな言語でプログラムを書けば終了です。
以下は、私が Crystal で作った自動招待プログラムの例です。

crystal-jp-slack-invite

既存のプロジェクトのコードを利用する

Node.js で書かれた汎用招待プログラムが GitHub 上で公開されています。これを利用すると、簡単に招待ページを作ることができます。

まとめ

Slack API を使うと、チームへ招待するプログラムが作ることができます。Slack で快適なチャットライフを!

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした