Rocket.ChatのAPIでユーザーを一括登録する
Rocket.Chatの管理画面にインポートのメニューはあって、どうやらusers.csvを作って、zipにしてアップロードすればいいらしい、というのはわかったのですが、公式のCSVのページを見ると、パスワードは指定できないらしいです。
なるほど。
登録メールを受けてユーザーが自分で設定するのですね。
そうすればパスワードを知っている人が減る分セキュアですものね。
だがしかし、今回は研修で一時的に使う環境で、扱うデータも機密ではないし、ユーザーは書き込みもできないので、こちらから送るデータを手元で見てほしいだけ。
なので、パスワードはこちらで設定したい。
なので、APIから作ることにしました。
こちらも公式のUsers Createを確認して、まずはPostmanで1ユーザーだけ作成してみて、問題ないことを確認しました。
あとは、ローカルのPythonで、同じディレクトリに置いたCSVを読み込んで登録してしました。
CSVのフォーマットはこちらです。
メールアドレス, パスワード
nameとusernameは、メールアドレスの@より前にしました。
API実行時に必要なトークンとユーザーIDはこちら「Rocket.ChatにAPIで投稿するテスト(Postman)」をご参照ください。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
import csv import json import requests url = 'http://xxxxxxxxxxxxxx:3000/api/v1/users.create' headers = { 'X-Auth-Token': 'xxxxxxxxxxxxxxxxxxxxxxxxxxxx', 'X-User-Id': 'xxxxxxxxxxxxxx', 'Content-Type': 'application/json' } with open('users.csv') as f: reader = csv.reader(f) for row in reader: name = row[0][0:row[0].find('@')] user = { 'email': row[0], 'name': name, 'password': row[1], 'username': name } response = requests.post( url, data=json.dumps(user), headers=headers ) print(response.text) |
最後までお読みいただきましてありがとうございました!
【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。
【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。
【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。
【PR】 「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル」という本を書きました。

開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
docomo Developer supportの 雑談対話APIから自然対話APIへ移行しました
LINEやSlackのbotで重宝していた、雑談対話APIが終了する、とのことで …
-
-
SendGrid(Python)で添付ファイル付きのメールを送信する
SendGridを使って添付ファイル付きのメールを送信するサンプルをPython …
-
-
Redmine REST APIを操作するpython_redmineを試してみた
Redmine のGUIの登録が面倒なのでコマンドで登録、更新、時間の記録が出来 …
-
-
Pepperで撮影した写真をAmazon Rekognitionで分析してその結果をPepperがしゃべる ~(2)Pepper編~
Pepperで撮影した写真をAmazon Rekognitionで分析してその結 …
-
-
「streamlit勉強会」に参加しました
streamlitってなんだろう? と思いながら参加しまししました。 fin-p …
-
-
個人のGoogleカレンダーの予定をPythonで取得する
Google Calendar Twilio ReminderのGoogleカレ …
-
-
「神戸Pythonの会 #2 meetup」に行ってきました
「神戸Pythonの会 #2 meetup」に行ってきました。 所感など Ato …
-
-
SQLAlchemyのModelクラスをMySQLから自動生成する
SQLAlchemyのMySQLモデルを書くのが面倒で、きっと何かツールがあるの …
-
-
Python SQLAlchemy MySQLでテーブルを指定せずにFunctionを使う
難しく考えて悩んでいましたが、queryに書いてやればいいだけでした。 sess …
-
-
「MonotaRo Tech #3 テスト自動化」に行ってきました
モノタロウさんの「MonotaRo Tech #3 テスト自動化」に行ってきまし …