Delen via


Indexers - Create

Hiermee maakt u een nieuwe indexeerfunctie.

POST {endpoint}/indexers?api-version=2025-09-01

URI-parameters

Name In Vereist Type Description
endpoint
path True

string

De eindpunt-URL van de zoekservice.

api-version
query True

string

Client-API-versie.

Aanvraagkoptekst

Name Vereist Type Description
x-ms-client-request-id

string (uuid)

De tracking-ID die is verzonden met het verzoek om te helpen bij het opsporen.

Aanvraagbody

Name Vereist Type Description
dataSourceName True

string

De naam van de gegevensbron waaruit deze indexeerfunctie gegevens leest.

name True

string

De naam van de indexeerder.

targetIndexName True

string

De naam van de index waarnaar deze indexeerder gegevens schrijft.

@odata.etag

string

De ETag van de indexeerfunctie.

description

string

De beschrijving van de indexeerfunctie.

disabled

boolean

Een waarde die aangeeft of de indexeerfunctie is uitgeschakeld. De standaardwaarde is vals.

encryptionKey

SearchResourceEncryptionKey

Een beschrijving van een versleutelingssleutel die u maakt in Azure Key Vault. Deze sleutel wordt gebruikt om een extra niveau van versleuteling-at-rest te bieden voor de definitie van uw indexeerfunctie (evenals de uitvoeringsstatus van de indexeerfunctie) wanneer u volledige zekerheid wilt dat niemand, zelfs Microsoft niet, deze kan ontsleutelen. Nadat u de definitie van de indexeerfunctie hebt versleuteld, blijft deze altijd versleuteld. De zoekservice negeert pogingen om deze eigenschap op null in te stellen. U kunt deze eigenschap naar wens wijzigen als u uw coderingssleutel wilt roteren; Dit heeft geen invloed op de definitie van de indexeerfunctie (en de uitvoeringsstatus van de indexeerfunctie). Versleuteling met door de klant beheerde sleutels is niet beschikbaar voor gratis zoekservices en is alleen beschikbaar voor betaalde services die op of na 1 januari 2019 zijn gemaakt.

fieldMappings

FieldMapping[]

Definieert toewijzingen tussen velden in de gegevensbron en de bijbehorende doelvelden in de index.

outputFieldMappings

FieldMapping[]

Uitvoerveldtoewijzingen worden toegepast na verrijking en onmiddellijk vóór het indexeren.

parameters

IndexingParameters

Parameters voor de uitvoering van de indexeerfunctie.

schedule

IndexingSchedule

Het schema voor deze indexeerfunctie.

skillsetName

string

De naam van de vaardigheden die met deze indexer worden uitgevoerd.

Antwoorden

Name Type Description
201 Created

SearchIndexer

Other Status Codes

ErrorResponse

Foutreactie.

Voorbeelden

SearchServiceCreateIndexer

Voorbeeldaanvraag

POST https://stableexampleservice.search.windows.net/indexers?api-version=2025-09-01


{
  "name": "myindexer",
  "description": "Description of the indexer",
  "dataSourceName": "mydocdbdatasource",
  "skillsetName": "myskillset",
  "targetIndexName": "stable-test",
  "schedule": {
    "interval": "P1D",
    "startTime": "2025-01-07T19:30:00Z"
  },
  "parameters": {
    "batchSize": 10,
    "maxFailedItems": 10,
    "maxFailedItemsPerBatch": 5,
    "configuration": {
      "excludedFileNameExtensions": ".png,.mp4",
      "indexedFileNameExtensions": ".docx,.pptx",
      "failOnUnsupportedContentType": true,
      "failOnUnprocessableDocument": false,
      "indexStorageMetadataOnlyForOversizedDocuments": true,
      "delimitedTextHeaders": "Header1,Header2",
      "delimitedTextDelimiter": "|",
      "firstLineContainsHeaders": true,
      "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"
}

Voorbeeldrespons

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "myindexer",
  "description": "Description of the indexer",
  "dataSourceName": "mydocdbdatasource",
  "skillsetName": "myskillset",
  "targetIndexName": "stable-test",
  "disabled": false,
  "schedule": {
    "interval": "P1D",
    "startTime": "2024-06-06T00:01:50.265Z"
  },
  "parameters": {
    "batchSize": 10,
    "maxFailedItems": 10,
    "maxFailedItemsPerBatch": 5,
    "configuration": {
      "excludedFileNameExtensions": ".png,.mp4",
      "indexedFileNameExtensions": ".docx,.pptx",
      "failOnUnsupportedContentType": true,
      "failOnUnprocessableDocument": false,
      "indexStorageMetadataOnlyForOversizedDocuments": true,
      "delimitedTextHeaders": "Header1,Header2",
      "delimitedTextDelimiter": "|",
      "firstLineContainsHeaders": true,
      "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"
      }
    }
  ]
}

Definities

Name Description
AzureActiveDirectoryApplicationCredentials

Referenties van een geregistreerde toepassing die is gemaakt voor uw zoekservice en die worden gebruikt voor geverifieerde toegang tot de versleutelingssleutels die zijn opgeslagen in Azure Key Vault.

BlobIndexerDataToExtract

Hiermee geeft u de gegevens op die moeten worden geëxtraheerd uit Azure Blob Storage en vertelt u de indexeerfunctie welke gegevens moeten worden geëxtraheerd uit de afbeeldingsinhoud wanneer 'imageAction' is ingesteld op een andere waarde dan 'geen'. Dit is van toepassing op ingesloten afbeeldingsinhoud in een .PDF of andere toepassing, of afbeeldingsbestanden zoals .jpg en .pngin Azure-blobs.

BlobIndexerImageAction

Bepaalt hoe ingesloten afbeeldingen en afbeeldingsbestanden worden verwerkt in Azure blob storage. Als u de configuratie "imageAction" instelt op een andere waarde dan "geen", moet er ook een skillset aan die indexeerfunctie worden gekoppeld.

BlobIndexerParsingMode

Vertegenwoordigt de parseermodus voor indexering vanuit een Azure-blobgegevensbron.

BlobIndexerPDFTextRotationAlgorithm

Bepaalt het algoritme voor tekstextractie uit PDF-bestanden in Azure Blob Storage.

ErrorAdditionalInfo

Aanvullende informatie over de resourcebeheerfout.

ErrorDetail

De foutdetails.

ErrorResponse

Foutreactie

FieldMapping

Definieert een toewijzing tussen een veld in een gegevensbron en een doelveld in een index.

FieldMappingFunction

Vertegenwoordigt een functie die een waarde uit een gegevensbron transformeert voordat deze wordt geïndexeerd.

IndexerExecutionEnvironment

Hiermee geeft u de omgeving op waarin de indexeerfunctie moet worden uitgevoerd.

IndexingParameters

Vertegenwoordigt parameters voor de uitvoering van de indexeerfunctie.

IndexingParametersConfiguration

Een woordenlijst met indexeerfunctiespecifieke configuratie-eigenschappen. Elke naam is de naam van een specifieke eigenschap. Elke waarde moet van een primitief type zijn.

IndexingSchedule

Vertegenwoordigt een schema voor de uitvoering van de indexeerfunctie.

SearchIndexer

Vertegenwoordigt een indexeerfunctie.

SearchResourceEncryptionKey

Een door de klant beheerde versleutelingssleutel in Azure Key Vault. Sleutels die u maakt en beheert, kunnen worden gebruikt om inactieve gegevens, zoals indexen en synoniementoewijzingen, te versleutelen of te ontsleutelen.

AzureActiveDirectoryApplicationCredentials

Referenties van een geregistreerde toepassing die is gemaakt voor uw zoekservice en die worden gebruikt voor geverifieerde toegang tot de versleutelingssleutels die zijn opgeslagen in Azure Key Vault.

Name Type Description
applicationId

string

Een AAD-toepassings-id waaraan de vereiste toegangsmachtigingen zijn verleend voor de Azure Key Vault die moet worden gebruikt bij het versleutelen van uw gegevens in rust. De applicatie-ID mag niet worden verward met de object-ID voor uw AAD-applicatie.

applicationSecret

string

De authenticatiesleutel van de opgegeven AAD-toepassing.

BlobIndexerDataToExtract

Hiermee geeft u de gegevens op die moeten worden geëxtraheerd uit Azure Blob Storage en vertelt u de indexeerfunctie welke gegevens moeten worden geëxtraheerd uit de afbeeldingsinhoud wanneer 'imageAction' is ingesteld op een andere waarde dan 'geen'. Dit is van toepassing op ingesloten afbeeldingsinhoud in een .PDF of andere toepassing, of afbeeldingsbestanden zoals .jpg en .pngin Azure-blobs.

Waarde Description
storageMetadata

Indexeert alleen de standaardblob-eigenschappen en door de gebruiker opgegeven metagegevens.

allMetadata

Extraheert metagegevens die worden geleverd door het Azure Blob Storage-subsysteem en de specifieke metagegevens van het inhoudstype (bijvoorbeeld metagegevens die uniek zijn voor slechts .png bestanden zijn geïndexeerd).

contentAndMetadata

Extraheert alle metagegevens en tekstuele inhoud van elke blob.

BlobIndexerImageAction

Bepaalt hoe ingesloten afbeeldingen en afbeeldingsbestanden worden verwerkt in Azure blob storage. Als u de configuratie "imageAction" instelt op een andere waarde dan "geen", moet er ook een skillset aan die indexeerfunctie worden gekoppeld.

Waarde Description
none

Hiermee worden ingesloten afbeeldingen of afbeeldingsbestanden in de gegevensset genegeerd. Dit is de standaardwaarde.

generateNormalizedImages

Hiermee extraheert u tekst uit afbeeldingen (bijvoorbeeld het woord 'STOP' van een verkeersstopbord) en sluit u deze in in het inhoudsveld. Voor deze actie moet "dataToExtract" is ingesteld op "contentAndMetadata". Een genormaliseerde afbeelding verwijst naar aanvullende verwerking die resulteert in uniforme afbeeldingsuitvoer, formaat en rotatie om consistente weergave te bevorderen wanneer u afbeeldingen opneemt in visuele zoekresultaten. Deze informatie wordt voor elke afbeelding gegenereerd wanneer u deze optie gebruikt.

generateNormalizedImagePerPage

Hiermee wordt tekst uit afbeeldingen geëxtraheerd (bijvoorbeeld het woord 'STOP' van een verkeersstopbord) en wordt deze ingesloten in het inhoudsveld, maar worden PDF-bestanden anders behandeld in die zin dat elke pagina wordt weergegeven als een afbeelding en dienovereenkomstig wordt genormaliseerd, in plaats van ingesloten afbeeldingen te extraheren. Niet-PDF-bestandstypen worden op dezelfde manier behandeld als wanneer "generateNormalizedImages" was ingesteld.

BlobIndexerParsingMode

Vertegenwoordigt de parseermodus voor indexering vanuit een Azure-blobgegevensbron.

Waarde Description
default

Stel in op standaard voor normale bestandsverwerking.

text

Stel in op tekst om de indexeringsprestaties van bestanden met tekst zonder opmaak in blobopslag te verbeteren.

delimitedText

Stel in op delimitedText wanneer blobs gewone CSV-bestanden zijn.

json

Stel in op json om gestructureerde inhoud uit JSON-bestanden te extraheren.

jsonArray

Stel in op jsonArray om afzonderlijke elementen van een JSON-matrix als afzonderlijke documenten te extraheren.

jsonLines

Stel in op jsonLines om afzonderlijke JSON-entiteiten, gescheiden door een nieuwe regel, als afzonderlijke documenten te extraheren.

BlobIndexerPDFTextRotationAlgorithm

Bepaalt het algoritme voor tekstextractie uit PDF-bestanden in Azure Blob Storage.

Waarde Description
none

Maakt gebruik van normale tekstextractie. Dit is de standaardwaarde.

detectAngles

Kan een betere en beter leesbare tekstextractie opleveren uit PDF-bestanden waarin geroteerde tekst zit. Houd er rekening mee dat er een kleine impact kan zijn op de prestatiesnelheid wanneer deze parameter wordt gebruikt. Deze parameter is alleen van toepassing op PDF-bestanden en alleen op PDF's met ingesloten tekst. Als de geroteerde tekst voorkomt in een ingesloten afbeelding in de PDF, is deze parameter niet van toepassing.

ErrorAdditionalInfo

Aanvullende informatie over de resourcebeheerfout.

Name Type Description
info

object

De aanvullende informatie.

type

string

Het extra informatietype.

ErrorDetail

De foutdetails.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

De fout bevat aanvullende informatie.

code

string

De foutcode.

details

ErrorDetail[]

De foutdetails.

message

string

Het foutbericht.

target

string

Het foutdoel.

ErrorResponse

Foutreactie

Name Type Description
error

ErrorDetail

Het foutobject.

FieldMapping

Definieert een toewijzing tussen een veld in een gegevensbron en een doelveld in een index.

Name Type Description
mappingFunction

FieldMappingFunction

Een functie die op elke bronveldwaarde moet worden toegepast voordat deze wordt geïndexeerd.

sourceFieldName

string

De naam van het veld in de gegevensbron.

targetFieldName

string

De naam van het doelveld in de index. Standaard hetzelfde als de naam van het bronveld.

FieldMappingFunction

Vertegenwoordigt een functie die een waarde uit een gegevensbron transformeert voordat deze wordt geïndexeerd.

Name Type Description
name

string

De naam van de veldtoewijzingsfunctie.

parameters

object

Een woordenboek met parameternaam/waarde-paren die aan de functie moeten worden doorgegeven. Elke waarde moet van een primitief type zijn.

IndexerExecutionEnvironment

Hiermee geeft u de omgeving op waarin de indexeerfunctie moet worden uitgevoerd.

Waarde Description
standard

Geeft aan dat de zoekservice kan bepalen waar de indexeerfunctie moet worden uitgevoerd. Dit is de standaardomgeving wanneer er niets is gespecificeerd en de aanbevolen waarde is.

private

Geeft aan dat de indexeerfunctie moet worden uitgevoerd met de omgeving die speciaal is ingericht voor de zoekservice. Dit mag alleen worden opgegeven als de uitvoeringsomgeving als de indexeerfunctie veilig toegang moet hebben tot resources via gedeelde privékoppelingsbronnen.

IndexingParameters

Vertegenwoordigt parameters voor de uitvoering van de indexeerfunctie.

Name Type Default value Description
batchSize

integer (int32)

Het aantal items dat uit de gegevensbron wordt gelezen en als één batch wordt geïndexeerd om de prestaties te verbeteren. De standaardinstelling is afhankelijk van het type gegevensbron.

configuration

IndexingParametersConfiguration

Een woordenlijst met indexeerfunctiespecifieke configuratie-eigenschappen. Elke naam is de naam van een specifieke eigenschap. Elke waarde moet van een primitief type zijn.

maxFailedItems

integer (int32)

0

Het maximum aantal items dat niet kan worden geïndexeerd om door de uitvoering van de indexeerfunctie te worden beschouwd. -1 betekent geen limiet. De standaardwaarde is 0.

maxFailedItemsPerBatch

integer (int32)

0

Het maximale aantal artikelen in een afzonderlijke batch dat niet kan worden geïndexeerd om de batch nog steeds als succesvol te beschouwen. -1 betekent geen limiet. De standaardwaarde is 0.

IndexingParametersConfiguration

Een woordenlijst met indexeerfunctiespecifieke configuratie-eigenschappen. Elke naam is de naam van een specifieke eigenschap. Elke waarde moet van een primitief type zijn.

Name Type Default value Description
allowSkillsetToReadFileData

boolean

False

Als dit waar is, wordt een pad //document//file_data gemaakt dat een object is dat de oorspronkelijke bestandsgegevens vertegenwoordigt die zijn gedownload van uw blobgegevensbron. Hierdoor kunt u de oorspronkelijke bestandsgegevens doorgeven aan een aangepaste vaardigheid voor verwerking binnen de verrijkingspijplijn, of aan de vaardigheid Documentextractie.

dataToExtract

BlobIndexerDataToExtract

contentAndMetadata

Hiermee geeft u de gegevens op die moeten worden geëxtraheerd uit Azure Blob Storage en vertelt u de indexeerfunctie welke gegevens moeten worden geëxtraheerd uit de afbeeldingsinhoud wanneer 'imageAction' is ingesteld op een andere waarde dan 'geen'. Dit is van toepassing op ingesloten afbeeldingsinhoud in een .PDF of andere toepassing, of afbeeldingsbestanden zoals .jpg en .pngin Azure-blobs.

delimitedTextDelimiter

string

Voor CSV-blobs geeft u het scheidingsteken aan het einde van de regel op voor CSV-bestanden waarbij elke regel een nieuw document begint (bijvoorbeeld '|').

delimitedTextHeaders

string

Voor CSV-blobs geeft u een door komma's gescheiden lijst met kolomkoppen op, handig voor het toewijzen van bronvelden aan doelvelden in een index.

documentRoot

string

Voor JSON-matrices kunt u, gegeven een gestructureerd of semi-gestructureerd document, een pad naar de matrix opgeven met behulp van deze eigenschap.

excludedFileNameExtensions

string

Door komma's gescheiden lijst met bestandsnaamextensies die moeten worden genegeerd bij het verwerken vanuit Azure Blob Storage. U kunt bijvoorbeeld ".png, .mp4" uitsluiten om deze bestanden tijdens het indexeren over te slaan.

executionEnvironment

IndexerExecutionEnvironment

standard

Hiermee geeft u de omgeving op waarin de indexeerfunctie moet worden uitgevoerd.

failOnUnprocessableDocument

boolean

False

Stel voor Azure-blobs deze in op onwaar als u wilt doorgaan met indexeren als een document niet kan worden geïndexeerd.

failOnUnsupportedContentType

boolean

False

Voor Azure-blobs stelt u deze in op onwaar als u wilt doorgaan met indexeren wanneer een niet-ondersteund inhoudstype wordt aangetroffen en u niet alle inhoudstypen (bestandsextensies) van tevoren kent.

firstLineContainsHeaders

boolean

True

Voor CSV-blobs geeft dit aan dat de eerste (niet-lege) regel van elke blob koppen bevat.

imageAction

BlobIndexerImageAction

none

Bepaalt hoe ingesloten afbeeldingen en afbeeldingsbestanden worden verwerkt in Azure blob storage. Als u de configuratie "imageAction" instelt op een andere waarde dan "geen", moet er ook een skillset aan die indexeerfunctie worden gekoppeld.

indexStorageMetadataOnlyForOversizedDocuments

boolean

False

Stel voor Azure-blobs deze eigenschap in op true om nog steeds opslagmetagegevens te indexeren voor blob-inhoud die te groot is om te verwerken. Oversized blobs worden standaard behandeld als fouten. Zie voor limieten voor de blobgrootte https://learn.microsoft.com/azure/search/search-limits-quotas-capacity.

indexedFileNameExtensions

string

Door komma's gescheiden lijst met bestandsnaamextensies die moeten worden geselecteerd bij verwerking vanuit Azure Blob Storage. U kunt zich bijvoorbeeld concentreren op het indexeren van specifieke toepassingsbestanden ".docx, .pptx, .msg" om specifiek die bestandstypen op te nemen.

parsingMode

BlobIndexerParsingMode

default

Vertegenwoordigt de parseermodus voor indexering vanuit een Azure-blobgegevensbron.

pdfTextRotationAlgorithm

BlobIndexerPDFTextRotationAlgorithm

none

Bepaalt het algoritme voor tekstextractie uit PDF-bestanden in Azure Blob Storage.

queryTimeout

string

00:05:00

Hiermee wordt de time-out verlengd tot na de standaardwaarde van 5 minuten voor Azure SQL-databasegegevensbronnen, opgegeven in de indeling 'uu:mm:ss'.

IndexingSchedule

Vertegenwoordigt een schema voor de uitvoering van de indexeerfunctie.

Name Type Description
interval

string (duration)

Het tijdsinterval tussen de uitvoeringen van de indexeerfunctie.

startTime

string (date-time)

Het tijdstip waarop een indexeerfunctie moet beginnen met werken.

SearchIndexer

Vertegenwoordigt een indexeerfunctie.

Name Type Default value Description
@odata.etag

string

De ETag van de indexeerfunctie.

dataSourceName

string

De naam van de gegevensbron waaruit deze indexeerfunctie gegevens leest.

description

string

De beschrijving van de indexeerfunctie.

disabled

boolean

False

Een waarde die aangeeft of de indexeerfunctie is uitgeschakeld. De standaardwaarde is vals.

encryptionKey

SearchResourceEncryptionKey

Een beschrijving van een versleutelingssleutel die u maakt in Azure Key Vault. Deze sleutel wordt gebruikt om een extra niveau van versleuteling-at-rest te bieden voor de definitie van uw indexeerfunctie (evenals de uitvoeringsstatus van de indexeerfunctie) wanneer u volledige zekerheid wilt dat niemand, zelfs Microsoft niet, deze kan ontsleutelen. Nadat u de definitie van de indexeerfunctie hebt versleuteld, blijft deze altijd versleuteld. De zoekservice negeert pogingen om deze eigenschap op null in te stellen. U kunt deze eigenschap naar wens wijzigen als u uw coderingssleutel wilt roteren; Dit heeft geen invloed op de definitie van de indexeerfunctie (en de uitvoeringsstatus van de indexeerfunctie). Versleuteling met door de klant beheerde sleutels is niet beschikbaar voor gratis zoekservices en is alleen beschikbaar voor betaalde services die op of na 1 januari 2019 zijn gemaakt.

fieldMappings

FieldMapping[]

Definieert toewijzingen tussen velden in de gegevensbron en de bijbehorende doelvelden in de index.

name

string

De naam van de indexeerder.

outputFieldMappings

FieldMapping[]

Uitvoerveldtoewijzingen worden toegepast na verrijking en onmiddellijk vóór het indexeren.

parameters

IndexingParameters

Parameters voor de uitvoering van de indexeerfunctie.

schedule

IndexingSchedule

Het schema voor deze indexeerfunctie.

skillsetName

string

De naam van de vaardigheden die met deze indexer worden uitgevoerd.

targetIndexName

string

De naam van de index waarnaar deze indexeerder gegevens schrijft.

SearchResourceEncryptionKey

Een door de klant beheerde versleutelingssleutel in Azure Key Vault. Sleutels die u maakt en beheert, kunnen worden gebruikt om inactieve gegevens, zoals indexen en synoniementoewijzingen, te versleutelen of te ontsleutelen.

Name Type Description
accessCredentials

AzureActiveDirectoryApplicationCredentials

Optionele Azure Active Directory-referenties die worden gebruikt voor toegang tot uw Azure Key Vault. Niet vereist als u in plaats daarvan beheerde identiteit gebruikt.

keyVaultKeyName

string

De naam van uw Azure Key Vault-sleutel die moet worden gebruikt om uw gegevens in rust te versleutelen.

keyVaultKeyVersion

string

De versie van uw Azure Key Vault-sleutel die moet worden gebruikt om uw gegevens in rust te versleutelen.

keyVaultUri

string

De URI van uw Azure Key Vault, ook wel DNS-naam genoemd, die de sleutel bevat die moet worden gebruikt om uw gegevens in rust te versleutelen. Een voorbeeld van een URI zou kunnen zijn https://my-keyvault-name.vault.azure.net.