Bagikan melalui


Data Sources - Create Or Update

Membuat sumber data baru atau memperbarui sumber data jika sudah ada.

PUT {endpoint}/datasources('{dataSourceName}')?api-version=2025-09-01

Parameter URI

Nama Dalam Diperlukan Jenis Deskripsi
dataSourceName
path True

string

Nama sumber data yang akan dibuat atau diperbarui.

endpoint
path True

string

URL titik akhir layanan pencarian.

api-version
query True

string

Versi Api Klien.

Header Permintaan

Nama Diperlukan Jenis Deskripsi
x-ms-client-request-id

string (uuid)

ID pelacakan yang dikirim dengan permintaan untuk membantu penelusuran kesalahan.

If-Match

string

Menentukan kondisi If-Match. Operasi akan dilakukan hanya jika ETag di server cocok dengan nilai ini.

If-None-Match

string

Menentukan kondisi If-None-Match. Operasi akan dilakukan hanya jika ETag di server tidak cocok dengan nilai ini.

Prefer True

string

Untuk permintaan HTTP PUT, menginstruksikan layanan untuk mengembalikan sumber daya yang dibuat/diperbarui setelah berhasil.

Isi Permintaan

Nama Diperlukan Jenis Deskripsi
container True

SearchIndexerDataContainer

Kontainer data untuk sumber data.

credentials True

DataSourceCredentials

Kredensial untuk sumber data.

name True

string

Nama sumber data.

type True

SearchIndexerDataSourceType

Jenis sumber data.

@odata.etag

string

ETag sumber data.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

Kebijakan deteksi perubahan data untuk sumber data.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

SoftDeleteColumnDeletionDetectionPolicy

Kebijakan deteksi penghapusan data untuk sumber data.

description

string

Deskripsi sumber data.

encryptionKey

SearchResourceEncryptionKey

Deskripsi kunci enkripsi yang Anda buat di Azure Key Vault. Kunci ini digunakan untuk memberikan tingkat enkripsi tambahan untuk definisi sumber data Anda ketika Anda menginginkan jaminan penuh bahwa tidak ada seorang pun, bahkan Microsoft, yang dapat mendekripsi definisi sumber data Anda. Setelah Anda mengenkripsi definisi sumber data Anda, definisi tersebut akan selalu terenkripsi. Layanan pencarian akan mengabaikan upaya untuk mengatur properti ini ke null. Anda dapat mengubah properti ini sesuai kebutuhan jika Anda ingin memutar kunci enkripsi Anda; Definisi sumber data Anda tidak akan terpengaruh. Enkripsi dengan kunci yang dikelola pelanggan tidak tersedia untuk layanan penelusuran gratis, dan hanya tersedia untuk layanan berbayar yang dibuat pada atau setelah 1 Januari 2019.

Respons

Nama Jenis Deskripsi
200 OK

SearchIndexerDataSource

201 Created

SearchIndexerDataSource

Other Status Codes

ErrorResponse

Respons kesalahan.

Contoh

SearchServiceCreateOrUpdateDataSource

Permintaan sampel

PUT https://stableexampleservice.search.windows.net/datasources('tempdatasource')?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"
}

Respon sampel

{
  "@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"
  }
}
{
  "@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"
  }
}

Definisi

Nama Deskripsi
AzureActiveDirectoryApplicationCredentials

Kredensial aplikasi terdaftar yang dibuat untuk layanan pencarian Anda, digunakan untuk akses terautentikasi ke kunci enkripsi yang disimpan di Azure Key Vault.

DataSourceCredentials

Mewakili kredensial yang dapat digunakan untuk menyambungkan ke sumber data.

ErrorAdditionalInfo

Info tambahan kesalahan manajemen sumber daya.

ErrorDetail

Detail kesalahan.

ErrorResponse

Tanggapan kesalahan

HighWaterMarkChangeDetectionPolicy

Menentukan kebijakan deteksi perubahan data yang menangkap perubahan berdasarkan nilai kolom tanda air tinggi.

SearchIndexerDataContainer

Mewakili informasi tentang entitas (seperti tabel Azure SQL atau koleksi CosmosDB) yang akan diindeks.

SearchIndexerDataSource

Mewakili definisi sumber data, yang dapat digunakan untuk mengonfigurasi pengindeks.

SearchIndexerDataSourceType

Menentukan jenis sumber data.

SearchResourceEncryptionKey

Kunci enkripsi yang dikelola pelanggan di Azure Key Vault. Kunci yang Anda buat dan kelola dapat digunakan untuk mengenkripsi atau mendekripsi data-at-rest, seperti indeks dan peta sinonim.

SoftDeleteColumnDeletionDetectionPolicy

Menentukan kebijakan deteksi penghapusan data yang menerapkan strategi penghapusan sementara. Ini menentukan apakah item harus dihapus berdasarkan nilai kolom 'penghapusan sementara' yang ditunjuk.

SqlIntegratedChangeTrackingPolicy

Menentukan kebijakan deteksi perubahan data yang menangkap perubahan menggunakan fitur Pelacakan Perubahan Terintegrasi Azure SQL Database.

AzureActiveDirectoryApplicationCredentials

Kredensial aplikasi terdaftar yang dibuat untuk layanan pencarian Anda, digunakan untuk akses terautentikasi ke kunci enkripsi yang disimpan di Azure Key Vault.

Nama Jenis Deskripsi
applicationId

string

ID Aplikasi AAD yang diberikan izin akses yang diperlukan ke Azure Key Vault yang akan digunakan saat mengenkripsi data Anda saat tidak aktif. ID Aplikasi tidak boleh disamakan dengan ID Objek untuk Aplikasi AAD Anda.

applicationSecret

string

Kunci otentikasi dari aplikasi AAD yang ditentukan.

DataSourceCredentials

Mewakili kredensial yang dapat digunakan untuk menyambungkan ke sumber data.

Nama Jenis Deskripsi
connectionString

string

String koneksi untuk sumber data. Untuk Azure SQL, Azure Blob, ADLS Gen 2, dan Azure Table, ini akan menjadi string koneksi atau ID sumber daya jika menggunakan identitas terkelola. Untuk CosmosDB, ini akan menjadi string koneksi yang diformat yang menentukan ApiKind atau ID sumber daya untuk identitas terkelola. Untuk file Onelake, string koneksi akan menjadi guid ruang kerja atau FQDN ruang kerja; Onelake hanya mendukung koneksi identitas terkelola. Atur ke <unchanged> (dengan tanda kurung) jika Anda tidak ingin string koneksi diperbarui. Atur ke <redacted> jika Anda ingin menghapus nilai string koneksi dari sumber data.

ErrorAdditionalInfo

Info tambahan kesalahan manajemen sumber daya.

Nama Jenis Deskripsi
info

object

Info tambahan.

type

string

Jenis info tambahan.

ErrorDetail

Detail kesalahan.

Nama Jenis Deskripsi
additionalInfo

ErrorAdditionalInfo[]

Info tambahan kesalahan.

code

string

Kode kesalahan.

details

ErrorDetail[]

Detail kesalahan.

message

string

Pesan kesalahan.

target

string

Target kesalahan.

ErrorResponse

Tanggapan kesalahan

Nama Jenis Deskripsi
error

ErrorDetail

Objek kesalahan.

HighWaterMarkChangeDetectionPolicy

Menentukan kebijakan deteksi perubahan data yang menangkap perubahan berdasarkan nilai kolom tanda air tinggi.

Nama Jenis Deskripsi
@odata.type string:

#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy

Fragmen URI yang menentukan jenis kebijakan deteksi perubahan data.

highWaterMarkColumnName

string

Nama kolom tanda air tinggi.

SearchIndexerDataContainer

Mewakili informasi tentang entitas (seperti tabel Azure SQL atau koleksi CosmosDB) yang akan diindeks.

Nama Jenis Deskripsi
name

string

Nama tabel atau tampilan (untuk sumber data Azure SQL), koleksi (untuk sumber data CosmosDB), kontainer (untuk sumber data Azure Blob dan ADLS Gen 2), Azure Table (untuk sumber data Azure Table), atau lakehouse (untuk sumber data Onelake) yang akan diindeks.

query

string

Kueri yang diterapkan ke kontainer data ini. Untuk kueri sumber data CosmosDB dapat meratakan dan memfilter data. Untuk Azure Blob dan ADLS Gen 2, kueri dapat memfilter berdasarkan folder. Untuk Azure Table kueri dapat memfilter berdasarkan data baris. Untuk kueri Onelake dapat memfilter berdasarkan folder atau pintasan. Tidak didukung oleh sumber data Azure SQL.

SearchIndexerDataSource

Mewakili definisi sumber data, yang dapat digunakan untuk mengonfigurasi pengindeks.

Nama Jenis Deskripsi
@odata.etag

string

ETag sumber data.

container

SearchIndexerDataContainer

Kontainer data untuk sumber data.

credentials

DataSourceCredentials

Kredensial untuk sumber data.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

Kebijakan deteksi perubahan data untuk sumber data.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

SoftDeleteColumnDeletionDetectionPolicy

Kebijakan deteksi penghapusan data untuk sumber data.

description

string

Deskripsi sumber data.

encryptionKey

SearchResourceEncryptionKey

Deskripsi kunci enkripsi yang Anda buat di Azure Key Vault. Kunci ini digunakan untuk memberikan tingkat enkripsi tambahan untuk definisi sumber data Anda ketika Anda menginginkan jaminan penuh bahwa tidak ada seorang pun, bahkan Microsoft, yang dapat mendekripsi definisi sumber data Anda. Setelah Anda mengenkripsi definisi sumber data Anda, definisi tersebut akan selalu terenkripsi. Layanan pencarian akan mengabaikan upaya untuk mengatur properti ini ke null. Anda dapat mengubah properti ini sesuai kebutuhan jika Anda ingin memutar kunci enkripsi Anda; Definisi sumber data Anda tidak akan terpengaruh. Enkripsi dengan kunci yang dikelola pelanggan tidak tersedia untuk layanan penelusuran gratis, dan hanya tersedia untuk layanan berbayar yang dibuat pada atau setelah 1 Januari 2019.

name

string

Nama sumber data.

type

SearchIndexerDataSourceType

Jenis sumber data.

SearchIndexerDataSourceType

Menentukan jenis sumber data.

Nilai Deskripsi
azuresql

Definisi sumber data Azure SQL yang kredensialnya dapat berupa string koneksi SQL standar atau ResourceId sumber daya SQL. Properti kontainer mengacu pada tabel atau tampilan yang akan diindeks. Parameter kueri tidak didukung untuk sumber data ini.

cosmosdb

Definisi sumber data CosmosDB yang kredensialnya dapat berupa string koneksi yang diformat yang berisi detail untuk AccountEndpoint, AccountKey, dan Database untuk koneksi berbasis kunci atau detail untuk ResourceID dan ApiKind untuk koneksi tanpa kunci. Properti kontainer mengacu pada koleksi cosmosdb yang akan diindeks dan properti kueri opsional mengacu pada kueri SQL pada koleksi.

azureblob

Definisi sumber data Azure Blob yang kredensialnya dapat berupa string koneksi penyimpanan atau ResourceId akun penyimpanan. Properti kontainer mengacu pada kontainer blob yang akan diindeks dan properti kueri opsional mengacu pada sub-folder tertentu dalam kontainer.

azuretable

Definisi sumber data Azure Table yang kredensialnya dapat berupa string koneksi tabel atau ResourceId akun penyimpanan. Properti kontainer mengacu pada kontainer blob yang akan diindeks dan properti kueri opsional dapat digunakan untuk memfilter baris.

mysql

Definisi sumber data Azure SQL yang kredensialnya dapat berupa string koneksi SQL standar ADO.NET berformat atau ResourceId sumber daya SQL. Properti kontainer mengacu pada tabel atau tampilan yang akan diindeks. Parameter kueri tidak didukung untuk sumber data ini.

adlsgen2

Definisi sumber data Azure ADLS Gen 2 yang kredensialnya dapat berupa string koneksi penyimpanan atau ResourceId akun penyimpanan. Properti kontainer mengacu pada kontainer blob yang akan diindeks dan properti kueri opsional mengacu pada sub-folder tertentu dalam kontainer.

onelake

Definisi sumber data Microsoft Fabric Onelake yang kredensialnya dapat berupa GUID ruang kerja Fabric atau FQDN ruang kerja. Properti kontainer mengacu pada GUID lakehouse dan properti kueri opsional mengacu pada folder atau pintasan di lakehouse.

SearchResourceEncryptionKey

Kunci enkripsi yang dikelola pelanggan di Azure Key Vault. Kunci yang Anda buat dan kelola dapat digunakan untuk mengenkripsi atau mendekripsi data-at-rest, seperti indeks dan peta sinonim.

Nama Jenis Deskripsi
accessCredentials

AzureActiveDirectoryApplicationCredentials

Kredensial Azure Active Directory opsional yang digunakan untuk mengakses Azure Key Vault Anda. Tidak diperlukan jika menggunakan identitas terkelola sebagai gantinya.

keyVaultKeyName

string

Nama kunci Azure Key Vault Anda yang akan digunakan untuk mengenkripsi data Anda saat tidak aktif.

keyVaultKeyVersion

string

Versi kunci Azure Key Vault Anda yang akan digunakan untuk mengenkripsi data Anda saat tidak aktif.

keyVaultUri

string

URI Azure Key Vault Anda, juga disebut sebagai nama DNS, yang berisi kunci yang akan digunakan untuk mengenkripsi data Anda saat tidak aktif. Contoh URI mungkin .https://my-keyvault-name.vault.azure.net

SoftDeleteColumnDeletionDetectionPolicy

Menentukan kebijakan deteksi penghapusan data yang menerapkan strategi penghapusan sementara. Ini menentukan apakah item harus dihapus berdasarkan nilai kolom 'penghapusan sementara' yang ditunjuk.

Nama Jenis Deskripsi
@odata.type string:

#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy

Fragmen URI yang menentukan jenis kebijakan deteksi penghapusan data.

softDeleteColumnName

string

Nama kolom yang akan digunakan untuk deteksi penghapusan sementara.

softDeleteMarkerValue

string

Nilai penanda yang mengidentifikasi item sebagai dihapus.

SqlIntegratedChangeTrackingPolicy

Menentukan kebijakan deteksi perubahan data yang menangkap perubahan menggunakan fitur Pelacakan Perubahan Terintegrasi Azure SQL Database.

Nama Jenis Deskripsi
@odata.type string:

#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy

Fragmen URI yang menentukan jenis kebijakan deteksi perubahan data.