OData エンドポイントは、サービスの機能を説明するサービス ドキュメントを提供します。 これらのサービス ドキュメントを理解すると、使用している環境で使用できるリソースを使用するのに役立ちます。
サービス ドキュメント
Web API エンドポイントで GET 要求を実行して、環境のサービス ドキュメントを表示します。
Web API エンドポイントは次のようになります: https://yourorg.api.crm.dynamics.com/api/data/v9.2/。 この部分: yourorg.api.crmは、環境によって異なります。 検索方法については、開発者向けリソースを表示 をご覧ください。
推奨される環境設定で不眠症を使用している場合は、_.webapiurl環境変数を使用するだけです。
次のような結果が表示されます。
{
"@odata.context": "https://yourorg.api.crm.dynamics.com/api/data/v9.2/$metadata",
"value": [
{
"name": "accountleadscollection",
"kind": "EntitySet",
"url": "accountleadscollection"
},
{
"name": "accounts",
"kind": "EntitySet",
"url": "accounts"
},
...
サービス ドキュメントには、環境内で使用可能なすべての EntitySet の 一覧が表示されます。 EntitySet は、Dataverse のテーブルを参照するリソースの名前です。 URL のエンティティ セット名を使用して、特定のテーブル内のデータに対する操作を実行します。
ヒント
このドキュメントの結果で Ctrl + F キー を押して、正しいエンティティ セット名を見つけます。
エンティティ セット名
論理コレクション名ではなく、必ずエンティティ セット名を使用してください。 既定では、エンティティ セット名は EntityMetadata.LogicalCollectionName プロパティ値と一致しますが、これに依存しないでください。
エンティティ セット名の変更
別のエンティティ セット名を使用してアドレス指定するカスタム テーブルがある場合は、 テーブル EntityMetadata.EntitySetName プロパティ値を更新して別の名前を使用できます。 変更できるテーブルのプロパティについて説明します
Important
テーブルの EntitySetName は、テーブルを作成するときと、テーブルを使用してコードを記述する前にのみ変更する必要があります。 古い名前を使用したコードは中断されます。
CSDL $metadata ドキュメント
$metadataを Web API エンドポイントに追加して、共通スキーマ定義言語 (CSDL) $metadataドキュメントを取得します。
例: https://yourorg.api.crm.dynamics.com/api/data/v9.2/$metadata
この XML ドキュメントでは、環境内で使用できるすべてのテーブルと操作について説明します。
次の手順を使用して、Visual Studio Code と Powershell を使用して CSDL $metadata ドキュメントをダウンロードできます。
Important
このドキュメントは、Web API に関連するすべての真実のソースです。 頻繁に参照することをお勧めします。 このドキュメントの Ctrl+F を使用して、使用する特定の EntityType、 Action、 Function、 ComplexType、または EnumType を見つけます。 名前は大文字と小文字が区別されます。
メタデータ注釈
$metadataからさらに多くの情報を取得するには、URL に ?annotations=true を追加します。
例: https://yourorg.api.crm.dynamics.com/api/data/v9.2/$metadata?annotations=true
このパラメーターの設定には、役に立つさまざまな種類の注釈が含まれます。 ほとんどの注釈は、ドキュメントの合計サイズが大きくなるため、既定では含まれません。
これらの注釈は、 Prefer: odata.include-annotations="*" 要求ヘッダーを追加して返すこともできます。 この要求ヘッダーは、他の種類の要求でも機能します。
annotations=true クエリ パラメーターは、$metadata ドキュメントに対してのみ機能します。
サービス名前空間
$metadataの上部付近には、次の XML 要素があります。
<edmx:DataServices>
<Schema Namespace="Microsoft.Dynamics.CRM" Alias="mscrm" xmlns="http://docs.oasis-open.org/odata/ns/edm">
この要素は、サービス内のすべての項目が Microsoft.Dynamics.CRM 名前空間内にあり、 mscrm が名前空間のエイリアスであることを通知します。 場合によっては、オブジェクトの完全修飾名を使用する必要があるため、名前空間の値を使用する必要があります。
次のステップ
エンティティ型について説明します。
こちらも参照ください
Web API の種類と操作
Web API エンティティ型
Web API のプロパティ
Web API ナビゲーション プロパティ
Web API アクション
Web API 関数
Web API の複合型と列挙型
Dataverse Web API を使用する