Indexers - Create
新しいインデクサーを作成します。
POST {endpoint}/indexers?api-version=2026-04-01
URI パラメーター
| 名前 | / | 必須 | 型 | 説明 |
|---|---|---|---|---|
|
endpoint
|
path | True |
string (uri) |
検索サービスのエンドポイント URL。 |
|
api-version
|
query | True |
string minLength: 1 |
この操作に使用する API バージョン。 |
要求ヘッダー
| 名前 | 必須 | 型 | 説明 |
|---|---|---|---|
| Accept |
Acceptヘッダーです。 |
||
| x-ms-client-request-id |
string (uuid) |
要求の非透過的なグローバルに一意のクライアント生成文字列識別子。 |
要求本文
| 名前 | 必須 | 型 | 説明 |
|---|---|---|---|
| dataSourceName | True |
string |
このインデクサーがデータを読み取るデータソースの名前。 |
| name | True |
string |
インデクサーの名前。 |
| targetIndexName | True |
string |
このインデクサーがデータを書き込むインデックスの名前。 |
| @odata.etag |
string |
インデクサーの ETag。 |
|
| description |
string |
インデクサーの説明。 |
|
| disabled |
boolean |
インデクサーが無効かどうかを示す値。 既定値は falseです。 |
|
| encryptionKey |
Azure Key Vault で作成する暗号化キーの説明。 このキーは、インデクサー定義 (およびインデクサーの実行状態) に追加レベルの保存時の暗号化を提供するために使用されます。 インデクサー定義を暗号化すると、常に暗号化されたままになります。 検索サービスは、このプロパティを null に設定しようとすると無視されます。 暗号化キーをローテーションする場合は、必要に応じてこのプロパティを変更できます。インデクサー定義 (およびインデクサーの実行状態) は影響を受けません。 カスタマー マネージド キーを使用した暗号化は、無料の検索サービスでは使用できません。また、2019 年 1 月 1 日以降に作成された有料サービスでのみ使用できます。 |
||
| fieldMappings |
データ ソース内のフィールドとインデックス内の対応するターゲット フィールド間のマッピングを定義します。 |
||
| outputFieldMappings |
出力フィールド マッピングは、エンリッチメントの後、インデックス作成の直前に適用されます。 |
||
| parameters |
インデクサー実行のパラメーター。 |
||
| schedule |
このインデクサーのスケジュール。 |
||
| skillsetName |
string |
このインデクサーで実行されているスキルセットの名前。 |
応答
| 名前 | 型 | 説明 |
|---|---|---|
| 201 Created |
要求が成功し、結果として新しいリソースが作成されました。 |
|
| Other Status Codes |
予期しないエラー応答。 |
セキュリティ
api-key
型:
apiKey
/:
header
OAuth2Auth
型:
oauth2
フロー:
implicit
Authorization URL (承認 URL):
https://login.microsoftonline.com/common/oauth2/v2.0/authorize
スコープ
| 名前 | 説明 |
|---|---|
| https://search.azure.com/.default |
例
SearchServiceCreateIndexer
要求のサンプル
POST https://exampleservice.search.windows.net/indexers?api-version=2026-04-01
{
"name": "myindexer",
"description": "Description of the indexer",
"dataSourceName": "indexertestdatasource",
"skillsetName": "myskillset",
"targetIndexName": "example-index",
"schedule": {
"interval": "P1D",
"startTime": "2025-01-07T19:30:00Z"
},
"parameters": {
"batchSize": 10,
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5,
"configuration": {
"parsingMode": "markdown",
"excludedFileNameExtensions": ".png,.mp4",
"indexedFileNameExtensions": ".docx,.pptx",
"failOnUnsupportedContentType": true,
"failOnUnprocessableDocument": false,
"indexStorageMetadataOnlyForOversizedDocuments": true,
"delimitedTextHeaders": "Header1,Header2",
"delimitedTextDelimiter": "|",
"firstLineContainsHeaders": true,
"markdownParsingSubmode": "oneToMany",
"markdownHeaderDepth": "h6",
"documentRoot": "/root",
"dataToExtract": "storageMetadata",
"imageAction": "none",
"allowSkillsetToReadFileData": false,
"pdfTextRotationAlgorithm": "none",
"executionEnvironment": "standard"
}
},
"fieldMappings": [
{
"sourceFieldName": "/document",
"targetFieldName": "name",
"mappingFunction": {
"name": "base64Encode"
}
}
],
"outputFieldMappings": [
{
"sourceFieldName": "/document",
"targetFieldName": "name",
"mappingFunction": {
"name": "base64Encode"
}
}
],
"disabled": false,
"@odata.etag": "0x1234568AE7E58A1"
}
応答のサンプル
{
"@odata.etag": "0x1234568AE7E58A1",
"name": "myindexer",
"description": "Description of the indexer",
"dataSourceName": "indexertestdatasource",
"skillsetName": "myskillset",
"targetIndexName": "example-index",
"disabled": false,
"schedule": {
"interval": "P1D",
"startTime": "2024-06-06T00:01:50.265Z"
},
"parameters": {
"batchSize": 10,
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5,
"configuration": {
"parsingMode": "markdown",
"excludedFileNameExtensions": ".png,.mp4",
"indexedFileNameExtensions": ".docx,.pptx",
"failOnUnsupportedContentType": true,
"failOnUnprocessableDocument": false,
"indexStorageMetadataOnlyForOversizedDocuments": true,
"delimitedTextHeaders": "Header1,Header2",
"delimitedTextDelimiter": "|",
"firstLineContainsHeaders": true,
"markdownParsingSubmode": "oneToMany",
"markdownHeaderDepth": "h6",
"documentRoot": "/root",
"dataToExtract": "storageMetadata",
"imageAction": "none",
"allowSkillsetToReadFileData": false,
"pdfTextRotationAlgorithm": "none",
"executionEnvironment": "standard"
}
},
"fieldMappings": [
{
"sourceFieldName": "/document",
"targetFieldName": "name",
"mappingFunction": {
"name": "base64Encode"
}
}
],
"outputFieldMappings": [
{
"sourceFieldName": "/document",
"targetFieldName": "name",
"mappingFunction": {
"name": "base64Encode"
}
}
]
}
定義
| 名前 | 説明 |
|---|---|
| Accept |
Acceptヘッダーです。 |
|
Blob |
Azure BLOB Storage から抽出するデータを指定し、"imageAction" が "none" 以外の値に設定されている場合に、画像コンテンツから抽出するデータをインデクサーに指示します。 これは、.PDF またはその他のアプリケーションに埋め込まれた画像コンテンツ、または Azure BLOB 内の .jpg や .pngなどの画像ファイルに適用されます。 |
|
Blob |
Azure BLOB Storage 内の埋め込みイメージとイメージ ファイルを処理する方法を決定します。 "imageAction" 構成を "none" 以外の値に設定するには、スキルセットもそのインデクサーにアタッチする必要があります。 |
|
Blob |
Azure BLOB データ ソースからのインデックス作成の解析モードを表します。 |
|
Blob |
Azure BLOB ストレージ内の PDF ファイルからテキストを抽出するアルゴリズムを決定します。 |
|
Error |
リソース管理エラーの追加情報。 |
|
Error |
エラーの詳細。 |
|
Error |
すべてのAzure Resource Manager APIで失敗した操作に対してエラー詳細を返す共通のエラー応答です。 (これは、OData エラー応答形式にも従います)。 |
|
Field |
データ ソース内のフィールドとインデックス内のターゲット フィールドの間のマッピングを定義します。 |
|
Field |
インデックス作成の前にデータ ソースから値を変換する関数を表します。 |
|
Indexer |
インデクサーを実行する環境を指定します。 |
|
Indexing |
インデクサー実行のパラメーターを表します。 |
|
Indexing |
インデクサー固有の構成プロパティのディクショナリ。 各名前は、特定のプロパティの名前です。 各値はプリミティブ型である必要があります。 |
|
Indexing |
インデクサー実行のスケジュールを表します。 |
|
Search |
インデクサーを表します。 |
|
Search |
データソースの ID プロパティをクリアします。 |
|
Search |
使用するデータソースの ID を指定します。 |
|
Search |
Azure Key Vault のカスタマー マネージド暗号化キー。 作成および管理するキーを使用して、インデックスやシノニム マップなどの保存データの暗号化または暗号化解除を行うことができます。 |
Accept
Acceptヘッダーです。
| 値 | 説明 |
|---|---|
| application/json;odata.metadata=minimal |
BlobIndexerDataToExtract
Azure BLOB Storage から抽出するデータを指定し、"imageAction" が "none" 以外の値に設定されている場合に、画像コンテンツから抽出するデータをインデクサーに指示します。 これは、.PDF またはその他のアプリケーションに埋め込まれた画像コンテンツ、または Azure BLOB 内の .jpg や .pngなどの画像ファイルに適用されます。
| 値 | 説明 |
|---|---|
| storageMetadata |
標準の BLOB プロパティとユーザー指定のメタデータのみにインデックスを作成します。 |
| allMetadata |
Azure BLOB ストレージ サブシステムによって提供されるメタデータとコンテンツ タイプ固有のメタデータ (たとえば、.png ファイルのみに固有のメタデータがインデックス付けされる) を抽出します。 |
| contentAndMetadata |
各 BLOB からすべてのメタデータとテキスト コンテンツを抽出します。 |
BlobIndexerImageAction
Azure BLOB Storage 内の埋め込みイメージとイメージ ファイルを処理する方法を決定します。 "imageAction" 構成を "none" 以外の値に設定するには、スキルセットもそのインデクサーにアタッチする必要があります。
| 値 | 説明 |
|---|---|
| none |
データ セット内の埋め込みイメージまたはイメージ ファイルを無視します。 これが既定値です。 |
| generateNormalizedImages |
画像からテキスト (たとえば、トラフィック停止記号から "STOP" という単語) を抽出し、コンテンツ フィールドに埋め込みます。 このアクションでは、"dataToExtract" が "contentAndMetadata" に設定されている必要があります。 正規化された画像とは、画像を視覚的な検索結果に含めるときに、一貫したレンダリングを促進するためにサイズを変更し、回転して均一な画像出力を生成する追加処理を指します。 この情報は、このオプションを使用すると各イメージに対して生成されます。 |
| generateNormalizedImagePerPage |
画像からテキスト (たとえば、トラフィック停止記号から "STOP" という単語) を抽出し、コンテンツ フィールドに埋め込みますが、埋め込み画像を抽出するのではなく、各ページが画像としてレンダリングされ、それに応じて正規化されるという点で、PDF ファイルを異なる方法で処理します。 PDF 以外のファイルの種類は、"generateNormalizedImages" が設定された場合と同じように扱われます。 |
BlobIndexerParsingMode
Azure BLOB データ ソースからのインデックス作成の解析モードを表します。
| 値 | 説明 |
|---|---|
| default |
通常のファイル処理では既定値に設定されます。 |
| text |
BLOB ストレージ内のプレーン テキスト ファイルのインデックス作成のパフォーマンスを向上させるために、テキストに設定します。 |
| delimitedText |
BLOB がプレーン CSV ファイルの場合は、delimitedText に設定します。 |
| json |
JSON ファイルから構造化コンテンツを抽出するには、json に設定します。 |
| jsonArray |
JSON 配列の個々の要素を個別のドキュメントとして抽出するには、jsonArray に設定します。 |
| jsonLines |
jsonLines に設定すると、個別のドキュメントとして、新しい行で区切られた個々の JSON エンティティが抽出されます。 |
| markdown |
マークダウン ファイルからコンテンツを抽出するには、マークダウンに設定します。 |
BlobIndexerPDFTextRotationAlgorithm
Azure BLOB ストレージ内の PDF ファイルからテキストを抽出するアルゴリズムを決定します。
| 値 | 説明 |
|---|---|
| none |
通常のテキスト抽出を利用します。 これが既定値です。 |
| detectAngles |
PDF ファイル内のテキストを回転させた PDF ファイルから、より読みやすく、読みやすいテキスト抽出が生成される場合があります。 このパラメーターを使用すると、パフォーマンス速度への影響が小さくなる可能性があることに注意してください。 このパラメーターは PDF ファイルにのみ適用され、テキストが埋め込まれた PDF にのみ適用されます。 回転したテキストが PDF の埋め込み画像内に表示される場合、このパラメーターは適用されません。 |
ErrorAdditionalInfo
リソース管理エラーの追加情報。
| 名前 | 型 | 説明 |
|---|---|---|
| info |
追加情報。 |
|
| type |
string |
追加情報の種類。 |
ErrorDetail
エラーの詳細。
| 名前 | 型 | 説明 |
|---|---|---|
| additionalInfo |
エラーの追加情報。 |
|
| code |
string |
エラー コード。 |
| details |
エラーの詳細。 |
|
| message |
string |
エラー メッセージ。 |
| target |
string |
エラーターゲット。 |
ErrorResponse
すべてのAzure Resource Manager APIで失敗した操作に対してエラー詳細を返す共通のエラー応答です。 (これは、OData エラー応答形式にも従います)。
| 名前 | 型 | 説明 |
|---|---|---|
| error |
エラー オブジェクト。 |
FieldMapping
データ ソース内のフィールドとインデックス内のターゲット フィールドの間のマッピングを定義します。
| 名前 | 型 | 説明 |
|---|---|---|
| mappingFunction |
インデックス作成前に各ソースフィールド値に適用する関数。 |
|
| sourceFieldName |
string |
データ ソース内のフィールドの名前。 |
| targetFieldName |
string |
インデックス内のターゲットフィールドの名前。 デフォルトでは、ソースフィールド名と同じです。 |
FieldMappingFunction
インデックス作成の前にデータ ソースから値を変換する関数を表します。
| 名前 | 型 | 説明 |
|---|---|---|
| name |
string |
フィールドマッピング関数の名前。 |
| parameters |
関数に渡すパラメータ名と値のペアのディクショナリ。 各値はプリミティブ型である必要があります。 |
IndexerExecutionEnvironment
インデクサーを実行する環境を指定します。
| 値 | 説明 |
|---|---|
| standard |
検索サービスがインデクサーを実行する場所を決定できることを示します。 これは、何も指定されていない場合の既定の環境であり、推奨される値です。 |
| private |
検索サービス専用にプロビジョニングされた環境でインデクサーを実行する必要があることを示します。 これは、インデクサーが共有プライベート リンク リソース経由でリソースに安全にアクセスする必要がある場合にのみ、実行環境として指定する必要があります。 |
IndexingParameters
インデクサー実行のパラメーターを表します。
| 名前 | 型 | 規定値 | 説明 |
|---|---|---|---|
| batchSize |
integer (int32) |
パフォーマンスを向上させるために、データ ソースから読み取られ、1 つのバッチとしてインデックスが作成される項目の数。 デフォルトは、データソースの種類によって異なります。 |
|
| configuration |
インデクサー固有の構成プロパティのディクショナリ。 各名前は、特定のプロパティの名前です。 各値はプリミティブ型である必要があります。 |
||
| maxFailedItems |
integer (int32) |
0 |
インデクサーの実行が成功したと見なされるインデックス作成に失敗する可能性のある項目の最大数。 -1 は無制限を意味します。 既定値は 0 です。 |
| maxFailedItemsPerBatch |
integer (int32) |
0 |
バッチのインデックス作成に失敗する可能性がある 1 つのバッチ内の項目の最大数は、それでも成功したと見なされます。 -1 は無制限を意味します。 既定値は 0 です。 |
IndexingParametersConfiguration
インデクサー固有の構成プロパティのディクショナリ。 各名前は、特定のプロパティの名前です。 各値はプリミティブ型である必要があります。
| 名前 | 型 | 規定値 | 説明 |
|---|---|---|---|
| allowSkillsetToReadFileData |
boolean |
False |
true の場合、BLOB データ ソースからダウンロードされた元のファイル データを表すオブジェクトであるパス //document//file_data が作成されます。 これにより、元のファイル データをエンリッチメント パイプライン内で処理するためのカスタム スキルまたはドキュメント抽出スキルに渡すことができます。 |
| dataToExtract | contentAndMetadata |
Azure BLOB Storage から抽出するデータを指定し、"imageAction" が "none" 以外の値に設定されている場合に、画像コンテンツから抽出するデータをインデクサーに指示します。 これは、.PDF またはその他のアプリケーションに埋め込まれた画像コンテンツ、または Azure BLOB 内の .jpg や .pngなどの画像ファイルに適用されます。 |
|
| delimitedTextDelimiter |
string |
CSV BLOB の場合、各行が新しいドキュメント ("|" など) を開始する CSV ファイルの行末の単一文字区切り記号を指定します。 |
|
| delimitedTextHeaders |
string |
CSV BLOB の場合、列ヘッダーのコンマ区切りのリストを指定します。これは、ソース フィールドをインデックス内の宛先フィールドにマッピングするのに役立ちます。 |
|
| documentRoot |
string |
JSON 配列の場合、構造化ドキュメントまたは半構造化ドキュメントを指定すると、このプロパティを使用して配列へのパスを指定できます。 |
|
| excludedFileNameExtensions |
string |
Azure BLOB ストレージからの処理時に無視するファイル名拡張子のコンマ区切りの一覧。 たとえば、".png、.mp4" を除外して、インデックス作成中にこれらのファイルをスキップできます。 |
|
| executionEnvironment | standard |
インデクサーを実行する環境を指定します。 |
|
| failOnUnprocessableDocument |
boolean |
False |
Azure BLOB の場合、ドキュメントのインデックス作成に失敗した場合にインデックス作成を続行する場合は false に設定します。 |
| failOnUnsupportedContentType |
boolean |
False |
Azure BLOB の場合、サポートされていないコンテンツ タイプが検出されたときにインデックス作成を続行する必要があり、すべてのコンテンツ タイプ (ファイル拡張子) を事前に把握していない場合は false に設定します。 |
| firstLineContainsHeaders |
boolean |
True |
CSV BLOB の場合、各 BLOB の最初の (空白以外の) 行にヘッダーが含まれていることを示します。 |
| imageAction | none |
Azure BLOB Storage 内の埋め込みイメージとイメージ ファイルを処理する方法を決定します。 "imageAction" 構成を "none" 以外の値に設定するには、スキルセットもそのインデクサーにアタッチする必要があります。 |
|
| indexStorageMetadataOnlyForOversizedDocuments |
boolean |
False |
Azure BLOB の場合、処理するには大きすぎる BLOB コンテンツのストレージ メタデータのインデックスを作成するには、このプロパティを true に設定します。 サイズ超過の BLOB は、既定でエラーとして扱われます。 BLOB サイズの制限については、https://learn.microsoft.com/azure/search/search-limits-quotas-capacityを参照してください。 |
| indexedFileNameExtensions |
string |
Azure Blob Storage から処理するときに選択するファイル名拡張子のコンマ区切りの一覧。 たとえば、特定のアプリケーション ファイル ".docx、.pptx、.msg" にインデックスを付けて、これらのファイルの種類を具体的に含めることができます。 |
|
| markdownHeaderDepth |
enum:
|
h6 |
マークダウン コンテンツをグループ化するときに考慮されるヘッダーの最大深さを指定します。 既定値は |
| markdownParsingSubmode |
enum:
|
oneToMany |
マークダウン ファイルを 1 つの検索ドキュメントに解析するか、複数の検索ドキュメントに解析するかを決定するサブモードを指定します。 既定値は |
| parsingMode | default |
Azure BLOB データ ソースからのインデックス作成の解析モードを表します。 |
|
| pdfTextRotationAlgorithm | none |
Azure BLOB ストレージ内の PDF ファイルからテキストを抽出するアルゴリズムを決定します。 |
|
| queryTimeout |
string |
00:05:00 |
"hh:mm:ss" という形式で指定された Azure SQL データベース データ ソースの 5 分間の既定値を超えてタイムアウトを増やします。 |
IndexingSchedule
インデクサー実行のスケジュールを表します。
| 名前 | 型 | 説明 |
|---|---|---|
| interval |
string (duration) |
インデクサーの実行間の時間間隔。 |
| startTime |
string (date-time) |
インデクサーの実行を開始する時刻。 |
SearchIndexer
インデクサーを表します。
| 名前 | 型 | 規定値 | 説明 |
|---|---|---|---|
| @odata.etag |
string |
インデクサーの ETag。 |
|
| dataSourceName |
string |
このインデクサーがデータを読み取るデータソースの名前。 |
|
| description |
string |
インデクサーの説明。 |
|
| disabled |
boolean |
False |
インデクサーが無効かどうかを示す値。 既定値は falseです。 |
| encryptionKey |
Azure Key Vault で作成する暗号化キーの説明。 このキーは、インデクサー定義 (およびインデクサーの実行状態) に追加レベルの保存時の暗号化を提供するために使用されます。 インデクサー定義を暗号化すると、常に暗号化されたままになります。 検索サービスは、このプロパティを null に設定しようとすると無視されます。 暗号化キーをローテーションする場合は、必要に応じてこのプロパティを変更できます。インデクサー定義 (およびインデクサーの実行状態) は影響を受けません。 カスタマー マネージド キーを使用した暗号化は、無料の検索サービスでは使用できません。また、2019 年 1 月 1 日以降に作成された有料サービスでのみ使用できます。 |
||
| fieldMappings |
データ ソース内のフィールドとインデックス内の対応するターゲット フィールド間のマッピングを定義します。 |
||
| name |
string |
インデクサーの名前。 |
|
| outputFieldMappings |
出力フィールド マッピングは、エンリッチメントの後、インデックス作成の直前に適用されます。 |
||
| parameters |
インデクサー実行のパラメーター。 |
||
| schedule |
このインデクサーのスケジュール。 |
||
| skillsetName |
string |
このインデクサーで実行されているスキルセットの名前。 |
|
| targetIndexName |
string |
このインデクサーがデータを書き込むインデックスの名前。 |
SearchIndexerDataNoneIdentity
データソースの ID プロパティをクリアします。
| 名前 | 型 | 説明 |
|---|---|---|
| @odata.type |
string:
#Microsoft. |
ID のタイプを指定する URI フラグメント。 |
SearchIndexerDataUserAssignedIdentity
使用するデータソースの ID を指定します。
| 名前 | 型 | 説明 |
|---|---|---|
| @odata.type |
string:
#Microsoft. |
ID のタイプを指定する URI フラグメント。 |
| userAssignedIdentity |
string |
通常、ユーザー割り当てマネージド ID の完全修飾 Azure リソース ID は、検索サービスに割り当てられている必要がある "/subscriptions/12345678-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" の形式です。 |
SearchResourceEncryptionKey
Azure Key Vault のカスタマー マネージド暗号化キー。 作成および管理するキーを使用して、インデックスやシノニム マップなどの保存データの暗号化または暗号化解除を行うことができます。
| 名前 | 型 | 説明 |
|---|---|---|
| accessCredentials.applicationId |
string |
保存データの暗号化時に使用される Azure Key Vault に対する必要なアクセス許可が付与された AAD アプリケーション ID。 アプリケーション ID は、AAD アプリケーションのオブジェクト ID と混同しないでください。 |
| accessCredentials.applicationSecret |
string |
指定した AAD アプリケーションの認証キー。 |
| identity | SearchIndexerDataIdentity: |
この暗号化キーに使用する明示的なマネージド ID。 指定されず、アクセス資格情報プロパティが null の場合は、システム割り当てマネージド ID が使用されます。 リソースの更新時に、明示的な ID が指定されていない場合、変更されません。 "none" が指定されている場合、このプロパティの値はクリアされます。 |
| keyVaultKeyName |
string |
保存データの暗号化に使用する Azure Key Vault キーの名前。 |
| keyVaultKeyVersion |
string |
保存データの暗号化に使用する Azure Key Vault キーのバージョン。 |
| keyVaultUri |
string |
保存データの暗号化に使用するキーを含む Azure Key Vault の URI (DNS 名とも呼ばれます)。 URI の例は、 |