次の方法で共有


Microsoft Graph コネクタ SDK コントラクト コネクタ クローラー API とモデル

Microsoft Graph コネクタ SDK コントラクト コネクタ クローラー API とモデルは、クロール中に呼び出されます。

コネクタ クローラー API

メソッド パラメーター 戻り値の型 説明
GetCrawlStream GetCrawlStreamRequest ストリームとしての CrawlStreamBit データ ソースからデータを読み取ります。 このメソッドは、すべての項目をデータ ソースから読み取り、プラットフォームに返す必要があるフル クロールと定期的なフル クロール中に呼び出されます。
GetIncrementalCrawlStream GetIncrementalCrawlStreamRequest Stream としての IncrementalCrawlStreamBit データ ソースからデータを読み取ります。 このメソッドは省略可能であり、増分クロール中に呼び出され、最後の増分クロール以降の項目の増分変更のみが返されます。

コネクタ クローラー モデル

コネクタ クローラー モデルを次に示します。

GetCrawlStreamRequest

クロール中にアイテムを取得するための要求モデル。

プロパティ 説明
customConfiguration CustomConfiguration コネクタの構成データを提供します。
authenticationData AuthenticationData データ ソースのアクセス URL と、データ ソースにアクセスするための資格情報を保持します。
crawlProgressMarker CrawlCheckpoint 最後のクロールで処理されたアイテムを識別するためのデータを保持します。 コネクタはアイテムの情報を返し、クロール中にプラットフォームがクラッシュした場合に使用します。
Schema DataSourceSchema 接続のスキーマを表示します。 このプロパティを使用して値を設定することもできます。

CrawlStreamBit

成功または失敗を示す項目の状態と、完全または定期的なクロール中にクロールされるアイテムのインジケーター/チェックポイントを含む応答モデル。

プロパティ 説明
status OperationStatus 操作の状態とエラーの詳細を表示します。
crawlItem CrawlItem データ ソースからクロールされた 1 つのアイテムを表示します。
crawlProgressMarker CrawlCheckpoint データ ソースからクロールされたアイテムを識別します。

GetIncrementalCrawlStreamRequest

増分クロール中にアイテムを取得するための要求モデル。

プロパティ 説明
customConfiguration CustomConfiguration コネクタの構成データを提供します。
authenticationData AuthenticationData データ ソースのアクセス URL と、データ ソースにアクセスするための資格情報を保持します。
crawlProgressMarker CrawlCheckpoint 最後のクロールで処理されたアイテムを識別するためのデータを保持します。 コネクタはアイテムの情報を返し、クロール中にプラットフォームがクラッシュした場合に使用します。
スキーマ DataSourceSchema 接続のスキーマを表示します。 このプロパティを使用して値を設定することもできます。
previousCrawlStartTimeInUtc Timestamp 前のクロール開始時刻を UTC で表示します。 この値は、最初の増分クロールで使用できますが、後続の呼び出しではチェックポイント値を使用する必要があります。

IncrementalCrawlStreamBit

アイテムを含む応答モデル、成功/失敗を示す状態 (存在する場合) と、増分クロール中にクロールされるアイテムのインジケーター/チェックポイント。

プロパティ 説明
status OperationStatus 操作の状態とエラーの詳細を表示します。
crawlItem IncrementalCrawlItem 増分クロール中および増分クロール中にデータ ソースからクロールされた 1 つのアイテムを表示します。
crawlProgressMarker CrawlCheckpoint 最後の増分クロール中にデータ ソースからクロールされた最後のアイテムを識別します。

CrawlItem の ItemType 列挙メンバー

クロール項目の列挙フィールド。

メンバー 説明
ContentItem 0 取り込むコンテンツを含むデータ項目。 たとえば、Web サイトのコンテンツです。
LinkItem 1 後続のクロールで使用されるコンテンツ アイテムへのリンク。 例: Web サイトまたはフォルダーへのリンク。

CrawlItem

データ ソース内のエンティティを表します。 許可される最大サイズは 4 MB です。 たとえば、ファイル、フォルダー、テーブル内のレコードなどです。

プロパティ 説明
Itemid string データ ソース内の項目を表す一意の ID を表示します。
contentItem ContentItem 取り込むコンテンツを含むデータ項目を表示します。 たとえば、Web サイトのコンテンツです。
linkItem LinkItem 後続のクロールで使用されるコンテンツ アイテムへのリンク。 たとえば、Web サイトまたはフォルダーへのリンク。
Itemtype ItemType 送信されるアイテムの種類を表示します。 このモデルには contentItem または linkItem セットが必要であり、この列挙フィールドはその項目に対応している必要があります。

注:

  • プロパティ linkItemcontentItem は相互に排他的です。

IncrementalCrawlItem の ItemType 列挙メンバー

増分クロール 項目の列挙フィールド。

メンバー 説明
ContentItem 0 取り込むコンテンツを含むデータ項目。 たとえば、Web サイトのコンテンツです。
LinkItem 1 後続のクロールで使用されるコンテンツ アイテムへのリンク。 たとえば、Web サイトまたはフォルダーへのリンク。
DeletedItem 2 データ ソースから削除され、インデックスから削除する必要がある項目。

IncrementalCrawlItem

データ ソース内のエンティティを表します。 たとえば、ファイル、フォルダー、テーブル内のレコードなどです。

プロパティ 説明
Itemid string データ ソース内の項目を表す一意の ID を表示します。
contentItem ContentItem 取り込むコンテンツを含むデータ項目を表示します。 たとえば、Web サイトのコンテンツです。
linkItem LinkItem 後続のクロールで使用されるコンテンツ アイテムへのリンク。 たとえば、Web サイトまたはフォルダーへのリンク。
deletedItem DeletedItem データソースから削除され、インデックスから削除する必要がある項目。 deletedItem が設定されている場合、contentItem または linkItem を設定できません。
Itemtype ItemType 送信されるアイテムの種類を表示します。 このモデルには contentItem または linkItem セットが必要であり、この列挙フィールドはその項目に対応している必要があります。

注:

  • linkItem、contentItemdeletedItem各プロパティは相互に排他的です。

ContentItem

取り込むデータ ソース エンティティのコンテンツを保持するアイテム。 たとえば、Web サイトのコンテンツです。

プロパティ 説明
propertyValues SourcePropertyValueMap アイテム内の各プロパティのキーと値を保持します。
accessList AccessControlList アイテムへのアクセスを特定のユーザーまたはグループに制限します。
content Content 検索結果を表示するときに使用できるアイテムの content プロパティを表示します。

LinkItem

別のアイテムへのリンクとして機能するアイテム。 これらのリンク項目は、再クロールのためにコネクタに再び送信されます。たとえば、フォルダーコンテンツでは、ファイルはコンテンツアイテムになり、サブフォルダーはリンクアイテムになります。

プロパティ 説明
metadata map<文字列、 GenericType> コネクタがアイテムを再クロールするために必要なメタデータを保持します。

DeletedItem

データ ソースから削除され、インデックスから削除する必要がある項目を表します。

AccessControlList

検索結果を表示できるユーザーを制限します。

プロパティ 説明
Entries 繰り返し AccessControlEntry アクセス制御リスト エントリの配列またはコレクションを表示します。

AclAccessType 列挙メンバー

アクセス制御リストの種類の列挙メンバー。

メンバー 説明
なし 0 既定値の deny を示します。
許可 1 エントリは、アイテムへのアクセス権を持つユーザー/グループ用です。
拒否 2 エントリは、アイテムにアクセスできないユーザー/グループ用であり、任意のユーザー/グループに対する許可をオーバーライドします。

AccessControlEntry

個々のアクセス制御エントリを保持します。

プロパティ 説明
accessType AclAccessType エンティティのアクセスの種類を表示します。許可または拒否します。
プリンシパル Principal 定義済みのアクセス権を持つグループまたはユーザーを表します。

PrincipalType 列挙メンバー

プリンシパル型の列挙メンバー。

メンバー 説明
PT_None 0 既定値 user を示します。
User 1 ユーザーの種類。
グループ 2 グループの種類。
すべてのユーザー 3 すべてのユーザーにアクセス権を付与する特別なグループ。
EveryoneExceptGuests 4 ゲストを除くすべてのユーザーにアクセスを許可する特別なグループ。

IdentitySource 列挙メンバー

ID ソースの列挙メンバー。

メンバー 説明
IS_None 0 既定値を示します:Microsoft Entra ID。
AzureActiveDirectory 1 ID のソースはMicrosoft Entra ID。

IdentityType 列挙メンバー

ID 型の列挙メンバー。

メンバー 説明
IT_None 0 既定値 (Azure ADId) を示します。
ActiveDirectorySId 1 Active Directory (AD) によって提供される SID (オンプレミスのセキュリティ識別子)。
UserPrincipalName 2 ユーザー プリンシパル名 (UPN)。
AadId 3 Azure ADId。

Principal

プリンシパル (ユーザー/グループ) の属性を格納する構造体。

プロパティ 説明
type PrincipalType プリンシパルの種類。
string プリンシパル値: SID、UPN、Azure ADId などの値。
identitySource IdentitySource ID のソース。
identityType IdentityType ID 表現の種類。
identitySourceProperties map<string, string> ID ソースに関するメタデータ。

SourcePropertyValueMap

データ ソース内のソース プロパティ キーとその値のマップ。 各項目のプロパティ値が格納されます。

プロパティ 説明
values map<文字列、 GenericType> アイテムのプロパティのキーと値を保持します。 キーはプロパティ名で、値はプロパティ値です。 たとえば、ファイル コンテンツには title、modifiedDate などのプロパティがあります。 プロパティ キーはプロパティ自体であり、値はそれぞれファイルのタイトルとファイルの変更日になります。

ContentType 列挙メンバー

コンテンツ タイプの列挙メンバー。

メンバー 説明
なし 0 既定値です。
テキスト 1 テキスト コンテンツ タイプ。
HTML 2 HTML コンテンツ タイプ。

コンテンツ

検索結果のレンダリングに使用されるアイテムの content プロパティの値。

プロパティ 説明
contentType ContentType コンテンツの種類。
contentValue string content プロパティの値。

CrawlCheckpoint

最後にクロールされたアイテムを識別します。 プラットフォームによって保存され、失敗またはクラッシュが発生した場合、最後に成功した項目バッチのチェックポイントがクロールの再開に使用されます。 プラットフォームは 、GetCrawlStream API でチェックポイントを送信します。

プロパティ 説明
pagenumber Uint32 クロールの進行状況をマークするページ番号を表示します。
Batchsize Uint32 すべてのバッチで返されるアイテムの数を保持します。 各項目は個別にストリーミングされるため、定数値は 1 です。
customMarkerData 文字列 データ ソースからクロールされた最後のアイテムを識別するために必要なカスタム データ。

GenericType

ソース プロパティの値などの特定のフィールドにプラットフォームでサポートされている値の種類を保持するモデル。 次のいずれかのフィールドのみを設定する必要があります。

プロパティ 説明
stringValue string 文字列値を表します。
intValue int64 int64 (long) 値を表します。
doubleValue double double 値を表します。
dateTimeValue google.protobuf.Timestamp dateTime 値を表します。
boolValue bool ブール型 (Boolean) の値を表します。
stingCollectionValue StringCollectionType 文字列のコレクションを表します。
intCollectionValue IntCollectionType int64 (long) のコレクションを表します。
doubleCollectionValue DoubleCollectionType double のコレクションを表します。
dateTimeCollectionValue TimestampCollectionType dateTime のコレクションを表します。

StringCollectionType

文字列のコレクション。

プロパティ 説明
values 繰り返し文字列 文字列のコレクションまたは配列。

IntCollectionType

整数値のコレクション。

プロパティ 説明
values 繰り返し int64 int64 (long) 値のコレクションまたは配列。

DoubleCollectionType

double 値のコレクション。

プロパティ 説明
values 繰り返し double double 値のコレクションまたは配列。

TimestampCollectionType

DateTime 値のコレクション。

プロパティ 説明
values 繰り返し google.protobuf.Timestamp dateTime 値のコレクションまたは配列。