注:ワークフローテンプレートファイルのダウンロードはこちら。
概要
このプロセスでは、Oktaワークフローを活用して、訪問者とそのメタデータをPendo Adoptにプッシュする方法を説明します。Oktaワークフローによって訪問者のメタデータをスケジュールに基づいて自動的に更新できるため、Pendoではこの方法を推奨しています。
要件
-
ワークフローテンプレートファイル(ここからダウンロード)。
-
管理者としてのPendo Adoptへのアクセス権。
-
スーパー管理者としてのOktaワークフローへのアクセス権。
OktaとPendoの接続を作成する
1)Oktaの[接続(Connections)]タブに移動します。今回は、Okta用とPendo Launcher用の2つの接続アプリケーションを設定します。
2)[+新しい接続(+ New Connection)]をクリックし、汎用APIコネクタアプリケーションを選択します。
3)次に、[接続ニックネーム(Connection Nickname)]、[認証タイプ(Auth Type)]、[ヘッダー名(Header Name)]、[ヘッダー値(Header Value)]の4つのフィールドに値を入力するように求められます。最初の3つのフィールドの最初の値は、以下のとおりです。
-
接続ニックネーム:{Name of your choosing}
-
認証タイプ:カスタム
-
ヘッダー名:x-pendo-integration-key
4番目のフィールド、[ヘッダー値]の値を見つけるには、Pendo Adoptに移動する必要があります。
4)Pendo Adoptで、[設定(Settings)]>[インテグレーション(Integrations)]に移動し、[インテグレーションキーを生成(Generate Integration Key)]をクリックして、[書き込みアクセスを許可(Allow Write Access)]にチェックを入れます。インテグレーションキーが作成されたら、Oktaワークフローに戻り、値をコピーして[ヘッダー値(Header Value)]フィールドに貼り付けます。
5)[アプリケーション(Application)]列の上にある[+新しい接続(New Connection)]をクリックします。
6)青色のOktaの接続を選択します。
7)Oktaの指示に従い、[接続ニックネーム(Connection Nickname)]、[ドメイン(Domain)]、[クライアントID(Client ID)]、[クライアントシークレット(Client Secret)]フィールドを入力します。
8)Oktaコネクタを追加すると、[接続(Connections)]タブにOktaコネクタがアプリケーションとして表示されます。新しいアプリケーションには、アプリケーションへの接続が機能していることを示す緑色のチェックマークが表示されます。
新しいフォルダーの作成
9)[フォルダー(Folders)]セクションの青いプラスボタン(1)をクリックし、フォルダーに名前を付けます。このデモでは、このフォルダーを「Nightly Pendo Sync」(2)という名前にします。ファイル名は、このプロセス全体を通して必要になりますので、意味のあるものにしてください。
10)先ほど作成した「Nightly Pendo Sync」フォルダーの横にある歯車アイコンをクリックします。次に、ここにあるワークフローテンプレートファイルをインポートします。
注:ワークフローテンプレートファイルをダウンロードしないと、このプロセスの残りのステップを進めることができません。
11)ヘルパーフローが正常にインポートされたら、ヘルパーフローの名前の左側にある[オン/オフ(ON/OFF)]ボタンを切り替えて、各ヘルパーフローをすぐにオンにします。下図のように、すべてのヘルプフローをオンにする必要があります。
注:ここでは、スケジュールされたメインフローをオンにしないでください。
ワークフローの接続
12)Pendoメタデータエンドポイントサブフローへのプッシュリストを開きます。
13)ブランチカードで、各コネクタのカードの上部にあるPendo接続を選択します(1,2)。次のコネクタカードに、Pendo接続を選択するように指示するメモがあります。名前は、ステップ2で指定したニックネームになります。
14)[メイン - Oktaユーザーを毎晩テーブルに読み込んでPendoに同期(Main - Read Okta Users to Table Nightly and Sync to Pendo)]というタイトルのワークフローをクリックします。
15) [フィルターでユーザーを一覧表示する(List Users with Filter)]カードに移動します。[共有接続(Shared Connections)]フィールドで、以前に作成したPendo Oktaワークフローアプリケーションを選択します。このオプションが利用できない場合は、[新しい接続(New Connection)]を選択し、Okta接続を選択します(その名前は、上記のステップ7で指定したニックネームになります)。
16) 2枚目の[フィルターでユーザーを一覧表示する(List Users with Filter)]カード(1)で、[共有接続(Shared Connections)]として[Okta接続(Okta Connection)]を選択します。
警告:テストを実行すると、Pendoのサブスクリプションにユーザーやメタデータフィールドが作成されます。入力したいメタデータフィールドを設定するまでは、テストを実行しないでください。入力するメタデータフィールドの設定が完了したら、以下の[テスト(Test)](1)ボタンを使ってワークフローをテストできます。
カスタムメターデータフィールドの設定
17)Oktaで利用可能なフィールドを確認するには、2枚目の[フィルターでユーザーを一覧表示する]カードのみでテストを実施します。カード下部にある[再生(Play)]ボタンをクリックし、[テスト]をクリックすると、再生することができます。
18)結果の[アウトプットの生データ(Raw Output)]ボックスに、profileというフィールドがあります。profile object内のフィールドは、Pendoにプッシュ可能なOktaのフィールドです。大文字・小文字に細心の注意を払いながら、ここからインポートするフィールドをメモします。
19)ステップ18でメモした各フィールドを、[オブジェクトの取得(Object Get)]カードの[選択した値(Selected Values)]リストの下部に追加します。
20)[オブジェクトの取得]カードから追加したフィールドを[オブジェクトの作成(Object Construct)]カードにドラッグします。
注:4つのフィールドが事前に入力されています。これらのデフォルトのフィールドが不要な場合は、その上にカーソルを置くと、小さなxボタンが表示されます。不要なフィールドは、GetとConstructの両方のカードから完全に削除する必要があります。
21)[コールフロー(Call Flow)]カードで、訪問者IDキーにメールが入力されていることを確認します。このフィールドに渡されたキーは、メタデータフィールドとしてではなく、訪問者IDとしてPendoに渡されます。
注:Pendoでユーザーを識別するためにメール以外のフィールドを使用している場合、この値をそのフィールド名に合わせて修正します。
任意:Oktaに存在するがPendo拡張機能をインストールしていないユーザーをPendoに作成するには、[コールフロー(Call Flow)]カードの[存在しないユーザーの作成(Create Non-existing User)]ドロップダウンをクリックし、[はい(True)]を選択します。[はい(True)]を選択すると、そのユーザーがサブスクリプションに訪問者としてまだ存在しない場合、Oktaはその訪問者をPendoに追加します。新しく作成された訪問者のメタデータは、訪問者のエージェントブロックに表示されます。
22)これで、メタデータをPendoにプッシュするための「テスト」を実行できます。システム内のユーザーの数によっては、このテストの実行に数分かかる場合があります。限定されたサブセットでテストしたい場合は、最初の [フィルターでユーザーを一覧表示する]カードに入力フィルター値を追加することで行うことができます。オプションがある場合は、[Flowを通過するすべてのデータを保存する(Save all data that passes through the Flow)]をオンにします。これに関する詳細は、こちらのOktaのドキュメントをご覧ください。
23)Oktaで設定したメタデータフィールドは、Pendo Adoptのメタデータタブに表示されます([設定(Settings)]>[メタデータ(Metadata)])。各メタデータフィールドに[タイプ(Type)]を設定します。たとえば、okta_idは[タイプ]を[テキスト(Text)]に設定します。
ヒント:最初のテスト実行が完了してから、新しいフィールドに入力されるまで15分かかる場合があります。
注:Oktaで設定した各メタデータフィールドには、簡単に識別できるようにokta接頭辞が付けられます。これらのフィールドの名前は自由に変更することができます。各メタデータフィールドに正しいタイプが与えられると、セグメントビルダーはメタデータに固有のルールを追加で適用できるようになります。たとえば、セグメントビルダーでokta_createdを選択すると、より前(before)、より後(since)、間(between)、過去の指定期間内(within last)、過去の指定期間外(not last)でフィルタリングできます。
スケジュールされたフローを設定する
24)[メイン - Oktaユーザーを毎晩テーブルに読み込んでPendoに同期(Main - Read Okta Users to Table Nightly and Sync to Pendo)]というタイトルのメインフローに移動します。
25)[スケジュールされたフロー(Scheduled Flow)]カードの時計アイコンをクリックします。
26)フローを実行する頻度を設定します。Pendoでは、フローを1日1回、セグメント化が変更されていない夜間に実行するように設定することをお勧めします。フローはデフォルトでは午前1時45分(米国東部標準時)に実行されます。Pendoでは、フローの実行は1日に1回までにすることを推奨しています。それ以上の頻度で実行すると、フローの実行が重複し、予期しない結果が生じる可能性があります。ご自身の責任において実行してください。
27)このプロセスの最後のステップでは、スケジュールされたタイマーをオンにします。以前に[テスト]をクリックしたことがある場合は、すでにオンになっている可能性があります。
よくある質問
[ユーザーオブジェクト(User Object)]ヘルパーフローの[値のフォーマット(Format Value)]が数千回実行されていますが、これは数千回のAPIコールを行っているということでしょうか?
いいえ、このヘルパーフローは、どのようなAPIコールも実行しません。この数値は、ユーザー数とそのカスタムメタデータのフィールド数を乗算したものです。たとえば、70人のユーザーと10個のフィールドがある場合、このヘルパーフローは700回実行されることになります。ユーザーの数、設定したフィールドの量によって、この数値は変化します。