メインコンテンツにスキップ

カタログAPI統合

:robot_face:

注意:英語以外の言語の記事はAIの助けを借りて翻訳されています。正確さを目指していますが、一部の表現がわずかに異なる場合があります。改善の余地がある点に気づかれた場合は、ぜひご意見をお寄せいただけると幸いです。

統合について

DataCampは、カタログおよびグループの学習者イベント(コース完了など)を取得するための読み取り専用APIを提供しています。組織は通常、カスタムLMSや現時点で直接統合がないLMSと統合するためにこのAPIを使用します。この種の統合を使用すると、システムはDataCampからコンテンツを取得し、DataCampがコンテンツをシステムにプッシュするのではありません。

当社のAPI技術ドキュメントには、利用可能なエンドポイント、リクエストおよびレスポンスのスキーマ、認証、レート制限、およびエラーに関する詳細情報が含まれています。技術ドキュメントはこちらでご覧いただけます: https://datacamp.stoplight.io/docs/lms-external-catalog-api

コンテンツタイプ

当社のAPIは現在、全カタログを提供しています:

  • コース

  • プロジェクト

  • アセスメント

  • プラクティス

  • トラック

  • カスタムトラック

コンテンツタイプは、それぞれのエンドポイントを通じて提供されます。詳細は技術APIドキュメントに記載されています。

各コンテンツタイプには2つのエンドポイントがあります:ライブエンドポイントとアーカイブエンドポイントです。LMSをカタログと同期させるために、アーカイブエンドポイントを使用して、どのコンテンツが利用できなくなったかを判別し、それに応じてシステム内でもアーカイブすることができます。例として、ライブおよびアーカイブされたコースは以下の2つのエンドポイントを使って取得できます:

  • /v1/catalog/live-courses

  • /v1/catalog/archived-courses

コンテンツに変更があったかどうかを判断するには、コンテンツアイテム内にネストされたcontentUpdatedAtフィールドを使用してください。このフィールドはコンテンツが最後に更新された日時を示します。

トラック

トラックは、特定の順序で配置されたコース、アセスメント、プラクティス、およびプロジェクトの集合体であり、他のコンテンツタイプとは異なります。

トラックエンドポイントは、キャリアおよびスキルトラックの両方を提供します。

カスタムトラック

カスタムトラックは特別なコンテンツタイプで、特定のグループにのみ表示されます。提供されるカスタムトラックは、リクエストに使用されるAPIキーによって決まり、そのキーはお客様のグループに紐づいています。

イベント

APIはまた、学習者の行動や達成に関連するイベントも公開しています。現在公開しているイベントは以下の通りです:

  • 完了イベント(コース、プロジェクト、プラクティス、アセスメントに対して)

  • 開始イベント(コースに対して)

このエンドポイントを通じて取得されるイベントは、お客様のグループに特有のものであり、お客様の組織のDataCampグループに紐づいたAPIキーを使用してのみ閲覧可能です。

DataCampの学習者とお客様のLMSの学習者を関連付けるために、以下のユーザー識別子を公開しています:

  • メールアドレス

  • SSO NameId(SSOが設定されており、ユーザーにName IDが存在する場合)

メタデータ

APIで提供されるほとんどのコンテンツアイテムには、トピックや技術などのメタデータが含まれています。これらのメタデータはコンテンツアイテム内にテキストとしてネストされていますが、完全なリストとして取得したい場合に備えて、それぞれ独自のエンドポイントでも提供しています。

SSOとディープリンク

DataCampは、シームレスなサインイン体験を可能にするSSOサポートを提供しており、学習者が外部LMSからDataCampへワンクリックで直接アクセスできます。

APIで提供されるコンテンツには、学習者を直接SSOアイデンティティプロバイダーへ送信して認証を行い、その後元々要求されたDataCampのコンテンツにリダイレクトするURLが含まれています。

この機能の前提条件は、DataCampでSSOが設定および有効化されていることです。

セットアップ

APIの使用を開始するには、2つの簡単なステップがあります。

まず、APIキーを取得する必要があります。DataCampサポートまたは貴社の指定されたDataCamp CSMに依頼すると、安全な通信チャネルを通じてキーが送られます。このキーは、以降のHTTPリクエストのAuthorizationヘッダーに「Bearer: 」をプレフィックスとして含めてください。

次に、キーが機能していることを確認するために最初のHTTPリクエストを送信します。任意のツール(Postman、Insomniaなど)を使用できますが、以下はcurlを使ってコース一覧を取得する例です:

curl -X GET https://lms-catalog-api.datacamp.com/v1/catalog/live-courses \
  -H "Authorization: Bearer <access_token>"

正常に動作していれば、HTTPステータスコード200とコース一覧を含むJSONレスポンスボディが返されます。

よくある質問

エンドポイントとスキーマはどこで確認できますか?

API技術ドキュメントでご確認いただけます:https://datacamp.stoplight.io/docs/lms-external-catalog-api

APIにレート制限はありますか?

はい、レート制限があります。詳細は技術APIドキュメントに記載されています。

こちらの回答で解決しましたか?