作業の開始

この記事では、dataverse SDK for Pythonを介して Dataverse にアクセスするようにPython環境を設定する方法について説明します。 次に、作業を開始するための簡単なコーディング例をいくつか示します。

[前提条件]

  • Dataverse 環境への読み取り/書き込みアクセス。 試用版環境を使用できます。
  • アプリケーション用に構成された OAuth 認証。
  • アクティブ化された Python 3.10 以降の環境。
  • Pandas バージョン 2.0.0 以降。
  • SDK パッケージを取得するための pypi.org へのネットワーク アクセス。

SDK と依存関係をインストールする

ターミナル ウィンドウから、次のコマンドを実行します。 このコマンドは、 pypi.org パッケージから SDK の最新の安定したリリースをインストールします。

pip install PowerPlatform-Dataverse-Client

次のコマンドを実行して、パッケージではなくプロジェクトのGitHub ソースから SDK をインストールします。 PyPi パッケージまたはソースからクライアントをインストールしますが、両方をインストールすることはできません。

git clone <https://github.com/microsoft/PowerPlatform-DataverseClient-Python.git>
cd PowerPlatform-DataverseClient-Python
pip install -e .

Claude Skill をグローバルにインストールする

Python開発エクスペリエンスを向上させるために、パッケージから SDK をインストールするときに、必要に応じて 2 つの Claude Skills をインストールできます。

pip install PowerPlatform-Dataverse-Client && dataverse-install-claude-skill

Important

ソースからインストールすると、スキルが自動的に読み込まれます。

次の一覧では、2 つのスキルについて説明します。

  • dataverse-sdk-use: アプリケーションで SDK を使用するためのベスト プラクティスを適用します。
  • dataverse-sdk-dev: SDK 自体の開発と貢献に関するガイダンスを提供します。

スキルは、Claude Code CLI と Visual Studio Code 拡張機能の両方で動作します。 インストールされると、Claude は Dataverse 操作を操作するときに適切なスキルを自動的に使用します。 クロード スキルの詳細については、「 エージェント スキル」を参照してください。 インストールすると、開発用コンピューターの .claude/skills/dataverse-sdk-use/SKILL.md.claude/skills/dataverse-sdk-dev/SKILL.mdfiles にスキル定義が表示されます。

Dataverse への接続

SDK client では、Dataverse での OAuth 認証にAzure Id TokenCredential の実装が必要です。

このコード例では、Dataverse クライアントと Azure ID の種類をインポートし、Dataverse 環境への接続を確立します。 URL の myorg は、必ず環境の正しい名前に変更してください。

from azure.identity import (
    InteractiveBrowserCredential, 
    ClientSecretCredential,
    CertificateCredential,
    AzureCliCredential
)
from PowerPlatform.Dataverse.client import DataverseClient

# Development options
credential = InteractiveBrowserCredential()  # Browser authentication
# credential = AzureCliCredential()          # If logged in via 'az login'

# Production options  
# credential = ClientSecretCredential(tenant_id, client_id, client_secret)
# credential = CertificateCredential(tenant_id, client_id, cert_path)

client = DataverseClient("https://myorg.crm.dynamics.com", credential)

オプションの HTTP 調整可能な設定を使用して接続をカスタマイズし、接続のタイムアウトや再試行などを処理できます。 DataverseConfig クラスを使用してこれらの設定にアクセスします。

Dataverse 環境へのクライアント接続が確立されたので、SDK を使用してビジネス データ、テーブル メタデータなどを操作できます。 次の記事では、これらの操作の例をいくつか取り上げます。

詳細については、「 Dataverse での OAuth の使用」を参照してください。

名前空間

PowerPlatform.Dataverse.operations パッケージには、次の表に示すように、SDK 操作を論理グループに整理するモジュールが含まれています。

名前 Description
client.records レコードの作成、更新、削除、および取得 (単一またはページ分割されたクエリ)
client.query クエリ操作と検索操作
client.tables テーブルと列のメタデータ管理
client.files ファイルのアップロード操作
client.dataframe Pandas DataFrame のサポート
client.batch バッチ操作

これらの操作の使用例については、データのクエリとデータの操作に関する記事を参照してください。

次のステップ