次の方法で共有


SharePoint 非同期メタデータ読み取り (AMR) API リファレンス ガイド

SharePoint 非同期メタデータ読み取り (AMR) API を使用する場合は、このドキュメントをガイドとして使用してください。

AMR API は、SharePoint メタデータをマニフェスト パッケージに集計します。 増分移行、構造体の作成、移行後の検証、またはアクセス許可の管理には、パッケージを使用します。

CSOM と REST

AMR API では、SharePoint クライアント側オブジェクト モデル (CSOM) と REST の両方がサポートされています。

CSOM で NuGet パッケージを使用する

ソリューションで SharePoint クライアント側オブジェクト モデル (CSOM) を参照するには、NuGet パッケージを使用します。

依存関係を簡単に管理し、ソリューションが NuGet パッケージで最新バージョンの CSOM ライブラリを使用していることを確認します。

ID Microsoft.SharePointOnline.CSOMを使用して、SharePoint クライアント側オブジェクト モデル ライブラリで CSOM パッケージの最新バージョンを取得します。

REST API の手順については、「 SharePoint REST サービスを知 る」を参照してください。

CreateSPAsyncReadJob メソッド

指定した SharePoint URL とその子のすべてのメタデータを指定されたマニフェスト コンテナーに読み取る AMR ジョブを作成します。

CreateSPAsyncReadJob 構文

public SPAsyncReadJobInfo CreateSPAsyncReadJob(String url,
SPAsyncReadOptions readOptions,
EncryptionOption encryptionOption,
string azureContainerManifestUri,
string azureQueueReportUri)

CreateSPAsyncReadJob パラメーター

url

必須です。

み取る SharePoint リスト、ファイル/フォルダー、またはドキュメント ライブラリのパスの完全なパス URL を含む文字列型 (String) の値。 AMR API は、 サブフォルダーや子コンテンツを含む、ファイル、フォルダー、ルート オブジェクトのすべてのメタデータを返します。

次の例 url は、共有ドキュメントとその子のすべてのメタデータを返します。

https://www.contoso.com/Shared%20Document

readOptions

必須。

読み取るメタデータの種類を指定するreadOption値を持つSPAsyncReadOptions構造体。

IncludeVersions

省略可能。

AMR API が複数のバージョンのファイルとリスト アイテムを読み取るかどうかを示す Bool 値。

既定値は、false です。 存在しない場合、または false に設定されている場合、AMR API は最新バージョンの項目のみを読み取ります。

IncludeSecurity

省略可能。

AMR API がサイトに関連するユーザーとグループの情報を読み取るかどうかを示す Bool 値。

既定値は、false です。

AMR API は、オブジェクトのメタデータの一部として、作成者または修飾子としてユーザーとグループを読み取ります。

trueに設定すると、AMR API はサイト コレクション内のすべてのユーザーを読み取ります。 同じサイト コレクションで複数のドキュメント ライブラリを読み取ると、同じユーザーとグループが読み取りパッケージに複数回表示されることがあります。

IncludeDirectDescendantsOnly

省略可能。

AMR API が直接子孫のメタデータのみを読み取るかどうかを示す Bool 値。

既定値は、false です。

trueに設定すると、AMR API は直接の子孫のメタデータのみを読み取ります。

パフォーマンスの低下を回避するためのベスト プラクティスに関するページで説明されているように、このreadOptionIncludeSecurityreadOptionと共に使用して、多数の項目を含むドキュメント ライブラリからメタデータを読み取るときにパフォーマンスを向上させます。

IncludeExtendedMetadata

省略可能。

既定値は、false です。

falseに設定すると、AMR API は基本的なメタデータを読み取ります。

  • 一覧表示する
  • フォルダー
  • File
  • リスト アイテム
  • 役割
  • ロールの割り当て

trueに設定すると、AMR API は使用可能なすべてのメタデータを読み取ります。

ファイルの場合:

  • Web パーツ
  • Web パーツのパーソナル化
  • リンク
  • バージョン イベント
  • イベント レシーバー
  • 添付ファイルのメタデータ

リストの場合:

  • カスタム アクション
  • ショートカットの一覧表示

リスト アイテムの場合:

  • 注釈
  • ドキュメント セット のリンク
  • アクティビティ
  • リスト アイテムのショートカット

拡張メタデータを含めると、読み取りの速度が大幅に低下します。 ファイル共有の移行の場合は、既定値を falseのままにします。 複雑な移行プロジェクトの場合は、必要な場合にのみ true に設定します。

IncludePermission

省略可能。

読み取りアクセス許可が必要かどうかを示す Bool 値。 既定値は、false です。

trueに設定すると、AMR API は、Manifest.xml ファイル内のRoleAssignments タグ内のアクセス許可メタデータを読み取ります。 このファイルには、読み取られた SharePoint オブジェクトごとに、すべての識別アクセス許可メタデータとプロパティ ScopeIdが含まれます。

StartChangeToken

省略可能。

changeToken 項目を含む 整数値

既定では、 StartChangeToken が指定されていない場合、 CreateSPAsyncReadJob メソッドはパラメーターに基づいて使用可能なすべての項目を返します。 CurrentChangeToken値は毎回返されます。

前回の読み取り以降に変更された項目のみを読み取る場合は、後続の呼び出しで CreateSPAsyncReadJobStartChangeTokenを設定します。 最後の呼び出しから返された CurrentChangeTokenStartChangeTokenの値として使用します。

AMR API はエラーを返し、無効な StartChangeToken 値を受け取ると読み取りを停止します。

この機能を多数の項目で使用する場合は注意してください。 読み取りジョブは、長時間実行される可能性があります。 AMR API は、SharePoint インフラストラクチャを保護するために 10 分以上実行されるジョブを取り消します。

encryptionOption

省略可能。

出力の復号化に使用される AES-256-CBC キーを含む EncryptionOption オブジェクト。

既定では、AMR API は出力キューとイベント キューを暗号化しません。 AES-256-CBC キーで設定した場合、AMR API は、指定されたキーを使用して出力を暗号化します。

詳細については、「 EncryptionOption クラス」を参照してください。

azureContainerManifestUri

必須です。

出力マニフェスト パッケージを含む Azure Blob Storage コンテナーの宛先 URL である String 値。

移行で Azure Blob Storage Container を使用する手順については、「Azure」を参照してください。

azureQueueReportUri

必須。

読み取りステータス メッセージを受信する Azure Queue の URL である String 値。

必要に応じて、異なるジョブ間で azureQueueReportUri を共有します。 AMR API は、作成された個々のジョブを識別するために JobID を返します。

移行で Azure Queue を使用する手順については、「Azure」を参照してください。 イベントの種類については、Azure Queue の移行イベントを確認してください。

CreateSPAsyncReadJob の戻り値

ジョブ ID

移行ジョブの一意識別子であるジョブ ID を含む Guid 値。 メソッドは、ジョブの作成に失敗した場合に、 null 値を返します。

AMR API は、各urlの項目数を見積もると、JobEnd イベントを生成します。 詳細については 、イベント を確認してください。

AzureContainerManifest

読み取られたメタデータを含む Azure Blob Storage コンテナーにアクセスするための URL を含む Uri 値。

JobQueueUri

読み取り状態に使用される Azure Queue の URL を含む Uri 値。

EncryptionKey

Azure キュー内のマニフェスト ファイルとメッセージを復号化するための AES-256-CBC キーを含む Byte Array 値。

CreateSPAsyncReadJobWithMultiUrl メソッド

指定されたすべての SharePoint URL とその子のすべてのメタデータを指定されたマニフェスト コンテナーに読み取る AMR ジョブを作成します。

CreateSPAsyncReadJobWithMultiUrl 構文

public SPAsyncReadJobInfo CreateSPAsyncReadJobWithMultiUrl(
        String[] urls,
        SPAsyncReadOptions readOptions,
        EncryptionOption encryptionOption,
        String azureContainerManifestUri,
        String azureQueueReportUri)

CreateSPAsyncReadJobWithMultiUrl パラメーター

readOptionsencryptionOptionazureContainerManifestUriazureQueueReportUriの詳細については、「CreateSPAsyncReadJob メソッド」を参照してください。

urls

必須。

読み取る SharePoint リスト、ファイル/フォルダー、またはドキュメント ライブラリのルート パスの完全パス URL を含む Uri配列 。 AMR API は、 サブフォルダーや子コンテンツを含む、ファイル、フォルダー、ルート オブジェクトのすべてのメタデータを返します。

必要に応じ、複数の URL を指定します。 複数の URL を使用した悪化した呼び出しにより、パフォーマンスが向上する可能性があります。 詳細については、「 パフォーマンス 」を参照してください。

エラー

-2146232832

changeToken は、現在の変更ログの開始前の時刻を参照します。

変更ログは、現在の日付の直前の 60 日に制限されます。 指定した changeToken が 60 日間の期間外の時刻を参照している場合、AMR API はこのエラー コードを返します。

-2147213196

操作が取り消されました。

AMR API はクライアントからキャンセル要求を受け取り、読み取り操作を取り消します。