Data Sources - Create
新しいデータソースを作成します。
POST {endpoint}/datasources?api-version=2025-09-01
URI パラメーター
| 名前 | / | 必須 | 型 | 説明 |
|---|---|---|---|---|
|
endpoint
|
path | True |
string |
検索サービスのエンドポイント URL。 |
|
api-version
|
query | True |
string |
クライアント API のバージョン。 |
要求ヘッダー
| 名前 | 必須 | 型 | 説明 |
|---|---|---|---|
| x-ms-client-request-id |
string (uuid) |
デバッグを支援するためにリクエストとともに送信されたトラッキング ID。 |
要求本文
| 名前 | 必須 | 型 | 説明 |
|---|---|---|---|
| container | True |
データソースのデータコンテナ。 |
|
| credentials | True |
データソースの資格情報。 |
|
| name | True |
string |
データソースの名前。 |
| type | True |
データソースのタイプ。 |
|
| @odata.etag |
string |
データ ソースの ETag。 |
|
| dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
データソースのデータ変更検出ポリシー。 |
|
| dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
データソースのデータ削除検出ポリシー。 |
|
| description |
string |
データソースの説明。 |
|
| encryptionKey |
Azure Key Vault で作成する暗号化キーの説明。 このキーは、Microsoft を含む誰もデータ ソース定義の暗号化を解除できないことを完全に保証する必要がある場合に、データ ソース定義に追加レベルの保存時の暗号化を提供するために使用されます。 データソース定義を暗号化すると、常に暗号化されたままになります。 検索サービスは、このプロパティを null に設定しようとすると無視されます。 暗号化キーをローテーションする場合は、必要に応じてこのプロパティを変更できます。データソース定義は影響を受けません。 カスタマー マネージド キーによる暗号化は、無料の検索サービスでは使用できず、2019 年 1 月 1 日以降に作成された有料サービスでのみ使用できます。 |
応答
| 名前 | 型 | 説明 |
|---|---|---|
| 201 Created | ||
| Other Status Codes |
エラー応答。 |
例
SearchServiceCreateDataSource
要求のサンプル
POST https://stableexampleservice.search.windows.net/datasources?api-version=2025-09-01
{
"name": "tempdatasource",
"description": "My Azure Blob data source.",
"type": "azureblob",
"credentials": {
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net "
},
"container": {
"name": "doc-extraction-skillset",
"query": "E2E_Dsat"
},
"dataChangeDetectionPolicy": {
"highWaterMarkColumnName": "metadata_storage_last_modified",
"@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"
},
"dataDeletionDetectionPolicy": {
"softDeleteColumnName": "isDeleted",
"softDeleteMarkerValue": "true",
"@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"
},
"@odata.etag": "0x1234568AE7E58A1"
}
応答のサンプル
{
"@odata.etag": "0x1234568AE7E58A1",
"name": "tempdatasource",
"description": "My Azure Blob data source.",
"type": "azureblob",
"credentials": {
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net "
},
"container": {
"name": "doc-extraction-skillset",
"query": "E2E_Dsat"
},
"dataChangeDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
"highWaterMarkColumnName": "metadata_storage_last_modified"
},
"dataDeletionDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
"softDeleteColumnName": "isDeleted",
"softDeleteMarkerValue": "true"
}
}
定義
| 名前 | 説明 |
|---|---|
|
Azure |
検索サービス用に作成された登録済みアプリケーションの資格情報で、Azure Key Vault に格納されている暗号化キーへの認証済みアクセスに使用されます。 |
|
Data |
データソースへの接続に使用できる資格情報を表します。 |
|
Error |
リソース管理エラーの追加情報。 |
|
Error |
エラーの詳細。 |
|
Error |
エラー応答 |
|
High |
高水準点列の値に基づいて変更をキャプチャするデータ変更検出ポリシーを定義します。 |
|
Search |
インデックスが作成されるエンティティ (Azure SQL テーブルや CosmosDB コレクションなど) に関する情報を表します。 |
|
Search |
インデクサーの構成に使用できるデータソース定義を表します。 |
|
Search |
データソースのタイプを定義します。 |
|
Search |
Azure Key Vault の顧客管理暗号化キー。 作成および管理するキーを使用して、インデックスやシノニム マップなどの保存データの暗号化または暗号化解除を行うことができます。 |
|
Soft |
論理的な削除戦略を実装するデータ削除検出ポリシーを定義します。 指定された "論理的な削除" 列の値に基づいて項目を削除するかどうかを決定します。 |
|
Sql |
Azure SQL Database の統合変更追跡機能を使用して変更をキャプチャするデータ変更検出ポリシーを定義します。 |
AzureActiveDirectoryApplicationCredentials
検索サービス用に作成された登録済みアプリケーションの資格情報で、Azure Key Vault に格納されている暗号化キーへの認証済みアクセスに使用されます。
| 名前 | 型 | 説明 |
|---|---|---|
| applicationId |
string |
保存データを暗号化するときに使用する Azure Key Vault への必要なアクセス許可が付与された AAD アプリケーション ID。 アプリケーション ID を AAD アプリケーションのオブジェクト ID と混同しないでください。 |
| applicationSecret |
string |
指定した AAD アプリケーションの認証キー。 |
DataSourceCredentials
データソースへの接続に使用できる資格情報を表します。
| 名前 | 型 | 説明 |
|---|---|---|
| connectionString |
string |
データソースの接続文字列。 Azure SQL、Azure Blob、ADLS Gen 2、Azure Table の場合、マネージド ID を使用する場合は、接続文字列またはリソース ID になります。 CosmosDB の場合、これは、マネージド ID の ApiKind またはリソース ID を指定する書式設定された接続文字列になります。 Onelake ファイルの場合、接続文字列はワークスペース GUID またはワークスペース FQDN のいずれかになります。Onelake では、マネージド ID 接続のみがサポートされます。 接続文字列を更新しない場合は、 |
ErrorAdditionalInfo
リソース管理エラーの追加情報。
| 名前 | 型 | 説明 |
|---|---|---|
| info |
object |
追加情報。 |
| type |
string |
追加情報の種類。 |
ErrorDetail
エラーの詳細。
| 名前 | 型 | 説明 |
|---|---|---|
| additionalInfo |
エラーの追加情報。 |
|
| code |
string |
エラー コード。 |
| details |
エラーの詳細。 |
|
| message |
string |
エラー メッセージ。 |
| target |
string |
エラーターゲット。 |
ErrorResponse
エラー応答
| 名前 | 型 | 説明 |
|---|---|---|
| error |
エラー オブジェクト。 |
HighWaterMarkChangeDetectionPolicy
高水準点列の値に基づいて変更をキャプチャするデータ変更検出ポリシーを定義します。
| 名前 | 型 | 説明 |
|---|---|---|
| @odata.type |
string:
#Microsoft. |
データ変更検出ポリシーのタイプを指定する URI フラグメント。 |
| highWaterMarkColumnName |
string |
最高水準点列の名前。 |
SearchIndexerDataContainer
インデックスが作成されるエンティティ (Azure SQL テーブルや CosmosDB コレクションなど) に関する情報を表します。
| 名前 | 型 | 説明 |
|---|---|---|
| name |
string |
インデックスが作成されるテーブルまたはビュー (Azure SQL データ ソースの場合)、コレクション (CosmosDB データ ソースの場合)、コンテナー (Azure BLOB および ADLS Gen 2 データ ソースの場合)、Azure テーブル (Azure テーブル データ ソースの場合)、またはレイクハウス (Onelake データソースの場合) の名前。 |
| query |
string |
このデータコンテナに適用されるクエリ。 CosmosDB の場合、データソース クエリではデータをフラット化してフィルター処理できます。 Azure BLOB と ADLS Gen 2 の場合、クエリはフォルダーでフィルター処理できます。 Azure テーブルの場合、クエリは行データでフィルター処理できます。 Onelake の場合、クエリはフォルダーまたはショートカットでフィルター処理できます。 Azure SQL データソースではサポートされていません。 |
SearchIndexerDataSource
インデクサーの構成に使用できるデータソース定義を表します。
| 名前 | 型 | 説明 |
|---|---|---|
| @odata.etag |
string |
データ ソースの ETag。 |
| container |
データソースのデータコンテナ。 |
|
| credentials |
データソースの資格情報。 |
|
| dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
データソースのデータ変更検出ポリシー。 |
| dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
データソースのデータ削除検出ポリシー。 |
| description |
string |
データソースの説明。 |
| encryptionKey |
Azure Key Vault で作成する暗号化キーの説明。 このキーは、Microsoft を含む誰もデータ ソース定義の暗号化を解除できないことを完全に保証する必要がある場合に、データ ソース定義に追加レベルの保存時の暗号化を提供するために使用されます。 データソース定義を暗号化すると、常に暗号化されたままになります。 検索サービスは、このプロパティを null に設定しようとすると無視されます。 暗号化キーをローテーションする場合は、必要に応じてこのプロパティを変更できます。データソース定義は影響を受けません。 カスタマー マネージド キーによる暗号化は、無料の検索サービスでは使用できず、2019 年 1 月 1 日以降に作成された有料サービスでのみ使用できます。 |
|
| name |
string |
データソースの名前。 |
| type |
データソースのタイプ。 |
SearchIndexerDataSourceType
データソースのタイプを定義します。
| 値 | 説明 |
|---|---|
| azuresql |
資格情報が標準の SQL 接続文字列または SQL リソースの ResourceId のいずれかである Azure SQL データソースの定義。 コンテナー プロパティは、インデックスを作成するテーブルまたはビューを参照します。 クエリ パラメーターは、このデータソースではサポートされていません。 |
| cosmosdb |
資格情報は、キー ベースの接続の場合は AccountEndpoint、AccountKey、Database の詳細を含む書式設定された接続文字列、またはキーレス接続の場合は ResourceID と ApiKind の詳細を含む書式設定された接続文字列のいずれかである CosmosDB データ ソースの定義。 container プロパティはインデックスを作成する cosmosdb コレクションを参照し、省略可能な query プロパティはコレクションの SQL クエリを参照します。 |
| azureblob |
資格情報がストレージ接続文字列またはストレージ アカウントの ResourceId のいずれかである Azure BLOB データ ソースの定義。 コンテナー プロパティはインデックスを作成する BLOB コンテナーを参照し、オプションのクエリ プロパティはコンテナー内の特定のサブフォルダーを参照します。 |
| azuretable |
資格情報がテーブル接続文字列またはストレージ アカウントの ResourceId のいずれかである Azure Table データソースの定義。 container プロパティは、インデックスを作成する BLOB コンテナーを参照し、オプションの query プロパティを使用して行をフィルター処理できます。 |
| mysql |
資格情報が標準 ADO.NET 書式設定された SQL 接続文字列または SQL リソースの ResourceId のいずれかである Azure SQL データソースの定義。 コンテナー プロパティは、インデックスを作成するテーブルまたはビューを参照します。 クエリ パラメーターは、このデータソースではサポートされていません。 |
| adlsgen2 |
資格情報がストレージ接続文字列またはストレージ アカウントの ResourceId のいずれかである Azure ADLS Gen 2 データソースの定義。 コンテナー プロパティはインデックスを作成する BLOB コンテナーを参照し、オプションのクエリ プロパティはコンテナー内の特定のサブフォルダーを参照します。 |
| onelake |
資格情報が Fabric ワークスペース GUID またはワークスペース FQDN のいずれかである Microsoft Fabric Onelake データソースの定義。 コンテナー プロパティはレイクハウス GUID を参照し、オプションのクエリ プロパティはレイクハウス内のフォルダーまたはショートカットを参照します。 |
SearchResourceEncryptionKey
Azure Key Vault の顧客管理暗号化キー。 作成および管理するキーを使用して、インデックスやシノニム マップなどの保存データの暗号化または暗号化解除を行うことができます。
| 名前 | 型 | 説明 |
|---|---|---|
| accessCredentials |
Azure Key Vault へのアクセスに使用されるオプションの Azure Active Directory 資格情報。 代わりにマネージド ID を使用する場合は必要ありません。 |
|
| keyVaultKeyName |
string |
保存データの暗号化に使用する Azure Key Vault キーの名前。 |
| keyVaultKeyVersion |
string |
保存データの暗号化に使用する Azure Key Vault キーのバージョン。 |
| keyVaultUri |
string |
Azure Key Vault の URI (DNS 名とも呼ばれます) で、保存データの暗号化に使用するキーが含まれています。 URI の例は |
SoftDeleteColumnDeletionDetectionPolicy
論理的な削除戦略を実装するデータ削除検出ポリシーを定義します。 指定された "論理的な削除" 列の値に基づいて項目を削除するかどうかを決定します。
| 名前 | 型 | 説明 |
|---|---|---|
| @odata.type |
string:
#Microsoft. |
データ削除検出ポリシーのタイプを指定する URI フラグメント。 |
| softDeleteColumnName |
string |
論理的な削除検出に使用する列の名前。 |
| softDeleteMarkerValue |
string |
項目が削除済みとして識別されるマーカー値。 |
SqlIntegratedChangeTrackingPolicy
Azure SQL Database の統合変更追跡機能を使用して変更をキャプチャするデータ変更検出ポリシーを定義します。
| 名前 | 型 | 説明 |
|---|---|---|
| @odata.type |
string:
#Microsoft. |
データ変更検出ポリシーのタイプを指定する URI フラグメント。 |