Skip to main content
このレポートは、従来のプロバイダーが提供していた個人別コンプライアンスエクスポートのうち、トレーニングに関する部分です。ディレクトリ ID と、トレーニング受講登録ごとに 1 人につき 1 行(モジュールのステータスと日付)で構成されます。 粒度はロングフォーム(人 × 割り当て)です。これは GET /v1/assignments/{id}/enrollments がすでに返す形式であるためです。このクエリでは、モジュールを列にピボットしません。
ポリシーの承諾状況は、このレポートに含まれません。Living Security にはポリシー承諾 API がないため、従来のそれらの列は対応付け待ちではなく、対象外です。従来のエクスポートとの相違点を参照してください。
セットアップ、認証情報、ページネーション、レート制限時の再試行は、Power BI / Excel 接続ガイドと同じです。最初に共有の Fn_FetchAll クエリを追加してください。このレポートは、そのクエリを名前で呼び出します。

必要なキースコープ

ソースエンドポイント

このクエリは GET /v1/entities を呼び出しません。受講登録の行がすでに email と display_name を持っており、エンティティ一覧には部署や役職がないため、これを取得しても、受講登録の行にないディレクトリ列は補えません。

粒度

受講登録(人 × 割り当て)ごとに 1 行です。同じコースが 2 つの割り当てで割り当てられた人には 2 行が生成されます。受講登録のない人は表示されません。/v1 は、メールアドレスなしでは使用可能なディレクトリ行を出力できず、人のみの行を作成すると粒度が混在してしまうためです。 リクエスト予算: 割り当てごとに 1 回のページ送り取得を、キー単位の共有レート制限の範囲内で順次実行します。必ず limit = "500" を設定してください。

列のマッピング

従来の列名は、以前のプロバイダーのエクスポートに基づきます。/v1 のフィールドは公開 API 名です。クエリでは、レポート用に一部の名前を別名にしています。 スタースキーマモデル用に保持する結合キー: entity_id、assignment_id、course_id、user_assignment_id。 クエリでは、course_slug、assignment_title、passed、attempts、assignment_lifecycle_status、assignment_created_at も保持します。enrollment_status は割り当てのライフサイクルではなく、受講者の進捗です(active / paused / completed)。

従来のエクスポートとの相違点

  • ポリシーの承諾状況は利用できません。 このプラットフォームにはポリシードメインがなく、/policies、/policy_acceptances、またはそれに相当する /v1 リソースはありません。これらの列を対応付け待ちとして扱わないでください。対象外です。
  • ディレクトリの追加情報は省略され、null にはなりません。 部署、役職、マネージャー、所在地は /v1 にありません。クエリは、これらの空の列を作成しません。
  • 期限日は含まれます。 従来のエクスポートになかった場合でも、Enrollment.due_at が API にあるためです。
  • コース名はカタログのタイトルを優先します。 Course.title がモジュール名です。Assignment.title は、カタログの行が存在しない場合(削除または非公開)にのみ使用されます。
  • ロングフォームであり、ピボットされません。 受講登録ごとに 1 行であり、モジュールごとに列を持つ 1 人 1 行の形式ではありません。

次のステップ

Power BI と Excel のセットアップ

認証情報、ページネーション、Power BI または Excel でのこれらのクエリの読み込み。

メールフィッシングログ

過去 12 か月間のフィッシングインタラクションのイベント単位のログ。

最も感染しやすいユーザー

個人別の過去 12 か月間のクリック、認証情報、報告の集計。

API キー

このレポートを更新するキーに training:read と course:read を付与します。