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

Cognite OData サービス

Cognite は、OData クライアント(たとえば Microsoft Power BIMicrosoft ExcelTIBCO Spotfire など)を使用して Cognite Data FusionCDF)からデータを取得するための OData サービスを提供します。

Open Data Protocol (OData) は、RESTful API の構築と利用に関するベストプラクティスを定義するオープン スタンダードです。OData は以下を提供します。

  • 標準化されたクエリ構文:異なるデータ ソースに対して一貫したフィルタリング、並べ替え、ページング、プロジェクションを可能にします。

  • メタデータのサポート:クライアントは、メタデータ ドキュメントを通じてデータ構造とタイプを発見できます。

  • 相互運用性:HTTP をサポートし、OData を理解するすべてのクライアントが OData サービスを利用できます。

Cognite は asset-centric OData サービス] と データモデル化 OData サービス] を提供します。両方のサービスは標準の Cognite API をラップし、読み取り専用の目的で OData Version 4 API を実装する中間層として機能します。これにより、OData リクエストを対応する Cognite API 呼び出しに変換し、OData 互換のクライアントやツールを使用して CDF データを操作することができます。

OData サービスの使用方法

Cognite OData サービスを操作するには、特定のエンドポイントに HTTP GET リクエストを送ります。

認証

OData サービスの認証を受けるには、HTTP リクエストの認証ヘッダーにベアラー トークンを含める必要があります。

例:

Authorization: Bearer {YourAccessToken}

設定に適した認証フロー(OAuth 2.0、OpenID Connect など)を使用して、アクセス トークンを取得できます。詳細については、認証ドキュメントを参照してください。

リクエストを行う

GET リクエストの例

プロジェクト内のすべてのアセットを取得するには、以下の手順に従います。

GET https://{cluster}.cognitedata.com/odata/{apiVersion}/projects/{project}/Assets

ここで

  • {cluster}:CDF クラスター名(例: westeurope-1)。
  • {apiVersion}:OData サービス API バージョン(例: v1)。
  • {project}:CDF プロジェクト名。
クエリ パラメータ

クエリ パラメータを使用してデータをフィルタリング、並べ替え、選択、およびページングします。

  • フィルタリング - $filter クエリ パラメータを使用してデータをフィルタリングします。

    :Name'Pump 1' に等しいアセットを取得します: GET .../Assets?$filter=Name eq 'Pump 1'

  • フィールドの選択- $select クエリ パラメータを使用して特定のフィールドを取得します。

    :アセットの IdName のみを取得します: GET .../Assets?$select=Id,Name

  • 並べ替え - $orderby クエリ パラメータを使用して結果を並べ替えます。

    :Name で昇順にアセットを並べ替えます: GET .../Assets?$orderby=Name asc

  • 関連エンティティの展開 - $expand クエリ パラメータを使用して関連エンティティを含めます。 :親アセットと一緒にアセットを取得します: GET .../Assets(702630644612)/Parent?$expand=Parent

    注意:すべてのエンティティと関係が展開をサポートするわけではありません。詳細については、個別のサービス ドキュメントを参照してください。

  • *クエリ パラメータの組み合わせ - 複数のクエリ パラメータを組み合わせてリクエストを絞り込むことができます。

    :Name'Pump' で始まり、Name で並べ替えられ、最初の 10 件の結果を取得するアセットの IdName を取得します。 GET .../Assets?$filter=startswith(Name,'Pump')&$select=Id,Name&$orderby=Name asc&$top=10

レスポンス形式

OData サービスは、OData V4 標準に従って JSON 形式でレスポンスを返します。

レスポンスの例:

{
"@odata.context": "https://{cluster}.cognitedata.com/odata/{apiVersion}/projects/{project}/$metadata#Assets/",
"value": [
{
"Id": "12345",
"DataSetId": null,
"ExternalId": "WMT:VAL",
"Name": "Pump 1",
"Description": "Main pump"
// other properties
}
]
}
レスポンスのページング

OData サービスは、大きな結果セットについてはレスポンスをページングする場合があります。レスポンスには、結果の次のページを取得するための URL がある @odata.nextLink プロパティが含まれています。

例:

{
"@odata.context": "https://{cluster}.cognitedata.com/odata/{apiVersion}/projects/{project}/$metadata#Assets",
"value": [ // records ],
"@odata.nextLink": "https://{cluster}.cognitedata.com/odata/{apiVersion}/projects/{project}/Assets?$skipToken=123"
}

制限およびサポートされている機能

OData サービスは OData V4 標準に準拠することを目指していますが、Cognite API の基礎的な制約により一部の機能が制限される場合やサポートされない場合があります。

サポートされている機能と制限に関する詳細情報は、個別のサービス ドキュメントを参照してください。