Compartir a través de


Indexers - Create

Crea un nuevo indexador.

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

Parámetros de identificador URI

Nombre En Requerido Tipo Description
endpoint
path True

string

La dirección URL del punto de conexión del servicio de búsqueda.

api-version
query True

string

Versión de api de cliente.

Encabezado de la solicitud

Nombre Requerido Tipo Description
x-ms-client-request-id

string (uuid)

El identificador de seguimiento enviado con la solicitud para ayudar con la depuración.

Cuerpo de la solicitud

Nombre Requerido Tipo Description
dataSourceName True

string

Nombre del origen de datos desde el que este indexador lee los datos.

name True

string

Nombre del indizador.

targetIndexName True

string

Nombre del índice en el que este indexador escribe datos.

@odata.etag

string

La ETag del indexador.

description

string

Descripción del indexador.

disabled

boolean

Valor que indica si el indexador está deshabilitado. El valor predeterminado es False.

encryptionKey

SearchResourceEncryptionKey

Descripción de una clave de cifrado que se crea en Azure Key Vault. Esta clave se usa para proporcionar un nivel adicional de cifrado en reposo para la definición del indexador (así como el estado de ejecución del indexador) cuando desea una garantía total de que nadie, ni siquiera Microsoft, puede descifrarlos. Una vez que haya cifrado la definición del indexador, siempre permanecerá cifrada. El servicio de búsqueda omitirá los intentos de establecer esta propiedad en null. Puede cambiar esta propiedad según sea necesario si desea rotar su clave de cifrado; La definición del indexador (y el estado de ejecución del indexador) no se verán afectados. El cifrado con claves administradas por el cliente no está disponible para los servicios de búsqueda gratuitos y solo está disponible para los servicios pagos creados a partir del 1 de enero de 2019.

fieldMappings

FieldMapping[]

Define las asignaciones entre los campos de la fuente de datos y los campos de destino correspondientes del índice.

outputFieldMappings

FieldMapping[]

Las asignaciones de campos de salida se aplican después del enriquecimiento e inmediatamente antes de la indexación.

parameters

IndexingParameters

Parámetros para la ejecución del indexador.

schedule

IndexingSchedule

La programación de este indexador.

skillsetName

string

Nombre del conjunto de aptitudes que se ejecuta con este indexador.

Respuestas

Nombre Tipo Description
201 Created

SearchIndexer

Other Status Codes

ErrorResponse

Respuesta de error.

Ejemplos

SearchServiceCreateIndexer

Solicitud de ejemplo

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

Respuesta de muestra

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

Definiciones

Nombre Description
AzureActiveDirectoryApplicationCredentials

Credenciales de una aplicación registrada creada para el servicio de búsqueda, usadas para el acceso autenticado a las claves de cifrado almacenadas en Azure Key Vault.

BlobIndexerDataToExtract

Especifica los datos que se van a extraer de Azure Blob Storage e indica al indexador qué datos extraer del contenido de la imagen cuando "imageAction" se establece en un valor distinto de "none". Esto se aplica al contenido de imagen incrustado en una .PDF u otra aplicación, o a archivos de imagen como .jpg y .png, en blobs de Azure.

BlobIndexerImageAction

Determina cómo procesar imágenes incrustadas y archivos de imagen en Azure Blob Storage. Establecer la configuración "imageAction" en cualquier valor distinto de "none" requiere que también se asocie un conjunto de aptitudes a ese indexador.

BlobIndexerParsingMode

Representa el modo de análisis para la indexación desde un origen de datos de blob de Azure.

BlobIndexerPDFTextRotationAlgorithm

Determina el algoritmo para la extracción de texto de archivos PDF en Azure Blob Storage.

ErrorAdditionalInfo

Información adicional sobre el error de administración de recursos.

ErrorDetail

Detalle del error.

ErrorResponse

Respuesta de error

FieldMapping

Define una asignación entre un campo de un origen de datos y un campo de destino de un índice.

FieldMappingFunction

Representa una función que transforma un valor de un origen de datos antes de la indexación.

IndexerExecutionEnvironment

Especifica el entorno en el que se debe ejecutar el indexador.

IndexingParameters

Representa los parámetros para la ejecución del indexador.

IndexingParametersConfiguration

Diccionario de propiedades de configuración específicas del indexador. Cada nombre es el nombre de una propiedad específica. Cada valor debe ser de un tipo primitivo.

IndexingSchedule

Representa una programación para la ejecución del indexador.

SearchIndexer

Representa un indizador.

SearchResourceEncryptionKey

Una clave de cifrado administrada por el cliente en Azure Key Vault. Las claves que crea y administra se pueden usar para cifrar o descifrar datos en reposo, como índices y mapas de sinónimos.

AzureActiveDirectoryApplicationCredentials

Credenciales de una aplicación registrada creada para el servicio de búsqueda, usadas para el acceso autenticado a las claves de cifrado almacenadas en Azure Key Vault.

Nombre Tipo Description
applicationId

string

Un identificador de aplicación de AAD al que se concedieron los permisos de acceso necesarios a Azure Key Vault que se usará al cifrar los datos en reposo. El identificador de aplicación no debe confundirse con el identificador de objeto de la aplicación de AAD.

applicationSecret

string

Clave de autenticación de la aplicación de AAD especificada.

BlobIndexerDataToExtract

Especifica los datos que se van a extraer de Azure Blob Storage e indica al indexador qué datos extraer del contenido de la imagen cuando "imageAction" se establece en un valor distinto de "none". Esto se aplica al contenido de imagen incrustado en una .PDF u otra aplicación, o a archivos de imagen como .jpg y .png, en blobs de Azure.

Valor Description
storageMetadata

Indexa solo las propiedades de blob estándar y los metadatos especificados por el usuario.

allMetadata

Extrae los metadatos proporcionados por el subsistema de almacenamiento de blobs de Azure y los metadatos específicos del tipo de contenido (por ejemplo, se indexan los metadatos únicos de solo .png archivos).

contentAndMetadata

Extrae todos los metadatos y el contenido textual de cada blob.

BlobIndexerImageAction

Determina cómo procesar imágenes incrustadas y archivos de imagen en Azure Blob Storage. Establecer la configuración "imageAction" en cualquier valor distinto de "none" requiere que también se asocie un conjunto de aptitudes a ese indexador.

Valor Description
none

Ignora las imágenes incrustadas o los archivos de imagen en el conjunto de datos. Este es el valor predeterminado.

generateNormalizedImages

Extrae texto de imágenes (por ejemplo, la palabra "STOP" de una señal de parada de tráfico) y lo incrusta en el campo de contenido. Esta acción requiere que "dataToExtract" se establezca en "contentAndMetadata". Una imagen normalizada hace referencia a un procesamiento adicional que da como resultado una salida de imagen uniforme, con tamaño y rotación para promover una representación coherente cuando se incluyen imágenes en los resultados de búsqueda visual. Esta información se genera para cada imagen cuando se utiliza esta opción.

generateNormalizedImagePerPage

Extrae texto de las imágenes (por ejemplo, la palabra "STOP" de una señal de alto de tráfico) y lo incrusta en el campo de contenido, pero trata los archivos PDF de manera diferente en el sentido de que cada página se representará como una imagen y se normalizará en consecuencia, en lugar de extraer imágenes incrustadas. Los tipos de archivo que no sean PDF se tratarán igual que si se estableciera "generateNormalizedImages".

BlobIndexerParsingMode

Representa el modo de análisis para la indexación desde un origen de datos de blob de Azure.

Valor Description
default

Se establece en predeterminado para el procesamiento normal de archivos.

text

Establézcalo en texto para mejorar el rendimiento de la indexación en archivos de texto sin formato en Blob Storage.

delimitedText

Establézcalo en delimitedText cuando los blobs sean archivos CSV sin formato.

json

Establézcalo en json para extraer contenido estructurado de archivos JSON.

jsonArray

Establézcalo en jsonArray para extraer elementos individuales de una matriz JSON como documentos independientes.

jsonLines

Establézcalo en jsonLines para extraer entidades JSON individuales, separadas por una nueva línea, como documentos independientes.

BlobIndexerPDFTextRotationAlgorithm

Determina el algoritmo para la extracción de texto de archivos PDF en Azure Blob Storage.

Valor Description
none

Aprovecha la extracción de texto normal. Este es el valor predeterminado.

detectAngles

Puede producir una extracción de texto mejor y más legible de archivos PDF que tienen texto rotado dentro de ellos. Tenga en cuenta que puede haber un pequeño impacto en la velocidad de rendimiento cuando se utiliza este parámetro. Este parámetro solo se aplica a los archivos PDF y solo a los archivos PDF con texto incrustado. Si el texto girado aparece dentro de una imagen incrustada en el PDF, este parámetro no se aplica.

ErrorAdditionalInfo

Información adicional sobre el error de administración de recursos.

Nombre Tipo Description
info

object

Información adicional.

type

string

Tipo de información adicional.

ErrorDetail

Detalle del error.

Nombre Tipo Description
additionalInfo

ErrorAdditionalInfo[]

Información adicional del error.

code

string

Código de error.

details

ErrorDetail[]

Detalles del error.

message

string

El mensaje de error.

target

string

Destino del error.

ErrorResponse

Respuesta de error

Nombre Tipo Description
error

ErrorDetail

Objeto de error.

FieldMapping

Define una asignación entre un campo de un origen de datos y un campo de destino de un índice.

Nombre Tipo Description
mappingFunction

FieldMappingFunction

Una función que se aplica a cada valor de campo de origen antes de la indexación.

sourceFieldName

string

El nombre del campo en la fuente de datos.

targetFieldName

string

El nombre del campo de destino en el índice. Igual que el nombre del campo de origen de forma predeterminada.

FieldMappingFunction

Representa una función que transforma un valor de un origen de datos antes de la indexación.

Nombre Tipo Description
name

string

El nombre de la función de asignación de campos.

parameters

object

Un diccionario de pares de nombre/valor de parámetro para pasar a la función. Cada valor debe ser de un tipo primitivo.

IndexerExecutionEnvironment

Especifica el entorno en el que se debe ejecutar el indexador.

Valor Description
standard

Indica que el servicio de búsqueda puede determinar dónde debe ejecutarse el indexador. Este es el entorno predeterminado cuando no se especifica nada y es el valor recomendado.

private

Indica que el indexador debe ejecutarse con el entorno aprovisionado específicamente para el servicio de búsqueda. Esto solo debe especificarse como entorno de ejecución si el indexador necesita acceder a los recursos de forma segura a través de recursos de vínculo privado compartidos.

IndexingParameters

Representa los parámetros para la ejecución del indexador.

Nombre Tipo Valor predeterminado Description
batchSize

integer (int32)

El número de elementos que se leen desde el origen de datos y se indexan como un solo lote para mejorar el rendimiento. El valor predeterminado depende del tipo de origen de datos.

configuration

IndexingParametersConfiguration

Diccionario de propiedades de configuración específicas del indexador. Cada nombre es el nombre de una propiedad específica. Cada valor debe ser de un tipo primitivo.

maxFailedItems

integer (int32)

0

Número máximo de elementos que pueden producir un error en la indexación para que la ejecución del indexador se siga considerando correcta. -1 significa que no hay límite. El valor predeterminado es 0.

maxFailedItemsPerBatch

integer (int32)

0

El número máximo de elementos de un solo lote que pueden producir un error en la indexación para que el lote se considere correcto. -1 significa que no hay límite. El valor predeterminado es 0.

IndexingParametersConfiguration

Diccionario de propiedades de configuración específicas del indexador. Cada nombre es el nombre de una propiedad específica. Cada valor debe ser de un tipo primitivo.

Nombre Tipo Valor predeterminado Description
allowSkillsetToReadFileData

boolean

False

Si es true, creará una ruta de acceso //document//file_data que sea un objeto que represente los datos de archivo originales descargados del origen de datos de blobs. Esto le permite pasar los datos del archivo original a una aptitud personalizada para su procesamiento dentro de la canalización de enriquecimiento o a la aptitud Extracción de documentos.

dataToExtract

BlobIndexerDataToExtract

contentAndMetadata

Especifica los datos que se van a extraer de Azure Blob Storage e indica al indexador qué datos extraer del contenido de la imagen cuando "imageAction" se establece en un valor distinto de "none". Esto se aplica al contenido de imagen incrustado en una .PDF u otra aplicación, o a archivos de imagen como .jpg y .png, en blobs de Azure.

delimitedTextDelimiter

string

En el caso de los blobs CSV, especifica el delimitador de un solo carácter al final de la línea para los archivos CSV en los que cada línea inicia un nuevo documento (por ejemplo, "|").

delimitedTextHeaders

string

Para los blobs CSV, especifica una lista delimitada por comas de encabezados de columna, útil para asignar campos de origen a campos de destino en un índice.

documentRoot

string

Para las matrices JSON, dado un documento estructurado o semiestructurado, puede especificar una ruta de acceso a la matriz mediante esta propiedad.

excludedFileNameExtensions

string

Lista delimitada por comas de extensiones de nombre de archivo que se van a omitir al procesar desde Azure Blob Storage. Por ejemplo, puede excluir ".png, .mp4" para omitir esos archivos durante la indexación.

executionEnvironment

IndexerExecutionEnvironment

standard

Especifica el entorno en el que se debe ejecutar el indexador.

failOnUnprocessableDocument

boolean

False

En el caso de los blobs de Azure, establézcalo en false si desea continuar con la indexación si se produce un error en la indexación de un documento.

failOnUnsupportedContentType

boolean

False

En el caso de los blobs de Azure, establézcalo en false si desea continuar con la indexación cuando se encuentra un tipo de contenido no admitido y no conoce todos los tipos de contenido (extensiones de archivo) de antemano.

firstLineContainsHeaders

boolean

True

En el caso de los blobs CSV, indica que la primera línea (no en blanco) de cada blob contiene encabezados.

imageAction

BlobIndexerImageAction

none

Determina cómo procesar imágenes incrustadas y archivos de imagen en Azure Blob Storage. Establecer la configuración "imageAction" en cualquier valor distinto de "none" requiere que también se asocie un conjunto de aptitudes a ese indexador.

indexStorageMetadataOnlyForOversizedDocuments

boolean

False

En el caso de los blobs de Azure, establezca esta propiedad en true para seguir indexando los metadatos de almacenamiento del contenido del blob que es demasiado grande para procesarlo. Los blobs demasiado grandes se tratan como errores de forma predeterminada. Para conocer los límites del tamaño de blob, consulte https://learn.microsoft.com/azure/search/search-limits-quotas-capacity.

indexedFileNameExtensions

string

Lista delimitada por comas de extensiones de nombre de archivo que se van a seleccionar al procesar desde Azure Blob Storage. Por ejemplo, puede centrar la indexación en archivos de aplicación específicos ".docx, .pptx, .msg" para incluir específicamente esos tipos de archivo.

parsingMode

BlobIndexerParsingMode

default

Representa el modo de análisis para la indexación desde un origen de datos de blob de Azure.

pdfTextRotationAlgorithm

BlobIndexerPDFTextRotationAlgorithm

none

Determina el algoritmo para la extracción de texto de archivos PDF en Azure Blob Storage.

queryTimeout

string

00:05:00

Aumenta el tiempo de espera más allá del valor predeterminado de 5 minutos para los orígenes de datos de Azure SQL Database, especificado en el formato "hh:mm:ss".

IndexingSchedule

Representa una programación para la ejecución del indexador.

Nombre Tipo Description
interval

string (duration)

Intervalo de tiempo entre ejecuciones del indexador.

startTime

string (date-time)

Hora en la que un indexador debe comenzar a ejecutarse.

SearchIndexer

Representa un indizador.

Nombre Tipo Valor predeterminado Description
@odata.etag

string

La ETag del indexador.

dataSourceName

string

Nombre del origen de datos desde el que este indexador lee los datos.

description

string

Descripción del indexador.

disabled

boolean

False

Valor que indica si el indexador está deshabilitado. El valor predeterminado es False.

encryptionKey

SearchResourceEncryptionKey

Descripción de una clave de cifrado que se crea en Azure Key Vault. Esta clave se usa para proporcionar un nivel adicional de cifrado en reposo para la definición del indexador (así como el estado de ejecución del indexador) cuando desea una garantía total de que nadie, ni siquiera Microsoft, puede descifrarlos. Una vez que haya cifrado la definición del indexador, siempre permanecerá cifrada. El servicio de búsqueda omitirá los intentos de establecer esta propiedad en null. Puede cambiar esta propiedad según sea necesario si desea rotar su clave de cifrado; La definición del indexador (y el estado de ejecución del indexador) no se verán afectados. El cifrado con claves administradas por el cliente no está disponible para los servicios de búsqueda gratuitos y solo está disponible para los servicios pagos creados a partir del 1 de enero de 2019.

fieldMappings

FieldMapping[]

Define las asignaciones entre los campos de la fuente de datos y los campos de destino correspondientes del índice.

name

string

Nombre del indizador.

outputFieldMappings

FieldMapping[]

Las asignaciones de campos de salida se aplican después del enriquecimiento e inmediatamente antes de la indexación.

parameters

IndexingParameters

Parámetros para la ejecución del indexador.

schedule

IndexingSchedule

La programación de este indexador.

skillsetName

string

Nombre del conjunto de aptitudes que se ejecuta con este indexador.

targetIndexName

string

Nombre del índice en el que este indexador escribe datos.

SearchResourceEncryptionKey

Una clave de cifrado administrada por el cliente en Azure Key Vault. Las claves que crea y administra se pueden usar para cifrar o descifrar datos en reposo, como índices y mapas de sinónimos.

Nombre Tipo Description
accessCredentials

AzureActiveDirectoryApplicationCredentials

Credenciales opcionales de Azure Active Directory usadas para acceder a Azure Key Vault. No es necesario si se usa la identidad administrada en su lugar.

keyVaultKeyName

string

Nombre de la clave de Azure Key Vault que se usará para cifrar los datos en reposo.

keyVaultKeyVersion

string

La versión de la clave de Azure Key Vault que se usará para cifrar los datos en reposo.

keyVaultUri

string

El URI de Azure Key Vault, también conocido como nombre DNS, que contiene la clave que se usará para cifrar los datos en reposo. Un ejemplo de URI podría ser https://my-keyvault-name.vault.azure.net.