Adobe Learning Managerの2026年8月リリースのAPIの変更

Adobe Learning Managerのユーザーグループ管理API

このリリースでは、カスタムユーザーグループをプログラムで管理するための、管理者対象の新しい3つのパブリックAPIエンドポイントが追加されています。 管理者アプリを使用せずにカスタムユーザーグループを作成、名前変更および削除できるため、IDまたはプロビジョニングワークフローの一部としてグループ管理を自動化できます。

これらのエンドポイントは、カスタムユーザーグループでのみ動作します。 All Usersグループや自動生成ユーザーグループなどのシステム管理グループは、API応答でreadOnly: trueが返され、これらのエンドポイントを介して変更または削除することはできません。

API認証の要件については、Adobe Learning Manager API認証を参照してください。

ユーザーグループAPIエンドポイント

3つすべてのエンドポイントに、書き込み権限(ROLE_ADMIN)を持つ管理者アクセストークンが必要です。

メソッド
パス
操作
成功コード
POST
/primeapi/v2/userGroups
カスタムユーザーグループの作成
201作成日
PUT
/primeapi/v2/userGroups/
グループの名前または説明の更新
200 OK
DELETE
/primeapi/v2/userGroups/
カスタムユーザーグループの削除
204 No Content

一般的な要求ヘッダー

3つすべてのエンドポイントに、次のヘッダーが必要です。

Authorization: Bearer \<access-token\>
X-acap-user: \<user-id\>
X-acap-account: \<account-id\>
X-acap-caller-role: ROLE_ADMIN
Content-Type: application/vnd.api+json
Accept: application/vnd.api+json

ユーザーグループの作成

POST /primeapi/v2/userGroups

新しいカスタムユーザーグループを作成し、メンバーの初期リストを使用します。 グループは管理者アプリですぐに使用できるようになります。

リクエストの本文

{
  "name": "Marketing Team",
  "description": "Custom user group for marketing onboarding",
  "data": [
    { "type": "user", "id": "11282373" },
    { "type": "user", "id": "11282374" }
  ]
}

パラメーターの要求

パラメーター
必須
タイプ
説明
名前
string
グループの表示名です。 空白または空白のみにすることはできません。
説明
不可
string
グループの目的の説明(オプション)。
データ
配列
初期メンバー・リスト。 最小1アイテム、最大100アイテム。
data[].type
string
「user」である必要があります。 他のリソースの種類は受け付けられません。
data[].id
string
数値のユーザーID文字列。 ユーザーはアカウントに属し、ステータスがACTIVEである必要があります。

注意:​データ配列は、最初のメンバーリストを設定するために作成時にのみ使用されます。 作成後にメンバーを追加または削除するには、既存のユーザーグループメンバーシップエンドポイントを使用します。

応答201が作成されました

{
  "links": {
    "self": "https://<host>/primeapi/v2/userGroups"
  },
  "data": {
    "id": "2769204",
    "type": "userGroup",
    "attributes": {
      "dateCreated": "2026-06-04T14:19:53.000Z",
      "description": "Custom user group for marketing onboarding",
      "name": "Marketing Team",
      "readOnly": false,
      "userCount": 2
    }
  }
}

入力規則のPOST

#
検証
エラーコード
トリガー
1
名前が存在し、空白ではありません
USERGROUP_CREATE_NAME_REQUIRED
名前を省略するか、空白のみを使用します。
2
データには少なくとも1人のユーザーが含まれています
USERGROUP_CREATE_USERS_REQUIRED
データが存在しないか、空の配列です
3
データに含まれるユーザー数が100以下
USERGROUP_USERS_MAX_LIMIT_EXCEEDED
データに100を超えるエントリがあります[]
4
ユーザーIDはすべて数値文字列です
INVALID_USER_IDS
データ[].idに数値以外の文字列が見つかりました
5
すべてのユーザーがアカウントに存在し、ステータスがACTIVEである
INVALID_USER_IDS / USERGROUP_CREATE_USERS_NOT_IN_ACCOUNT
ユーザーが見つからないか、アクティブではありません
6
アカウントがカスタムグループの上限に達していない
400
カスタムグループのアカウントレベルの制限を超えました

ユーザーグループを更新する

PUT /primeapi/v2/userGroups/{id}

既存のカスタムユーザーグループの名前や説明を更新します。 このエンドポイントでは、グループメンバーを追加または削除できません。

いずれのフィールドも省略できます。フィールドを省略すると、現在の値は変更されません。 descriptionにnullを渡すとクリアされます。 nameに空白の文字列を渡すと拒否されます。

リクエストの本文

{
  "name": "Updated Group Name",
  "description": "Updated description text"
}

パラメーターの要求

パラメーター
必須
タイプ
説明
名前
不可
string
新しい表示名です。 指定する場合は空白にしないでください。 変更しない場合は省略します。
説明
不可
string
新しい説明。 クリアするにはnullを渡してください。 変更しない場合は省略します。
データ
null
nullまたは指定しないでください。 NULL以外の値を指定すると、400エラーが返されます。

応答200 OK

{
  "data": {
    "type": "userGroup",
    "id": "2767870",
    "attributes": {
      "name": "Updated Group Name",
      "description": "Updated description text",
      "readOnly": false,
      "state": "Active",
      "userCount": 3
    }
  }
}

入力規則のPUT

#
検証
エラーコード
トリガー
1
データがnullまたは存在しません
USERGROUP_UPDATE_USERS_NOT_ALLOWED
呼び出し元がNULL以外のデータを渡し、メンバシップの変更を試行しました
2
nameが指定されている場合、空白ではありません。
USERGROUP_UPDATE_NAME_BLANK
名前が空白のみの文字列として送信されました
3
グループはこのアカウントに存在します
INVALID_USER_GROUP_ID
不明な{id}パスパラメーター
4
グループはまだ削除されていません
DELETED_USERGROUP
グループは以前削除されました
5
Group readOnlyがfalseです
READ_ONLY_USERGROUP
システム管理グループ
6
グループはカスタム(非システム)タイプです
USERGROUP_UPDATE_OPERATION_NOT_ALLOWED
システム内部グループタイプ

ユーザーグループを削除する

DELETE /primeapi/v2/userGroups/{id}

指定したカスタムユーザーグループを削除としてマークします。 グループレコードは完全に削除されず、状態がDELETEDに設定されるため、管理アプリでは表示されず、新しい構成で使用することはできません。 グループIDは再利用できません。

リクエストの例

DELETE /primeapi/v2/userGroups/2767870
Authorization: Bearer <access-token>
X-acap-user: <user-id>
X-acap-account: <account-id>
X-acap-caller-role: ROLE_ADMIN

応答204コンテンツなし

応答の本文が空です。

注意: DELETEはべき等ではありません。 同じグループIDに2つ目のDELETEリクエストを送信すると、DELETED_USERGROUPコード(204ではなく)で400エラーが返されます。 400 DELETED_USERGROUP応答は、グループが既に削除されていることを確認したものとみなされます。 一括削除はサポートされていません。グループごとに個別のDELETEリクエストが必要です。

入力規則のDELETE

#
検証
エラーコード
トリガー
1
グループはこのアカウントに存在します
INVALID_USER_GROUP_ID
不明な{id}パスパラメーター
2
グループはまだ削除されていません
DELETED_USERGROUP
既にDELETEDステータスになっているグループに対してDELETEを繰り返す
3
Group readOnlyがfalseです
READ_ONLY_USERGROUP
システム管理グループ
4
グループはカスタム(非システム)タイプです
USERGROUP_UPDATE_OPERATION_NOT_ALLOWED
システム内部グループタイプ

Adobe Learning Managerの外部学習API

このリリースでは、外部学習機能用に、学習者を範囲とする5つの新しいAPIエンドポイントが追加されています。 これらのエンドポイントにより、学習者は、モバイルアプリ、統合された人事システム、またはカスタム学習ポータルからプログラムを使用して外部の学習申請を作成、取得、および更新できます。

APIを介した外部学習ワークフローは、学習者アプリのワークフローをミラーリングします。学習者がトレーニングの詳細とオプションの証明文書を送信すると、送信された内容を確認する通知が直接マネージャーに送信され、承認されると、学習者のトランスクリプトにレコードが表示されます。

5つのエンドポイントはすべて、学習者をスコープに設定します。 学習者は自分の提出物にのみアクセスできます。学習者が別の学習者のデータにアクセスしようとすると、APIはエラーを返します。

API認証の要件については、Adobe Learning Manager API認証を参照してください。

External Learning APIエンドポイント

すべてのエンドポイントに学習者アクセストークン(ROLE_LEARNER)が必要です。

メソッド
パス
操作
成功コード
GET
/primeapi/v2/externalLearningSettings
アカウントフォーム構成の取得
200 OK
GET
/primeapi/v2/externalLearning
呼び出し元の提出物を一覧表示する
200 OK
GET
/primeapi/v2/externalLearnings/
単一の送信を取得する
200 OK
POST
/primeapi/v2/externalLearning
新しい提出物を作成
201作成日
PUT
/primeapi/v2/externalLearnings/
保留中の送信の更新
200 OK

一般的な要求ヘッダー

Authorization: Bearer <access-token>
X-acap-user: <user-id>
X-acap-account: <account-id>
X-acap-caller-role: ROLE_LEARNER
Accept: application/vnd.api+json
Content-Type: application/vnd.api+json (POST and PUT only)

提出ステータスのライフサイクル

ステータス
​が設定
意味
学習者は更新できますか?
保留中
システム作成時
マネージャーのレビュー待ち
はい – PUT経由
APPROVED
マネージャー
承認済み:学習者のトランスクリプトに表示されます
No- PUTは409を返します。
却下
マネージャー
却下、レビューコメントを添付
いいえ – 新しい提出物を作成します

「APPROVED」および「REJECTED」は、最終状態です。 却下された提出物は再開できません。学習者は新しい提出物を作成する必要があります。

アカウントフォーム構成の取得

GET /primeapi/v2/externalLearningSettings

アカウントレベルのフォーム構成を返します。 送信フォームをレンダリングする前に、このエンドポイントを呼び出します。 応答は、表示するフィールド、必須のフィールド、そのデータタイプ、および管理者が設定したカスタムフィールドを定義します。

続行する前に、トップレベルの「有効」属性を確認してください。falseの場合、このアカウントの外部学習機能はアクティブではなく、送信エンドポイントによりエラーが返されます。

応答200 OK

{
  "data": {
    "id": "8627",
    "type": "externalLearningSettings",
    "attributes": {
      "enabled": true,
      "updatedAt": "2026-06-05T06:51:20.000Z",
      "coreFields": [
        { "id": "title", "type": "TEXT", "mandatory": true, "editable": false, "order": 0 },
        { "id": "description_notes", "type": "TEXT", "mandatory": false, "editable": true, "order": 1 },
        { "id": "date", "type": "TIMESTAMP", "mandatory": false, "editable": true, "order": 2 },
        { "id": "score", "type": "NUMBER", "mandatory": true, "editable": true, "order": 3 },
        { "id": "duration", "type": "TEXT", "mandatory": false, "editable": true, "order": 4 },
        { "id": "attachments", "type": "FILE_UPLOAD", "mandatory": true, "editable": true, "order": 5 }
      ],
      "customFields": [
        {
          "id": "960369b2-...",
          "type": "NUMBER",
          "mandatory": true,
          "order": 0,
          "label": { "en_US": "Employee Code" }
        },
        {
          "id": "3c6cc6d9-...",
          "type": "DROPDOWN",
          "mandatory": true,
          "order": 1,
          "label": { "en_US": "Department" },
          "options": [
            { "option_id": "opt_1", "label": { "en_US": "IT" } },
            { "option_id": "opt_2", "label": { "en_US": "HR" } },
            { "option_id": "opt_3", "label": { "en_US": "FIN" } }
          ]
        }
      ]
    }
  }
}

コアフィールドの参照

フィールドID
タイプ
既定の必須
メモ
title
TEXT
トレーニング名。 常に存在する。 管理者が無効にすることはできません。
description_notes
TEXT
不可
自由形式の説明またはメモ。
日付
タイムスタンプ
不可

日付範囲 Value shape: { “start_date”: “

”, “end_date”: “ ” }. どちらの値もnullにすることができます。

スコア
数値

値のシェイプ: { “achieved_score”:

, “max_score”: }. 両方の値は数値である必要があります。

duration
TEXT
不可
「40時間」などのフリーフォーム文字列。
添付資料
FILE_UPLOAD
完了証明書。 フィールド[]内に​ Not ​が渡されました。代わりに、トップレベルのsubmissionUrl属性を使用してください。

ユーザー設定フィールドは管理者によって定義され、customFields[]に返されます。 ID、タイプ、必須フラグ、ラベル、ドロップダウンオプションは、アカウント設定によって異なります。

提出のリスト

GET /primeapi/v2/externalLearnings

認証された学習者自身の提出物をページ順に並べ替えられたリストを、変更時降順(最後に変更された順)で返します。

クエリパラメーター

パラメーター
既定
最大
説明
ページ[オフセット]
0
5000
ゼロベースのレコードオフセットです。
ページ[制限]
10
100
1ページあたりのレコード数: 100を超える値は、100に固定されます。
ls_qp_status
ステータスでフィルタリングします。 すべての結果を省略します。 有効な値: PENDING、APPROVED、REJECTED (大文字と小文字は区別されません)。

応答200 OK

{
  "links": {
    "next": "/primeapi/v2/externalLearnings?page[offset]=10&page[limit]=10"
  },
  "data": [
    { "id": "1001", "type": "externalLearning", "attributes": { "status": "PENDING", ... } },
    { "id": "1002", "type": "externalLearning", "attributes": { "status": "APPROVED", ... } }
  ]
}

提出物を取得する

GET /primeapi/v2/externalLearnings/{id}

認証された学習者に属する1つの提出の完全なレコードを返します。

**応答200 OK

{
  "data": {
    "id": "1001",
    "type": "externalLearning",
    "attributes": {
      "submissionUrl": "https://<cdn-url>/cert.pdf",
      "title": "Java Fundamentals Certification",
      "status": "PENDING",
      "creationSource": "LEARNER",
      "createdAt": "2026-04-14T08:30:00.000Z",
      "modifiedAt": "2026-04-16T11:45:00.000Z",
      "fields": [ "...resolved against live settings..." ]
    },
    "relationships": {
      "reviewerUser": { "data": null }
    }
  }
}

提出物を作成

POST /primeapi/v2/externalLearnings

PENDING状態の新しい外部学習送信を作成します。 アカウント設定で定義されているすべての必須フィールドを含める必要があります。 POSTに成功すると、学習者のマネージャーはプラットフォーム内通知を受け取り、送信された内容を確認します。

ファイルのアップロード

添付ファイルフィールドは、他のフィールドとは別に処理されます。 フィールド[]内に含めないでください。 代わりに:

​1. ALMファイルのアップロードエンドポイントから、事前に署名されたS3アップロードURLを取得します。

2.そのURLにファイルをアップロードします。

3.生成されたURLを、POSTリクエストのトップレベルのsubmissionUrl属性として渡します。

リクエストの本文

{
  "data": {
    "type": "externalLearning",
    "attributes": {
      "submissionUrl": "<pre-signed-upload-url>",
      "fields": [
        { "id": "title", "type": "TEXT", "value": "Java Fundamentals Certification" },
        { "id": "description_notes", "type": "TEXT", "value": "Completed via online course platform." },
        { "id": "date", "type": "TIMESTAMP", "value": { "start_date": "2026-05-01T00:00:00.000Z", "end_date": "2026-05-15T00:00:00.000Z" } },
        { "id": "score", "type": "NUMBER", "value": { "achieved_score": 88, "max_score": 100 } },
        { "id": "duration", "type": "TEXT", "value": "40 hours" },
        { "id": "960369b2-...", "type": "NUMBER", "value": "1225" },
        { "id": "3c6cc6d9-...", "type": "DROPDOWN", "value": "opt_3" }
      ]
    }
  }
}

フィールド値シェイプ

フィールドの種類
値の図形
TEXT
文字列
「Javaの基礎」
数値
achieved_scoreおよびmax_scoreを持つオブジェクト
{ “achieved_score”: 88, “max_score”: 100 }
タイムスタンプ
start_dateとend_dateを持つオブジェクト(ISO 8601またはnull)
{ “start_date”: “2026-05-01T00:00:00.000Z”, “end_date”: null }
ドロップダウン
アカウント設定のoption_id文字列
“opt_3”
FILE_UPLOAD
フィールド[]内では許可されていません – submissionUrlを使用してください

入力規則のPOST

#
検証
トリガー
1
アカウントで外部学習が有効になっている
機能フラグは無効です
2
すべての必須フィールドがフィールド[]に存在します
必須フィールドを省略
3
各フィールドID、タイプ、および値のシェイプは、アカウント設定と一致します
間違ったタイプまたは不正な形式の値オブジェクト
4
FILE_UPLOAD型がフィールド[]内に存在しません
submissionUrlではなくフィールド[]内に添付ファイルが送信されました
5
submissionUrlは有効なS3事前署名URLです
作成時にCDN URLと非S3 URLが拒否される
6
attachments.mandatoryがtrueの場合、submissionUrlが存在します
添付ファイルは必須ですが、submissionUrlがありません

提出物の更新

PUT /primeapi/v2/externalLearnings/{id}

既存のPENDING送信を更新します。 更新できるのはPENDING提出物のみです。 APPROVEDまたはREJECTEDの提出をPUTしようとすると、409エラーが返されます。

このエンドポイントは完全置換セマンティクスを使用しています。 変更するフィールドだけでなく、すべてのPUTリクエストで完全なフィールド[]配列を指定します。 配列から省略されたフィールドはクリアされます。

学習者が更新できるフィールド

フィールド/属性
学習者は更新できます
メモ
フィールド[]
完全置換 – 変更されたフィールドだけでなく、すべてのフィールドを含む
submissionUrl
CDN URLはPUT時に受け入れられます。S3の事前署名URLはPOST時にのみ必要です。
reviewerUserId
不可
マネージャーのアクションで設定、学習者には読み取り専用
reviewedAt
不可
マネージャーのアクションで設定、学習者には読み取り専用
reviewerComment
不可
マネージャーのアクションで設定、学習者には読み取り専用
学習目標
不可
マネージャーによって制御:承認待ち→承認または拒否
creationSource
不可
APIが作成した提出物については常に学習者
createdAt
不可
作成時に設定;変更不可

リクエストの本文

{
  "data": {
    "type": "externalLearning",
    "attributes": {
      "submissionUrl": "<cdn-url>/cert-v2.pdf",
      "fields": [
        { "id": "title", "type": "TEXT", "value": "Java Fundamentals — Updated" },
        { "id": "description_notes", "type": "TEXT", "value": "Updated notes." },
        { "id": "date", "type": "TIMESTAMP", "value": { "start_date": null, "end_date": null } },
        { "id": "score", "type": "NUMBER", "value": { "achieved_score": 92, "max_score": 100 } },
        { "id": "duration", "type": "TEXT", "value": "42 hours" },
        { "id": "960369b2-...", "type": "NUMBER", "value": "1227" },
        { "id": "3c6cc6d9-...", "type": "DROPDOWN", "value": "opt_2" }
      ]
    }
  }
}

LTの学習者関連の資格認定IDとルート資格認定IDのAPI

繰り返し行われる資格認定が更新されると、Adobe Learning Managerは新しいバージョンの資格認定を作成し、アクティブな学習者を自動的に登録します。 Adobe Learning Managerの学習者エクスペリエンスに依存せずに資格認定データを直接問い合わせる統合の場合、このAPIを使用すると、繰り返し行われる資格認定のうち、特定の学習者に関連するバージョンを常に正確に特定できます。

APIの目的

繰り返し行われる資格認定では、更新するたびに新しい資格認定IDが生成されます。 ネイティブのAdobe Learning Manager学習者エクスペリエンスでは、各学習者に関連するバージョンのみが表示されます。 学習者が新しいバージョンに移動すると、古いバージョンは自動的に非表示になります。

社外ポータルで資格認定情報を表示する場合など、統合で資格認定データを個別に取得する場合は、このフィルタリングが自動的に適用されないことがあります。 この機能がなければ、学習者は、繰り返し行われる資格認定の履歴バージョンを確認できます。この履歴バージョンには、関連のなくなった資格認定も含まれ、どの資格認定に基づいて行動するかが示されません。

このAPIは、このギャップを解決しました。 ルート認証IDを指定すると、特定の学習者に適用される特定の認証バージョンが返され、その登録履歴と再発が考慮されます。

認定の繰り返しについて

証明書が繰り返し使用されるように設定されている場合、更新ごとに固有のIDを持つ新しい証明書バージョンが作成されます。 すべてのバージョンでは、最初に作成された時点の元の証明書のIDである単一の​ ルート証明書ID ​をトレースします。

たとえば、毎月繰り返される証明書は、一定期間にわたってバージョンのシーケンスを生成し、繰り返しの間隔に達すると、新しいバージョンごとに自動的に生成されます。 繰り返しが発生したときにアクティブに登録されている学習者は、新しいバージョンに自動的に登録されます。

各バージョンには固有のIDがあるため、学習者に関連するバージョンは、学習者の個々の登録タイムラインによって異なります。

  • 繰り返し前に登録し、次の繰り返しが発生する前に資格認定を完了した学習者は、時間の経過とともに複数のバージョンに移行します。

  • 繰り返しサイクルの途中で登録した学習者は、登録時に最新のバージョンに直接登録されます。

関連する認定バージョンの決定

資格認定バージョンAPIを使用して、特定の学習者に関連する繰り返し資格認定のバージョンを特定します。

ルート証明ID​を入力として指定します。 APIは、学習者の登録履歴を評価し、次のルールに基づいて適切なバージョンを返します。

学習者の状態
APIが返す結果
学習者が資格認定にまだ登録されていません
資格認定の最新バージョン
学習者は現在登録されています
学習者が現在登録している特定のバージョン。最初の登録以降に発生した再発を考慮に入れます。

これは、同じルート資格認定IDを同時に問い合わせる2人の学習者が、各学習者の個々の登録履歴に応じて異なる結果を受け取る可能性があることを意味します。

注意:新しいバージョンが作成され、登録が移行されている間、繰り返しの実行中に短い期間が発生する場合があります。この期間には、APIが、新しく作成されたバージョンではなく、置き換えられるバージョンを返す場合があります。

毎月繰り返される証明書について考えてみます。この場合、繰り返しの繰り返しにより、時間の経過とともに4つのバージョンが作成されています。

  • 最初のバージョンに登録し、発生した各繰り返しごとに作業を進めた学習者は、バージョンに戻されます。現在アクティブな状態であり、自分の完了と繰り返しの履歴を反映しています。最新バージョンが存在しているとは限りません。

  • まだ登録していない学習者は、最後に作成したバージョンに戻ります。これは、新しい登録が参加する必要があるバージョンであるためです。

これにより、統合は、すべての履歴バージョンを表示したり、適用される推測を行ったりするのではなく、常に学習者に関連する認定バージョンを示すことができます。

API のリファレンス

ルート証明の該当する証明を取得する

GET /primeapi/v2/learningObjects/{loId}/applicableCertification

ルート資格認定のIDを指定して、現在の学習者に適用される資格認定のバージョンを解決します。 登録されている学習者の場合、現在登録されているバージョンが返されます。 登録されていない学習者の場合は、最新の有効なバージョンが返されます。

プロパティ
スコープ
学習者の読み取りアクセス
レート制限(標準の学習者呼び出し)
70リクエスト/分
レート制限(管理者特権または管理者レベルのAPI資格情報)
500リクエスト/時
応答形式
application/vnd.api+json

注意:このAPIは、一度に1人の学習者のバージョン情報を返します。 資格認定のすべてのバージョンのリストは返されません。

パスパラメーター

パラメーター
必須
タイプ
説明
loId
string
学習目標のID。具体的には、該当するバージョンが要求されているルート資格認定です。 これは、標準のアクセス権限に従います。

クエリパラメーター

パラメーター
必須
タイプ
説明
include
不可
string
subLOや登録など、解決された資格認定とともに応答に含める関連モデルのカンマ区切りリスト。 他のAdobe Learning Manager学習オブジェクトエンドポイントと同じinclude構文を使用します。

リクエストの例

GET /primeapi/v2/learningObjects/certification%3A167658/applicableCertification?include=subLOs
Accept: application/vnd.api+json
Authorization: oauth <access-token>
curl -X GET --header 'Accept: application/vnd.api+json' \
--header 'Authorization: oauth <access-token>' \
'https://<host>/primeapi/v2/learningObjects/certification%3A167658/applicableCertification?include=subLOs'

注意: loId値はURLエンコードされている必要があります。 certification:167658などの証明IDのコロンは%3Aとしてエンコードされます。

応答200 OKの例

応答は、標準の学習目標応答と同じ構造を使用して、解決された資格認定を返します。

重要:​応答のIDフィールドは、解決済み​の資格認定のIDです。これは、この学習者に適用される特定のバージョンです。 このAPIの全体的な目的は、ルートIDを正しい現在のバージョンに変換することであるため、通常は、loIdとして渡されたルート証明書IDとは異なります。

{
  "data": {
    "id": "string",
    "type": "string",
    "attributes": {
      "authorNames": [
        "string"
      ],
      "bannerUrl": "string",
      "catalogs": [
        ...
      ]
    }
  }
}

応答コード

ステータス
意味
200
該当する資格認定は正常に解決され、応答として返されます。
400
指定されたloIdは、証明書でないか、ルート証明書ではありません。 loIdとして、繰り返しバージョンではなく、元の証明書のIDを渡します。
401 / 403
要求に有効な学習者の資格情報がないか、資格情報に必要なアクセス権がありません。
404
このルート証明書のアクティブな証明書を解決できませんでした。 例えば、チェーン内のすべてのバージョンが廃止または削除された場合、または証明書にルート証明書の参照が記録されていない場合などです。 バージョンが正常に解決されても、呼び出し元の学習者がバージョンのカタログにアクセスできない場合にも、404が発生することがあります。
500
証明書の解決中に予期しないサーバーエラーが発生しました。 要求を再試行してください。エラーが解決しない場合は、サポートに問い合わせてください。

エラー応答の例

{
  "meta": {
    "error": "string",
    "detail": "string"
  }
}

注意:​このAPIは、呼び出しごとに1人の学習者のバージョンを解決します。 ルート証明書に存在するすべてのバージョンのリストは返されません。

重要なポイント

  • 繰り返さない資格認定:​渡したloIdが繰り返し設定されていない資格認定の場合、APIはその資格認定自体を返します。

  • スキップされた中間バージョン:​学習者のアクティブな登録が前のバージョンから後のバージョンに直接移動され、アクティブな登録がない場合、APIは学習者の実際の現在のバージョンに正しく解決されます。 学習者が積極的に関与しなかった中間バージョンの存在は、解像度に影響しません。

  • 削除された証明書と削除された証明書:​削除された証明書のバージョンは、解決から完全に除外されます。 廃止済みの証明書は、その状態に応じて引き続き考慮される場合があります。解決可能な状態のまま特定のバージョンに依存している場合は、その時点の状態を確認してください。廃止済みであると仮定するのではなく、現在の状態を確認することによって考慮から削除されます。

  • 解決策は明確です:​学習者の登録データが矛盾する状態にある場合(複数の登録が最新としてマークされているなど)、APIは予期しない結果やエラーを返すのではなく、最後に作成されたバージョンに解決します。

注意:このAPIに相当する管理者スコープのAPIは現在利用できず、今後のリリース用に評価されています。

統合でこのAPIを使用する

一般的なユースケースは、学習者がアクセスできる資格認定をリストする外部ページまたはポータルです。 繰り返し使用すると古くなる可能性がある、特定の資格認定IDに直接リンクするのではなく、 ルート資格認定IDを使用してリンクし、学習者が選択した時点で正しいバージョンを解決します。

1.繰り返しが発生する前に、最初に作成された証明のIDである​ ルート証明ID、 ​を使用して、統合の証明を保存または参照します。

2.学習者が資格認定を選択して表示または操作する場合は、GET /primeapi/v2/learningObjects/{loId}/applicableCertificationを呼び出し、ルート資格認定IDをloIdとして渡します。

3.回答で返された資格認定バージョンを使用して、登録アクションであるか現在の進捗状況のビューであるかにかかわらず、学習者を正しい宛先に導きます。

これにより、たとえ資格認定が時間の経過とともに繰り返され、新しいバージョンを作成したとしても、学習者は実際の登録と進捗状況に合ったバージョンの資格認定を常に利用できます。

レポート:学習者トランスクリプトに含まれるルートトレーニングID

ルートトレーニングID​列は、すべてのアカウントの学習者トランスクリプトでデフォルトで使用できます。

行の種類
ルートトレーニングID値
繰り返し実行するように構成された証明
このバージョンがトレースするルート証明ID
繰り返し実行するように構成されていない証明
その行のトレーニングIDと同じ値
資格認定内に埋め込まれたコース
コース自体のIDではなく、親資格認定のルート資格認定ID
資格認定に含まれないコースまたは学習パス
その行のトレーニングIDまたは埋め込みコースIDと同じ値

注意 :資格認定の数が多い非常に大規模なアカウントの場合、学習者のトランスクリプトのルートトレーニングID値はバッチで解決されます。 これによりデータの精度は変わりませんが、文字起こしのサイズが大きいと、生成に時間がかかる場合があります。

この列では、繰り返しの各繰り返しを無関係な独立したレコードとして扱うのではなく、繰り返し行われる資格認定の各バージョンにわたる学習者の完全な履歴をグループ化してレポートすることができます。 各繰り返しは、学習者トランスクリプトに独自の行として表示されます。 「ルートトレーニングID」列には、同じ基礎となる資格認定に属する行が表示されます。

注意:​繰り返し行われる資格認定において、学習者の参加履歴をすべてトレースする必要がある場合は、[ルートトレーニングID]列を使用してください。

recommendation-more-help
learning-manager-help-migrated