SmartHR Web API を使って、Office365 にユーザー情報を自動的に登録:RSSBus Connect
前回の記事で SmartHR Web API の基本的な機能の確認をしました。
今回は実際にありそうなユースケースベースでお伝えしたいと思います。
シナリオ
SmartHRはおそらく会社の中で一番最初にユーザーを登録する場所なので、そのデータを元に会社の各システムにユーザー情報を連携させる、というニーズが強いんじゃないかなと思います。
そこで、私も個人的に利用しているOffice365 を使って、「新入社員が SmartHRに登録されたら、Office365に新しくユーザーを作成する」というシナリオでシステムを構成してみました。
SmartHR と Office365 の接続にはRSSBus Connectというデータ連携ツールを利用します。
RSSBus Coonectとは?
RSSBus Connectは、ファイル、データベース、またはクラウドアプリケーションのデータをすべて1つのアプリケーションで簡単に統合することができるソフトウェアです。
アプリケーションとデータの接続を行い、Mrketoなどのマーケティングサービスから得た顧客情報をSalesforce等のSFAに連係したり、バイナリファイル転送・EDIによるプロセスの自動化も行うことが可能です。
RSSBus Connectは以下のようにフロー形式のUIで各データソースを繋ぐようにデータ連携のプロセスを開発することが可能です。
実行イメージ
処理内容は単純です。以下のような感じで、新しくSmartHRに新入社員が登録されたら
RSSBusConnectがバッチで起動し、SmartHR Web APIを経由して、作成された社員情報を取得。
Office365 ユーザー情報に変換し、GraphAPIを経由してユーザー情報を作成します。
以下のように登録されて完了となります!
これで、新入社員が入るたびにユーザー情報を Office365 に作成する手間が省けるかなと。
RSSBus 利用手順
それでは実際の利用手順を見ていこうと思います。
今回はすでに私が作成したRSSbusのテンプレートがあるので、それをインポートして、認証情報などを設定するだけでサクッと試すことが可能です。
必要なもの
・RSSBus Connect
・Office365 Port
・Office365 アカウント(トライアルあり)
・SmartHR アカウント(トライアルあり)
Office365 ClientIDとClientSecretの取得について
RSSBusの準備を始める前に、Office365 アカウントについて1点注意事項があります。
RSSBus Connectには標準でOffice365 GraphAPIにアクセスするためのClientIDとClientSecretが提供されていますが、セキュリティ上の考慮のため、ユーザーの作成や削除権限が付与されていません。
下記手順でAzure ADに新しくOAuth用のアプリを作成し、対象のアプリにユーザー情報を作成するための権限を付与しておいてください。
RSSBus Connect と Office365 Portのインストール
RSSBus Connect は以下のURLからトライアルを取得可能です。
製品のダウンロード後、以下のようなウィザードに従ってインストールを進めます。
そんなに難しい部分はありませんが、インストールやトライアルのアクティベーションは下記のBlogで詳しく解説しています。
Office365 Port のインストール
以下のURLからexeファイルをダウンロードして、インストールを実施します。
https://s3-ap-northeast-1.amazonaws.com/cdatajbuilds/sugimototest/SmartHR/CXTD-A_6950_free.exe
特に難しい設定はないので、そのまま次へ次へと進めればOKです。
RSSBus Connect に SmartHR Script とテンプレートのインストール
現在、RSSBus Connect の標準機能としてSmartHRの接続は提供されていないません。
なので、私が作成しましたSmartHRの接続サンプルを以下のURLからダウンロードして、使ってみてください。
テンプレートのインストール方法はこちらから。
SmartHR 接続情報の設定
それでは、実際に動かせるように RSSBus Connect の設定作業を進めていきます。
まず、SmartHR Web API を利用してJSONデータを取得している「GetSmartHRCrew」をクリックし、XMLの中の各設定値を変更します。
変更が必要なものは「TenantId」と「AccessToken」です。この部分は前回のBlogでも解説しているので、参考にしてみてください。
必要に応じて、Domainも変更します。現在はサンドボックス環境に接続するために「daruma.space」を指定しています。
ちになみにデフォルトでは、夜の11時くらいに実行して、当日作成されたユーザーを取得する想定で、 SmartHRのWeb APIをリクエストしています。
設定完了後、「Save Changes」ボタンをクリックして、設定を反映させます。
Office365 認証設定
次に「InsertOffice365User」をクリックして、設定を行います。
前述したように、RSSBus Connect には標準でClientIDとClientSecretが提供されていますが、権限が不足しているので、独自に作成したアプリのClientIDとClientSecretを
「Advanced」→「Other」の項目の中に以下のようなフォーマットで入力します。「XXXXXX」の部分をそれぞれの値に差し替えてください。
OAuthClientId=XXXXXXXXXX;OAuthClientSecret=XXXXXX;
次に「Settings」タブに移動して、接続するTenantID(hogehoge.onmicrosoft.com)を入力し、「Connect to Office365」をクリックすれば、OAuth認証が開始されます。
OAuth認証のアクセス許可が承諾されれば、設定完了です。
マッピングの変更
最後に SmartHR のデータを Office365 ユーザーとして登録する際に、どの項目をどこに当てはめるのか? といったマッピングの構成を「XMLMapCrewToUser」で行います。
「XMLMapCrewToUser」をクリックすると、SourceとDestinationそれぞれのタブがあるので、ドラッグアンドドロップなどでマッピングを変更することができます。
今回はユーザーを作成するにあたって必要最低限の以下の項目だけ設定しています。
・AccountEnabled = true を固定値で設定 ・DisplayName = SmartHR の姓・名をつないで設定 ・MailNickname = SmartHR の社員番号を設定 ・UserPrincipalName = SmartHR のEmailを設定 ・PasswordProfile_ForceChangePasswordNextSignIn = true を固定値で設定 ・PasswordProfile_Password = P@ssw0rd!を固定値で設定
以上で設定は完了です。
手動実行の方法
手動で実行する場合は一番最初のモジュールである「GetSmartHRCrew」の「Output」タブから、「Receive」ボタンをクリックすればOKです。
定期実行の構成
定期的に実行するように構成したい場合は、同じく「GetSmartHRCrew」の「Automation」タブから「Receive」を有効化して、任意の時刻設定を指定するだけです。
おわりに
今回はOffice365 と接続しましたが、他にも RSSBus Connect はADやLDAPといったDirectoryサービスや各種クラウドサービスのコネクタを提供しているので、SmartHRのデータを様々なサービスへ手軽に展開できると思います。
[接続先コネクタ一覧]
是非試してみてください。
「ZOZO 前澤社長のお年玉リツイート企画はどのくらい世の中に影響を与えたのか?」イベントを開催することになりました!
先週公開した「ZOZO 前澤社長のお年玉リツイート企画はどのくらい世の中に影響を与えたのか?500万件超えのリツイート情報の取得と分析を個人的に試みる!(仮)」記事なんですが、思いの外様々な方々から反響をいただきました!
実際にPayPalでご支援いただける方も居て、大変ありがたい限りです!
そして、Facebookでたまたま知り合いました MaP design Founder の 渡部さんご協力のもと、1月28日に日本マイクロソフト品川本社セミナールームでイベントを開催することになりました!
当日は、様々な方のご協力のおかげで実現できた500万件の取得をベースに
「Twitter APIを利用して500万件超えのリツイート情報を取得する方法」
「取得したデータから見る最新のTwitter マーケティング活用アプローチ」をお伝えする予定です!
あのリツイート騒動からなんとか1週間ほどで告知に漕ぎ着けられました。
ぜひぜひ、熱が冷めないうちにこのタイムリーなイベントに参加してみてください!
お金をもらえたはずなのに、むしろお金がかかるみたいなコンテンツに協力していただけた 渡部 さんと 日本マイクロソフトの Shohei Oda さんには大感謝です!
また、Blog公開時からご支援頂いた かがたさん、フロッグポッド小林さん、インフラジスティックス・ジャパン 東さん、エンバカデロ井之上さん、ありがとうございます!
ZOZO 前澤社長のお年玉企画リツイート企画はどのくらい世の中に影響を与えたのか? 500万件超えのリツイート情報の取得と分析を個人的に試みる!(仮)
ZOZOタウンの前澤社長が当該ツイートをリツイートしてくれた人の中から100名を対象に100万円(総額1億円)をプレゼントしてくれるという、なんとも太っ腹? な企画が動いていますね。
ZOZOTOWN新春セールが史上最速で取扱高100億円を先ほど突破!!日頃の感謝を込め、僕個人から100名様に100万円【総額1億円のお年玉】を現金でプレゼントします。応募方法は、僕をフォローいただいた上、このツイートをRTするだけ。受付は1/7まで。当選者には僕から直接DMします! #月に行くならお年玉 pic.twitter.com/cKQfPPbOI3
— Yusaku Maezawa (MZ) 前澤友作 (@yousuck2020) 2019年1月5日
Twitter上だけでなく、各メディアでも話題になっています。
申込みは1月7日12時締切になりまして、私が見たときには550万リツイートとツイッターのリツイート数世界1位になったみたいです!
私も面白い企画だなーと思って乗ってみたのですが、気になるのは対象100名の決定方法!
いろんな憶測ツイートでも出ている通り、標準のTwitterの機能だと結構制限が厳しいです。 でも、制限が厳しいとやってみたくなりますよね?
それにこんな面白そうなビッグデータ、なかなか無いのではないか?
せっかくなので、このデータを分析してみたい! どんなユーザーがリツイートしているのか知りたい! ボットはどのくらい居そう? リツイートの影響数はどのくらい? この企画の期間中にツイッターアカウントを作成した人はどのくらい?
そんないろいろと気になる疑問があったので、解決方法を探ってみました!
続きを読むWeb API の使われ方を分析するクラウドサービス「Moesif」を触ってみた
ちょうど昨日、2019年1月05日に興味深いプレスリリースがありました。
Web API管理ツールは数あれど、Web APIの分析を核としたサービスは珍しいなーと思ってみていました。
でも、CEOのコメントを見ると、昨今のAPIエコシステム、FintechによるAPI提供から垣間見えるデベロッパーチャーンを如何に防ぐか? といった課題・問題意識から作られたサービスであることがわかります。
Moesifの協同ファウンダーでCEOのDerric Gillingによると、MoesifはMixpanelやGoogle Analyticsに近いが、WebやモバイルのアナリティクスではなくAPIの使われ方を見る。“APIを作って提供する企業や、それらを利用する企業がますます増えているから、API利用の顧客であるデベロッパーがどんな使い方をしているのか、彼らは何かの問題に遭遇していないか、デベロッパーチャーン(developer churn, 他社API利用への移行…浮気)をどうやって減らせばよいか、等々を知る必要性が生じている”。
そういう意味では、結構今の環境をおさえたサービスで今後の展開・発展も含めて面白そうだったので、さくっとですが触ってみました。
公式サイトはこちらから。
- 何ができるのか?
- デモ環境を触ってみた
- Event Stream
- Segment Chart
- Time Series
- Geo Heatmap
- Smart Diff/Correlation
- User Analytics
- Alert
- Moesif の機能について
- クラウドプロキシで簡単なAPIを分析できる状態にしてみる
- 最後に
2018年の活動棚卸しと2019年の方針をまとめてみる
Power BI を使って Exchange の各ユーザーカレンダーを横断して分析できるようにする:CData Exchange Power BI Connector
今回は「Power BI 勉強会 @ 東京 #11」のランチセッションで発表するための記事になります!
また、この記事の内容は以下の動画でも提供しています。
4分くらいなので、さくっと見てもらえるかと。
- やりたいこと
- 実現するにあたっての課題
- 実現アプローチ
- CData Power BI Exchagne Connector のインストールと接続設定
- Power BI から Exchange Online に接続